当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 浅析ASP.NET生成随机密码函数

ASP.NET
Asp.Net 通用数据操作类 (附通用数据基类)
asp.net汉字转拼音和获取汉字首字母的代码
asp.net 多字段模糊查询代码
OpenCms 带分页的新闻列表
URLRewriter最简单入门介绍 URLRewriter相关资源
asp.net Repeater取得CheckBox选中的某行某个值
asp.net清空Cookie的两种方法
asp.net一些很酷很实用的.Net技巧
asp.net生成高质量缩略图通用函数(c#代码),支持多种生成方式
asp.net TripleDES加密、解密算法
Asp.net中防止用户多次登录的方法
asp.net Repeater取得CheckBox选中的某行某个值的c#写法
asp.net DataGridView导出到Excel的三个方法[亲测]
C#,winform,ShowDialog,子窗体向父窗体传值
asp.net学习中发现的比较完整的流程
ASP.net 页面被关闭后,服务器端是否仍然执行中?
asp.net Context.Handler 页面间传值方法
asp.net xml序列化与反序列化
asp.net实例代码protected override void Render(HtmlTextWriter writer)
asp.net(c#)捕捉搜索引擎蜘蛛和机器人

浅析ASP.NET生成随机密码函数


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 98 ::
收藏到网摘: n/a

在开发需要用户注册后才能使用提供的各项功能的应用程序时,在新用户提交注册信息后,较常见的做法是由程序生成随机密码,然后发送密码到用户注册时填写的电子信箱,用户再用收到的密码来激活其帐户。 实现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生成随机密码。