1.新建控制台應用程序
2.新建類 EncryptHelper.cs
1 public static class EncryptHelper
2 {
3 /// <summary>
4 /// 基於Md5的自定義加密字符串方法:輸入一個字符串,返回一個由32個字符組成的十六進制的哈希散列(字符串)。
5 /// </summary>
6 /// <param name="str">要加密的字符串</param>
7 /// <returns>加密後的十六進制的哈希散列(字符串)</returns>
8 public static string Md5(this string str)
9 {
10 //將輸入字符串轉換成字節數組
11 var buffer = Encoding.Default.GetBytes(str);
12 //接著,創建Md5對象進行散列計算
13 var data = MD5.Create().ComputeHash(buffer);
14
15 //創建一個新的Stringbuilder收集字節
16 var sb = new StringBuilder();
17
18 //遍歷每個字節的散列數據
19 foreach (var t in data)
20 {
21 //格式每一個十六進制字符串
22 sb.Append(t.ToString("X2"));
23 }
24
25 //返回十六進制字符串
26 return sb.ToString();
27 }
28
29 /// <summary>
30 /// 基於Sha1的自定義加密字符串方法:輸入一個字符串,返回一個由40個字符組成的十六進制的哈希散列(字符串)。
31 /// </summary>
32 /// <param name="str">要加密的字符串</param>
33 /// <returns>加密後的十六進制的哈希散列(字符串)</returns>
34 public static string Sha1(this string str)
35 {
36 var buffer = Encoding.UTF8.GetBytes(str);
37 var data = SHA1.Create().ComputeHash(buffer);
38
39 var sb = new StringBuilder();
40 foreach (var t in data)
41 {
42 sb.Append(t.ToString("X2"));
43 }
44
45 return sb.ToString();
46 }
47 }
3.修改 Program.cs

4.效果圖
