有c#生成MD5的代码如下:
class CreateMD5
{
static void Main(string[] args)
{
string source = "提问指南";
using (MD5 md5Hash = MD5.Create())
{
string hash = GetMd5Hash(md5Hash, source);
Console.WriteLine( hash);
}
}
static string GetMd5Hash(MD5 md5Hash, string input)
{
//这里是 Unicode
byte[] data = md5Hash.ComputeHash(Encoding.Unicode.GetBytes(input));
StringBuilder sBuilder = new StringBuilder();
for (int i = 0; i < data.Length; i++)
{
sBuilder.Append(data[i].ToString("x2"));
}
return sBuilder.ToString();
}
}
上述代码生成的MD5是 f5da53705563c657581a6d0853286fdc
现在问题是,c#生成的MD5 与 PHP 生成的MD5 不一致
由于业务限制,不能更改c#代码,只能从PHP下手。