asp.net 对中文汉字的加密与解密代码
作者:
一般的加密方法,解密比较复杂,所有大家看可以尝试用下面的代码。
复制代码 代码如下:
protected void Page_Load(object sender, EventArgs e)
{
//加密算法
string username = "我是陈建勇";
//MD5加密 - 得到32位加密数据,数据不好解密。过于复杂。
username =FormsAuthentication.HashPasswordForStoringInConfigFile(username, "MD5");
//SHA1加密 - 得到40位加密数据,数据不好解密。过于复杂。
string username1 = FormsAuthentication.HashPasswordForStoringInConfigFile(username, "SHA1");
Response.Write(username+"<br>");
Response.Write(username1+"<br>");
//解密算法
//普通加密
string s = "我是陈建勇";
string encodestr = "";
byte[] bytes = System.Text.Encoding.GetEncoding(0).GetBytes(s);
try
{
encodestr = Convert.ToBase64String(bytes);
Response.Write("aa");
}
catch
{
encodestr = s;
Response.Write("bb");
}
Response.Write(encodestr+"<br>");
//普通解密
string decodestr = "";
byte[] bytes1 = Convert.FromBase64String(encodestr);
try
{
decodestr = System.Text.Encoding.GetEncoding(0).GetString(bytes1);
Response.Write("cc");
}
catch
{
Response.Write("dd");
decodestr = encodestr;
}
Response.Write(decodestr+"<br>");
//普通加密
string myname = "陈建勇";
myname = System.Web.HttpUtility.UrlEncode(myname, System.Text.Encoding.UTF8);
Response.Write(myname+"<br>");
//普通解密
myname = System.Web.HttpUtility.UrlDecode(myname, System.Text.Encoding.UTF8);
Response.Write(myname);
}