c#Md5 32位加密结果少了两个0的原因

我们的:   e1adc3949ba59abbe56e57f20f883e
第三方的:e10adc3949ba59abbe56e057f20f883e

原因:

这个是很常见的错误,你字节转换成字符串的时候要保证是2位宽度啊,某个字节为0转换成字符串的时候必须是00的,否则就会丢失位数啊。不仅是0,1~9也一样。

string GetMD5(string strText)
{
    string result = string.Empty;
    MD5 md5 = MD5.Create();
    byte[] s =     
    md5.ComputeHash(Encoding.UTF8.GetBytes(strText));
    for (int i = 0; i < s.Length; i++)
    {
        result = result + s[i].ToString("x"); //x --->x2
    }
    return result;
}
原文地址:https://www.cnblogs.com/Jacob-Wu/p/10564473.html