在 C# 中生成隨機密碼
Fil Zjazel Romaeus Villegas
2022年4月20日
本教程將演示如何使用 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&