懒羊羊
2023-12-28 e46d3baaf3e8d7d85f4bafec3aad75e52b078408
提交 | 用户 | 时间
e46d3b 1 using System;
2 using System.Collections.Generic;
3 using System.Linq;
4 using System.Security.Cryptography;
5 using System.Text;
6
7 namespace YX.Common.DotNetEncrypt
8 {
9  
10     /// <summary>
11     /// 加密、解密帮助类
12     /// </summary>
13     public static class DESEncrypt
14     {
15         private static string Key = "sam";//再次加密Key
16         private static byte[] MakeMD5(byte[] original)
17         {
18             MD5CryptoServiceProvider mD5CryptoServiceProvider = new MD5CryptoServiceProvider();
19             return mD5CryptoServiceProvider.ComputeHash(original);
20         }
21         /// <summary>
22         /// 加密
23         /// </summary>
24         /// <param name="MingWen"></param>
25         /// <param name="KeyString"></param>
26         /// <returns></returns>
27         public static string Encrypt(string MingWen, string KeyString)
28         {
29             byte[] bytes = Encoding.Default.GetBytes(MingWen);
30             byte[] bytes2 = Encoding.Default.GetBytes(KeyString + Key);
31             return Convert.ToBase64String(new TripleDESCryptoServiceProvider
32             {
33                 Key = DESEncrypt.MakeMD5(bytes2),
34                 Mode = CipherMode.ECB
35             }.CreateEncryptor().TransformFinalBlock(bytes, 0, bytes.Length));
36         }
37         /// <summary>
38         /// 解密
39         /// </summary>
40         /// <param name="MiWen">解密字符串</param>
41         /// <param name="KeyString">解密key ;解密key 要与加密key一致</param>
42         /// <returns></returns>
43         public static string Decrypt(string MiWen, string KeyString)
44         {
45             string result = "";
46             try
47             {
48                 byte[] array = Convert.FromBase64String(MiWen);
49                 byte[] bytes = Encoding.Default.GetBytes(KeyString + Key);//key再次加Key
50                 TripleDESCryptoServiceProvider tripleDESCryptoServiceProvider = new TripleDESCryptoServiceProvider();
51                 tripleDESCryptoServiceProvider.Key = DESEncrypt.MakeMD5(bytes);
52                 tripleDESCryptoServiceProvider.Mode = CipherMode.ECB;
53                 result = Encoding.Default.GetString(tripleDESCryptoServiceProvider.CreateDecryptor().TransformFinalBlock(array, 0, array.Length));
54             }
55             catch (Exception ex)
56             {
57
58                 //MessageBox.Show(ex.Message,"提示",MessageBoxButtons.OK,MessageBoxIcon.Error);
59             }
60             return result;
61         }
62     }
63 }