楼上的朋友给出的是在Web里的MD5加密方法,以下是在Winform窗体程序中进行MD5加密的算法:
///
/// 将指定字符串进行MD5加密
///
private string GetMD5str(string oldStr)
{
//将输入转换为ASCII 字符编码
ASCIIEncoding enc = new ASCIIEncoding();
//将字符串转换为字节数组
byte[] buffer = enc.GetBytes(oldStr);
//创建MD5实例
MD5 md5 = new MD5CryptoServiceProvider();
//进行MD5加密
byte[] hash = md5.ComputeHash(buffer);
StringBuilder sb = new StringBuilder();
//拼装加密后的字符
for (int i = 0; i < hash.Length; i++)
{
sb.AppendFormat("{0:x2}", hash[i]);
}
//输出加密后的字符串
return sb.ToString();
}
此外,用此方法时需要添加
using System.Security.Cryptography;
命名空间
1 public String md5(String s)
2 {
3 System.Security.Cryptography.MD5 md5 = new System.Security.Cryptography.MD5CryptoServiceProvider();
4 byte[] bytes = System.Text.Encoding.UTF8.GetBytes(s);
5 bytes = md5.ComputeHash(bytes);
6 md5.Clear();
7
8 string ret = "";
9 for(int i=0 ; i
11 ret += Convert.ToString(bytes[i],16).PadLeft(2,'0');
12 }
13
14 return ret.PadLeft(32,'0');
15 }
这个函数实现传如string,返回md5的string
return System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(str, "MD5");