我正在做一个C#项目,在那里我需要生成随机密码。
有人能提供一些代码或高级方法来生成密码吗?
应该可以具体说明以下几点:
发布于 2011-03-09 08:56:39
我在几年前写了一个简单的数据生成库来模拟我们需要的一些数据,您可以看看这个来获得一些想法。您将为它提供要生成的模式,它将创建与该模式匹配的随机数据。
模式如下:
这不完全是你想要的,但你应该能够修改它,以适应你的需要。
编辑:再次阅读您的需求,我认为您应该能够修改我的代码以使其工作。您需要创建一个模式,该模式与有效密码的最小字符/数字要求相匹配,添加逻辑,通过添加随机字符来改变生成密码的长度,或者在末尾添加一些随机排序逻辑,以便将字符混合起来,使它们不总是在相同的模式中。
编辑(2):将代码移动到GitHub,更新链接。
编辑(3):链接到主Github回购。
发布于 2011-03-09 08:49:48
您可以使用此方法并根据需要进行修改。
private static string CreateRandomPassword(int passwordLength)
{
string allowedChars = "abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ0123456789!@$?_-";
char[] chars = new char[passwordLength];
Random rd = new Random();
for (int i = 0; i < passwordLength; i++)
{
chars[i] = allowedChars[rd.Next(0, allowedChars.Length)];
}
return new string(chars);
}发布于 2011-03-09 08:49:21
你看过代码项目的例子了吗?
http://www.codeproject.com/KB/cs/pwdgen.aspx
https://stackoverflow.com/questions/5243237
复制相似问题