using System;
using System.Security.Cryptography;
using System.Text;
using System.IO;
namespace Common
...{
/**
//// <summary> /// DESEncrypt加密解密算法。 /// </summary> public sealed class DESEncrypt
...{
private DESEncrypt()
...{
// // TODO: 在此处添加构造函数逻辑 // }
private static string key =
"zhoufoxcn";
/**
//// <summary> /// 对称加密解密的密钥 /// </summary> public static string Key
...{
get
...{
return key;
}
set
...{
key = value;
}
}
/**
//// <summary> /// DES加密 /// </summary> /// <param name="encryptString"></param> /// <returns></returns> public static string DesEncrypt(
string encryptString)
...{
byte[] keyBytes = Encoding.UTF8.GetBytes(key.Substring(0, 8));
byte[] keyIV = keyBytes;
byte[] inputByteArray = Encoding.UTF8.GetBytes(encryptString);
DESCryptoServiceProvider provider =
new DESCryptoServiceProvider();
MemoryStream mStream =
new MemoryStream();
CryptoStream cStream =
new CryptoStream(mStream, provider.CreateEncryptor(keyBytes, keyIV), CryptoStreamMode.Write);
cStream.Write(inputByteArray, 0, inputByteArray.Length);
cStream.FlushFinalBlock();
return Convert.ToBase64String(mStream.ToArray());
}
/**
//// <summary> /// DES解密 /// </summary> /// <param name="decryptString"></param> /// <returns></returns> public static string DesDecrypt(
string decryptString)
...{
byte[] keyBytes = Encoding.UTF8.GetBytes(key.Substring(0, 8));
byte[] keyIV = keyBytes;
byte[] inputByteArray = Convert.FromBase64String(decryptString);
DESCryptoServiceProvider provider =
new DESCryptoServiceProvider();
MemoryStream mStream =
new MemoryStream();
CryptoStream cStream =
new CryptoStream(mStream, provider.CreateDecryptor(keyBytes, keyIV), CryptoStreamMode.Write);
cStream.Write(inputByteArray, 0, inputByteArray.Length);
cStream.FlushFinalBlock();
return Encoding.UTF8.GetString(mStream.ToArray());
}
}
}