C# MD5加密工具方法

首先1.引用命名空间
using System.Security.Cryptography; 命名空间下
MD5中的方法都是静态,通过类名打点调用调用方法创建对象


 1 public static Tool{
 2      public static string GetMD5(string str)
 3         {
 4             //创建MD5对象 
 5             MD5 md5 = MD5.Create();
 6             //开始加密: 通过传入的明文密码,转换为字节数组,还可以通过其他的方式来获取密文
 7             //1. 需要将字符串转换成字节数组,
 8             byte[] buffer = Encoding.Default.GetBytes(str);
 9             // 2.把明文字符串转换得到的字节数组,传给md5,获取密文(哈希值)得到一个字节数组
10             byte[] MD5buffer =  md5.ComputeHash(buffer);
11             //如果直接输出会出现乱码,原因:
12             // 如果是把 125 128 212 这个十六进制的数解析出来可能是 假定 我爱你
13             //我们要得到这段编码,那么给字节数组中每个元素都转换为字符串然后拼接起来就可以了
14 
15             //将字节数组转换成字符串
16             //将字节数组转换为字符串三种方法:
17             // 1.将字节数组中每个元素按照指定的编码格式解析成字符串
18             //2.直接将数组Tostring();
19             //3.字节数组中每个元素ToString()
20 
21             //这里提供 string 和 stringbuider两种方法拼接
22            //string s = null;
23            StringBuilder sb = new StringBuilder();
24            for (int i = 0; i < MD5buffer.Length; i++)
25            {
26                sb.Append(MD5buffer[i].ToString("x2"));  //ToString();传入参数目的是限定转换为字符串的格式
27                //s += MD5buffer[i].ToString();
28            }
29            //return s;
30            return sb.ToString();
31         }
32 }

 

posted @ 2018-05-30 15:32  CeasarH  阅读(451)  评论(1编辑  收藏  举报