ASP.NET生成随机密码验团示例讲解

2012 年 12 月 5 日7050

欢迎进入.NET社区论坛,与300万技术人员互动交流 >>进入

现在网站提供的多种服务都是需要用户注册后才能使用,在目前各种网站程序中,在新用户提交注册信息后,较常见的做法是由程序生成随机密码,然后发送密码到用户注册时填写的电子信箱,用户再用收到的密码来激活其帐户。

实现ASP.NET生成随机密码验团是很容易的,下面的代码给出了完整的实现方法:

publicstaticstringMakePassword(stringpwdchars,intpwdlen)

{

stringtmpstr=“”;

intiRandNum;

Randomrnd=newRandom();

for(inti=0; i{

iRandNum=rnd.Next(pwdchars.Length);

tmpstr+=pwdchars[iRandNum];

}

returntmpstr;

} 对照源码,讲一下具体的思路:

方法 MakePassword 接受两个参数,pwdchars 参数指定生成的随机密码串可以使用哪些字符,pwdlen 指定生成的随机密码串的长度。有了这两个参数,通过调用 Random 类的 Next() 方法,先获得一个大于或等于 0 而小于 pwdchars 长度的整数,以该数作为索引值,从可用字符串中随机取字符,以指定的密码长度为循环次数,依次连接取得的字符,最后即得到所需的随机密码串了。

代码调用 MakePassword() 方法获取长度为 10 ,可用字符范围为大小写字母及数字的随机字符串。

string randomchars =“abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ”;

string password = MakePassword(randomchars, 10);

以上是ASP.NET生成随机密码。

【责编:peter】

0 0