我网上找了一个,但和别人提供的一个例子不一样
别人提供的 111111 转成MD5的是
96E79218965EB72C92A549DD5A330112
我找的例子,转化成是
96E79218965EB72C92A549DD5A33112我找的例子如下:
      public static string UserMd5(string str)
        {
            string pwd = "";
            MD5 md5 = MD5.Create();//实例化一个md5对像
            // 加密后是一个字节类型的数组,这里要注意编码UTF8/Unicode等的选择 
            byte[] s = md5.ComputeHash(Encoding.UTF8.GetBytes(str));
            // 通过使用循环,将字节类型的数组转换为字符串,此字符串是常规字符格式化所得
            for (int i = 0; i < s.Length; i++)
            {
                // 将得到的字符串使用十六进制类型格式。格式后的字符是小写的字母,如果使用大写(X)则格式后的字符是大写字符                pwd = pwd + s[i].ToString("X");            }
            return pwd;
        }

解决方案 »

  1.   

    pwd = pwd + s[i].ToString("X2");要补0...
      

  2.   

    MD5 yong de shao 
      

  3.   

    public string CalculateMD5Hash(string input)
    {
        MD5 md5 = System.Security.Cryptography.MD5.Create();
        byte[] inputBytes = System.Text.Encoding.ASCII.GetBytes(input);
        byte[] hash = md5.ComputeHash(inputBytes);
       StringBuilder sb = new StringBuilder();
        for (int i = 0; i < hash.Length; i++)
         {
             sb.Append(hash[i].ToString("X2"));
         }
        return sb.ToString();
    }