在 C# 中生成隨機密碼

Fil Zjazel Romaeus Villegas 2022年4月20日
在 C# 中生成隨機密碼

本教程將演示如何使用 System.Web.Security 在 C# 中生成隨機密碼。

在 C# 中使用 System.Web.Security 方法生成隨機密碼

.NET 框架提供了一個函式,你可以使用它的函式 GeneratePasswords 生成你指定的任意長度的密碼,幷包含一定數量的非字母數字字元。要使用它,你必須首先確保已新增對 System.Web 的引用。要新增此引用,請按照以下步驟操作:

  • 導航到解決方案資源管理器
  • 右鍵單擊引用
  • 點選新增引用
  • 單擊左側的 Assembilies 選項卡
  • 找到 System.Web.dll 檔案並單擊確定

成功新增引用後,你可以在程式碼中使用其 using 語句。

using System.Web.Security;

GeneratePassword 函式接受兩個輸入。第一個是要生成的密碼所需的字元數。第二個輸入是指所需的非字母數字字元的數量。然後將生成的密碼作為字串變數返回,然後你可以在程式碼中使用它。

例子:

using System;
using System.Web.Security;

namespace GeneratePassword_Example
{
    class Program
    {
        static void Main(string[] args)
        {
            //Create a for loop to run the code 10 times
            for(int i = 0; i < 10; i++)
            {
                //Store the password generated into a string variable
                //The password will have a length of 8 characters and 3 non alphanumeric characters
                string generated_pass = Membership.GeneratePassword(8, 3);
                //Print the newly generated password to the console       
                Console.WriteLine("Password " + (i + 1).ToString() + ": " + generated_pass);

            }

            Console.ReadLine();
        }
    }
}

在上面的示例中,我們在一個迴圈中執行了 10 次 GeneratePassword 函式,以演示生成的所有密碼如何不同並滿足輸入引數設定的要求。

輸出:

Password 1: *X!2OL%8
Password 2: _0=[qjFq
Password 3: &zGiOR=#
Password 4: *Is8&]2j
Password 5: Dv-${$Pt
Password 6: *Gkr-B4.
Password 7: )e==gu3O
Password 8: X$+LRe(e
Password 9: *2Y[.gpJ
Password 10: .W=y1zF&

相關文章 - Csharp Random