1
/// <summary>
2
/// 加密方法
3
/// </summary>
4
/// <param name="data">要加密的字符串</param>
5
/// <param name="KEY_64">密钥</param>
6
/// <param name="IV_64">密钥</param>
7
/// <returns>加密后的字符串</returns>
8
public string Encode(string data,string KEY_64,string IV_64)
9
{
10
byte[] byKey = System.Text.ASCIIEncoding.ASCII.GetBytes(KEY_64);
11
byte[] byIV = System.Text.ASCIIEncoding.ASCII.GetBytes(IV_64);
12
13
DESCryptoServiceProvider cryptoProvider = new DESCryptoServiceProvider();
14
int i = cryptoProvider.KeySize;
15
MemoryStream ms = new MemoryStream();
16
CryptoStream cst = new CryptoStream(ms,cryptoProvider.CreateEncryptor(byKey,byIV),CryptoStreamMode.Write);
17
18
StreamWriter sw = new StreamWriter(cst);
19
sw.Write(data);
20
sw.Flush();
21
cst.FlushFinalBlock();
22
sw.Flush();
23
return Convert.ToBase64String(ms.GetBuffer(),0,(int)ms.Length);
24
25
}

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

2.解密方法
1
/// <summary>
2
/// 解密方法
3
/// </summary>
4
/// <param name="data">要解密的字符串</param>
5
/// <param name="KEY_64">密钥</param>
6
/// <param name="IV_64">密钥</param>
7
/// <returns>解密后的字符串</returns>
8
public string Decode(string data,string KEY_64,string IV_64)
9
{
10
byte[] byKey = System.Text.ASCIIEncoding.ASCII.GetBytes(KEY_64);
11
byte[] byIV = System.Text.ASCIIEncoding.ASCII.GetBytes(IV_64);
12
13
byte[] byEnc;
14
try
15
{
16
byEnc = Convert.FromBase64String(data);
17
}
18
catch
19
{
20
return null;
21
}
22
23
DESCryptoServiceProvider cryptoProvider = new DESCryptoServiceProvider();
24
MemoryStream ms = new MemoryStream(byEnc);
25
CryptoStream cst = new CryptoStream(ms,cryptoProvider.CreateDecryptor(byKey,byIV),CryptoStreamMode.Read);
26
StreamReader sr = new StreamReader(cst);
27
return sr.ReadToEnd();
28
}

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

3。注意事项:加密时两个密钥和解密时两个密钥必须都相同,也就是四个都要一样,如
1
result=Encode(result,"VavicApp","VavicApp");
2
3
connString=Decode(connString,"VavicApp","VavicApp");

2

3

4.引用
1
using System.Security;
2
using System.Security.Cryptography;

2
