01.MD5加密

扫码查看
  1. namespace _01.MD5加密
  2. {
  3. class Program
  4. {
  5. static void Main(string[] args)
  6. {
  7. //MD5加密就是给想要的密码或者其它字符加密
  8. //如果字符串被加密成MD5值之后,是不可逆的.
  9. //字符串123 的MD5 64位加密形式是 202cb962ac59075b964b07152d234b70
  10. Console.WriteLine("请输入需要加密的字符串:");
  11. string input = Console.ReadLine();
  12. string str=GetMD5(input);
  13. Console.WriteLine("输入的值为:{0},加密后的值为:{1}.",input,str);
  14. Console.ReadKey();
  15. }
  16. public static string GetMD5(string input)
  17. {
  18. //创建MD5对象
  19. MD5 md5=MD5.Create(); //通过Create()方法模拟一个MD5对象出来
  20. //在加密之前我们需要将字符串转换成字节数组
  21. byte[] buffer=Encoding.Default.GetBytes(input);
  22. //开始加密
  23. byte[] md5Buffer = md5.ComputeHash(buffer);
  24. //将字节数组转换成字符串,理论上有三种方式:
  25. //1. 将字节数组中每个元素按照指定的编码格式解析成字符串
  26. //2.直接将数组ToString(); //这会输出命名空间的
  27. //3.将字节数组中的每一个元素ToString();
  28. //我们采用第三种
  29. //return Encoding.Default.GetString(md5Buffer); //将字节数组转换成字符串
  30. string str = null;
  31. for (int i = 0; i < md5Buffer.Length; i++)
  32. {
  33. str += md5Buffer[i].ToString("x2"); //在ToString();方法的参数中加个x就会将十进制转换成16进制
  34. }
  35. return str;
  36. }
  37. }
  38. }


ToSting();    
ToString();方法的括号中可以加很多参数,用以转各种各样的格式.

详情查阅 笔记ToString(),方法的参数详解 02.ToString()方法详解
05-28 13:17
查看更多