パスワードを生成できるパスワードジェネレータを作成しています。
var listOfCharacters = "abcdefghijklmnopqrstuvwxyz" //the chars which are using
chars = listOfCharacters.ToCharArray();
string password = string.Empty;
for (int i = 0; i < length; i++)
{
int x = random.Next(0, chars.Length); //with random he is picking a random char from my list from position 0 - 26 (a - z)
password += chars.GetValue(x); // putting x (the char which is picked) in the new generated password
}
if (length < password.Length) password = password.Substring(0, length); // if the password contains the correct length he will be returns
return password;
私のランダム:
random = new Random((int)DateTime.Now.Ticks);
Ticksを使用するよりも高速なパスワード生成方法を探しています。これは、私には十分な速度ではないためです。上記のコードに簡単に挿入できる簡単なコードを探しています。私はC#の初心者です。だから私はまだ使うことができます が、より速いものint x = random.Next(0, chars.Length);
の代わりに。Random.next
編集:2つが短時間で2つのパスワードを生成したい場合。ダニは遅くなります
私のテストコード:
[TestMethod]
public void PasswordGeneratorShouldRenderUniqueNextPassword()
{
// Create an instance, and generate two passwords
var generator = new PasswordGenerator();
var firstPassword = generator.Generate(8); //8 is the length of the password
var secondPassword = generator.Generate(8);
// Verify that both passwords are unique
Assert.AreNotEqual(firstPassword, secondPassword);
}