C#能生成多个版本变种的MD5,采用的编码不同,生成的加密结果也不同。下面这段代码生成的md5,跟php生成的结果是一致的。
/// <summary> /// 32位标准MD5加密 /// </summary> /// <param name="str"></param> /// <returns></returns> public static string Md5Encrypt32(string str) { System.Security.Cryptography.MD5 md5 = System.Security.Cryptography.MD5.Create(); byte[] data = md5.ComputeHash(System.Text.Encoding.Default.GetBytes(str)); StringBuilder sb = new StringBuilder(); for (int i = 0; i < data.Length; i++) { sb.Append(data[i].ToString("X2")); } return sb.ToString(); }