淺析ASP.NET產生隨機密碼

來源:互聯網
上載者:User

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產生隨機密碼。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.