C#用MD5CryptoServiceProvider把字符串加密成32位Hash值


方法1:
    using System.Text;
    using System.Security.Cryptography;


        public string Hash(string toHash)
        {
            MD5CryptoServiceProvider crypto = new MD5CryptoServiceProvider();
            byte[] bytes = Encoding.UTF7.GetBytes(toHash);
            bytes = crypto.ComputeHash(bytes);
            StringBuilder sb = new StringBuilder();
            foreach (byte num in bytes)
            {
                sb.AppendFormat("{0:x2}", num);
            }
             return sb.ToString();        //32位
            return sb.ToString().Substring(8,16);        //16位
        }

 

方法2:

16位

   public string GetMd5(string str)
   {
    System.Security.Cryptography.MD5CryptoServiceProvider md5=new MD5CryptoServiceProvider();
    string a=BitConverter.ToString(md5.ComputeHash(System.Text.Encoding.UTF8.GetBytes(str)),4,8);
    a=a.Replace("-","");
    return a;
   }

32位

   public string GetMd5(string str)
   {
    System.Security.Cryptography.MD5CryptoServiceProvider md5=new MD5CryptoServiceProvider();
    string a=BitConverter.ToString(md5.ComputeHash(System.Text.Encoding.UTF8.GetBytes(str)));
    a=a.Replace("-","");
    return a;
   }


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM