数字、句読点、アルファベット (小文字と大文字の両方) を使用してパスワードを生成したいのですが、これをランダムに生成するにはどうすればよいですか?
質問する
699 次
3 に答える
5
言語に依存しないバージョン。希望する言語に翻訳できます。
パスワードとして有効な文字を含む文字列を作成するだけです。
次に、(長さの要件に応じて) 8 ~ 14 の間の乱数を生成します。
次に、0 (含む) から (含まない) までの乱数を多数生成し、len(str)
それを使用してインデックスを作成しstr
、文字を取得します。
(疑似コード) のようなもの:
str = "abc...xyzABC...XYZ0...9,.="
len = rnd(7) + 8 // rnd(n) gives 0 thru n-1
pwd = ""
while len > 0:
pwd = pwd + str[rnd(len(str))]
len = len - 1
これにより、基本的に、目的の文字で構成された、目的の長さのパスワードが得られます。
于 2012-05-18T11:14:43.177 に答える
3
iPhone にタグを付けたので、目的 c でこれを行いました。
NSString *string = @"";
for (int i = 0; i < (arc4random() % 6) + 6; i++)
{
UniChar c = (arc4random() % 89) + 33; //Random char between ! and z
string = [string stringByAppendingString:[NSString stringWithCharacters:&c length:1]];
}
NSLog(@"String:%@", string);
- 私はasciiを仮定しました。
- パスワードの長さは 6 から 12 の間であると想定しています。
- あなたがあなたの質問にあまり力を入れていなかったので、私は私の答えにあまり力を入れませんでした. 試したことを示す必要があります
于 2012-05-18T11:21:14.560 に答える
0
arc4random()
数字に使うarc4random_stir()
于 2012-05-18T11:16:11.700 に答える