public
class
TrialHelper
{
private
static
byte[] Keys = { 0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0xEF };
public
static
string EncryptDES( string encryptString, string encryptKey =
""
)
{
try
{
if
(string.IsNullOrEmpty(encryptKey) || encryptKey.Length < 8)
{
encryptKey =
"winform01"
;
}
byte[] rgbKey = Encoding.UTF8.GetBytes(encryptKey.Substring(0, 8));
byte[] rgbIV = Keys;
byte[] inputByteArray = Encoding.UTF8.GetBytes(encryptString);
DESCryptoServiceProvider dCSP =
new
DESCryptoServiceProvider();
MemoryStream mStream =
new
MemoryStream();
CryptoStream cStream =
new
CryptoStream(mStream, dCSP.CreateEncryptor(rgbKey, rgbIV), CryptoStreamMode.Write);
cStream.Write(inputByteArray, 0, inputByteArray.Length);
cStream.FlushFinalBlock();
return
Convert.ToBase64String(mStream.ToArray());
}
catch
{
return
encryptString;
}
}
public
static
string DecryptDES( string decryptString, string decryptKey =
""
)
{
try
{
if
(string.IsNullOrEmpty(decryptKey) || decryptKey.Length < 8)
{
decryptKey =
"winform01"
;
}
byte[] rgbKey = Encoding.UTF8.GetBytes(decryptKey.Substring(0, 8));
byte[] rgbIV = Keys;
byte[] inputByteArray = Convert.FromBase64String(decryptString);
DESCryptoServiceProvider DCSP =
new
DESCryptoServiceProvider();
MemoryStream mStream =
new
MemoryStream();
CryptoStream cStream =
new
CryptoStream(mStream, DCSP.CreateDecryptor(rgbKey, rgbIV), CryptoStreamMode.Write);
cStream.Write(inputByteArray, 0, inputByteArray.Length);
cStream.FlushFinalBlock();
return
Encoding.UTF8.GetString(mStream.ToArray());
}
catch
{
return
decryptString;
}
}
public
static
string GetMD5( string sDataIn )
{
System.Security.Cryptography.MD5CryptoServiceProvider md5 =
new
System.Security.Cryptography.MD5CryptoServiceProvider();
byte[] bytValue, bytHash;
bytValue = System.Text.Encoding.UTF8.GetBytes(sDataIn);
bytHash = md5.ComputeHash(bytValue);
md5.Clear();
string sTemp =
""
;
for
(int i = 0; i < bytHash.Length; i++)
{
sTemp += bytHash[i].ToString(
"x"
).PadLeft(2, '0');
}
return
sTemp;
}
}