因为最近在一家公司兼职
而且自己在外面接了项目
很久没有在坛子里面写东西了,真是抱歉
好吧,转入正题吧
最近写个软件,需要加密解密文件
以下是采用DES加密解密的代码
大家有兴趣可以看看啊
1
/**/
/// <summary> 2 /// 以下方法用来产生加密的密钥 3 /// </summary> 4 /// <returns></returns>
5
6
public
static
string
GenerateCryptKey()
7
{ 8 DESCryptoServiceProvider desCry = (DESCryptoServiceProvider)DESCryptoServiceProvider.Create(); 9 return ASCIIEncoding.ASCII.GetString(desCry.Key);10 }
11
12
/**/
///<summary>13 ///以下方法用于DES加密14 ///这里的cKey就是用GenerateCryptKey产生的15 ///</summary>
16
public
static
string
EncryptString(
string
input,
string
cKey)
17
{18 byte[] data = Encoding.UTF8.GetBytes(input);19 DESCryptoServiceProvider desCry = new DESCryptoServiceProvider();20 desCry.Key = ASCIIEncoding.ASCII.GetBytes(cKey);21 desCry.IV = ASCIIEncoding.ASCII.GetBytes(cKey);22 ICryptoTransform desencrypt = desCry.CreateEncryptor();23 byte[] result = desencrypt.TransformFinalBlock(data, 0, data.Length);24 return BitConverter.ToString(result);25 }
26
27
/**/
///<summary>28 ///以下方法用于DES解密29 ///解密的cKey要和加密的cKey一样才能解密,也就是传说中的私钥啦30 ///</summary>
31
public
static
string
DecryptString(
string
str,
string
cKey)
32
{33 string [] input = str.Split("-".ToCharArray());34 byte [] data = new byte[input.Length];35 for(int i = 0; i < input.Length; i++)36 {37 data[i] = byte.Parse(input[i], NumberStyles.HexNumber);38 }39 DESCryptoServiceProvider desCry = new DESCryptoServiceProvider();40 desCry.Key = ASCIIEncoding.ASCII.GetBytes(cKey);41 desCry.IV = ASCIIEncoding.ASCII.GetBytes(cKey);42 ICryptoTransform desencrypt = desCry.CreateDecryptor();43 byte [] result = desencrypt.TransformFinalBlock(data, 0, data.Length);44 return Encoding.UTF8.GetString(result);45 }
转载于:https://www.cnblogs.com/ibillguo/archive/2008/07/17/1244781.html