溫馨提示×

C#常用的加密算法之一 MD5

c#
小云
103
2023-09-09 06:56:36
欄目: 編程語言

MD5(Message Digest Algorithm 5)是一種常用的加密算法,用于將任意長度的數(shù)據(jù)轉(zhuǎn)換為固定長度的128位(16字節(jié))哈希值。MD5算法廣泛應(yīng)用于數(shù)據(jù)校驗、密碼存儲和數(shù)字簽名等領(lǐng)域。

在C#中,可以使用System.Security.Cryptography命名空間下的MD5類來實現(xiàn)MD5加密。下面是使用MD5加密字符串的示例代碼:

using System;
using System.Security.Cryptography;
using System.Text;
public class Program
{
public static void Main(string[] args)
{
string input = "Hello World"; // 要加密的字符串
using (MD5 md5 = MD5.Create())
{
byte[] inputBytes = Encoding.UTF8.GetBytes(input);
byte[] hashBytes = md5.ComputeHash(inputBytes);
StringBuilder sb = new StringBuilder();
for (int i = 0; i < hashBytes.Length; i++)
{
sb.Append(hashBytes[i].ToString("x2")); // 將每個字節(jié)轉(zhuǎn)換為16進制字符串
}
string encrypted = sb.ToString();
Console.WriteLine(encrypted); // 輸出加密后的字符串
}
}
}

運行以上代碼,將輸出字符串"Hello World"的MD5加密結(jié)果:“b10a8db164e0754105b7a99be72e3fe5”。

需要注意的是,MD5算法已經(jīng)被發(fā)現(xiàn)存在一些安全漏洞,不再被推薦作為密碼存儲的安全算法。在實際應(yīng)用中,可以考慮使用更強大的加密算法,如SHA-256、SHA-512等。

0