-1

数字、句読点、アルファベット (小文字と大文字の両方) を使用してパスワードを生成したいのですが、これをランダムに生成するにはどうすればよいですか?

4

3 に答える 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 に答える