zoukankan      html  css  js  c++  java
  • 揭开ASP.NET生成随机密码的面纱

    不知道从何时开始流行这种注册验证方式 。在开发需要用户注册后才能使用提供的各项功能的应用程序时,在新用户提交注册信息后,较常见的做法是由程序生成随机密码,然后发送密码到用户注册时填写的电子信箱,用户再用收到的密码来激活其帐户。

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

    代码
    public static string MakePassword(string pwdchars, int pwdlen)
        {
            
    string tmpstr = "";
            
    int iRandNum;
            Random rnd 
    = new Random();
            
    for (int i = 0; i < pwdlen; i++)
            {
                iRandNum 
    = rnd.Next(pwdchars.Length);
                tmpstr 
    += pwdchars[iRandNum];
            }
            
    return tmpstr;
        }

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

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

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

     string randomchars = "abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"
            
    string password = MakePassword(randomchars, 10);

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

    转自:http://www.itpub.com

  • 相关阅读:
    c/c++字符串传递
    从一个小程序明白new和delete的奇特现象
    Linux下构造函数string需要注意的问题
    字符串转time_t
    CentOS7基础建站指南(笔记)
    图与搜索
    面向的对象编程的小猫腻
    多线程编程
    生产者消费者模式-Java实现
    Java-代理模式的理解
  • 原文地址:https://www.cnblogs.com/liuxinhuahao/p/1622851.html
Copyright © 2011-2022 走看看