来自:
using System;
public string CreateMD5Hash (string input)
{
// Use input string to calculate MD5 hash
MD5 md5 = System.Security.Cryptography.MD5.Create();
byte[] inputBytes = System.Text.Encoding.ASCII.GetBytes (input);
byte[] hashBytes = md5.ComputeHash (inputBytes);
// Convert the byte array to hexadecimal string
StringBuilder sb = new StringBuilder();
for (int i = 0; i < hashBytes.Length; i++)
{
sb.Append (hashBytes[i].ToString ("X2"));
// To force the hex string to lower-case letters instead of
// upper-case, use he following line instead:
// sb.Append(hashBytes[i].ToString("x2"));
}
return sb.ToString();
}
用法: (备注:1,000,000数据执行时间为:00:00:23.8906620)
string md5hash = CreateMD5Hash("abcdefghijklmnopqrstuvwxyz");
执行结果
md5hash will contain this string: "C3FCD3D76192E4007DFB496CCA67E13B".
C#里也可以直接使用System.Web.Security 命名空间 生成MD5(备注:1,000,000数据执行时间为:00:00:21.2057591)
FormsAuthentication.HashPasswordForStoringInConfigFile (string, "MD5")