public class EncryptHelper
{
/// <summary>
/// 简单的解密函数
/// </summary>
/// <param name="strDec"></param>
/// <returns></returns>
public static String Decipher(String strDec)
{
int i;//'for循环用
char strTmp;// '临时字符存储
String Decipher = "";
if (strDec.Length < 1)
{
Decipher = "";
}
else
{
for (i = 0; i < strDec.Length; i++)
{
if (Convert.ToInt16(Convert.ToChar(strDec.Substring(i, 1))) < -6000 && Convert.ToChar(Convert.ToInt16(strDec.Substring(i, 1))) != '?')
{
strTmp = Convert.ToChar(Convert.ToInt16(strDec.Substring(i, 1)) + 5); //'对汉字进行解密
}
else if (Convert.ToInt16(Convert.ToChar(strDec.Substring(i, 1))) <= 126 && Convert.ToInt16(Convert.ToChar(strDec.Substring(i, 1))) >= 80)
{
strTmp = Convert.ToChar(Convert.ToInt16(Convert.ToChar(strDec.Substring(i, 1))) - 47);//'对大于79的asc进行解密
}
else if (Convert.ToInt16(Convert.ToChar(strDec.Substring(i, 1))) <= 79 && Convert.ToInt16(Convert.ToChar(strDec.Substring(i, 1))) >= 33)
{
strTmp = Convert.ToChar(Convert.ToInt16(Convert.ToChar(strDec.Substring(i, 1))) + 47); //'对小于80的asc进行解密
}
else
{
strTmp = Convert.ToChar(Convert.ToInt16(Convert.ToChar(strDec.Substring(i, 1))));//'其它的字符不去转化,但是要显示的
}
Decipher = Decipher + strTmp;//'解密后的字符
}
}
return Decipher;
}
/// <summary>
/// 简单的加密函数
/// </summary>
/// <param name="strEnc"></param>
/// <returns></returns>
public static String Encryption(String strEnc)
{
int i; //'for循环用
Char strTmp; //'临时字符存储
String Encryption = "";
if (strEnc.Length < 1)
{
Encryption = "";
}
else
{
for (i = 0; i < strEnc.Length; i++)
{
if (Convert.ToInt16(Convert.ToChar(strEnc.Substring(i, 1))) < -6000 && Convert.ToChar(Convert.ToInt16(strEnc.Substring(i, 1))) != '?')
{
strTmp = Convert.ToChar(Convert.ToInt16(strEnc.Substring(i, 1)) - 5); //'对汉字进行解密 //'对gbk的汉字进行加密
}
else if (Convert.ToInt16(Convert.ToChar(strEnc.Substring(i, 1))) <= 126 && Convert.ToInt16(Convert.ToChar(strEnc.Substring(i, 1))) >= 80)
{
strTmp = Convert.ToChar(Convert.ToInt16(Convert.ToChar(strEnc.Substring(i, 1))) - 47);//'对大于79的asc进行加密
}
else if (Convert.ToInt16(Convert.ToChar(strEnc.Substring(i, 1))) <= 79 && Convert.ToInt16(Convert.ToChar(strEnc.Substring(i, 1))) >= 33)
{
strTmp = Convert.ToChar(Convert.ToInt16(Convert.ToChar(strEnc.Substring(i, 1))) + 47); //'对小于80的asc进行加密
}
else
{
strTmp = Convert.ToChar(Convert.ToInt16(Convert.ToChar(strEnc.Substring(i, 1)))); //'其它的字符不去转化,但是要显示的
}
Encryption = Encryption + strTmp;//'加密后的字符
}
}
return Encryption;
}
}