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);

  }