您的位置:首页 > 其它

MD5 SHA1 加密字符串 在winform web下使中英文一致

2009-07-27 14:03 537 查看
经过本人测试,下面的方法在 winform、web 中对中英文加密的字符串一致。

winform 下实现 md5

private void btnMD5_Click(object sender, EventArgs e)
{
MD5 md5 = new MD5CryptoServiceProvider();
//byte[] result = md5.ComputeHash(System.Text.Encoding.Default.GetBytes(this.txtMD5Ori.Text.Trim())); // 中英文转换与web不同
byte[] result = md5.ComputeHash(System.Text.Encoding.UTF8.GetBytes(this.txtMD5Ori.Text.Trim())); // 中英文转换与web相同
string str = "";
for (int i = 0; i < result.Length; i++)
{
str += string.Format("{0:x2}", result[i]); // 此处的x2,和写x得出的结果不一样,应该用x2就对了。
}
this.txtMD5Tran.Text = str.ToUpper();
this.lblMD5size.Text = str.Length.ToString();
}

web 下实现 md5

this.lblMD5.Text = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(this.txtMD5Ori.Text.Trim(), "MD5");

==============================================================

wiform 下实现 SHA1

private void btnSHA1_Click(object sender, EventArgs e)
{
SHA1 sha1 = new SHA1CryptoServiceProvider();
//byte[] result = sha1.ComputeHash(System.Text.Encoding.Default.GetBytes(this.txtSHA1Ori.Text.Trim()));
byte[] result = sha1.ComputeHash(System.Text.Encoding.UTF8.GetBytes(this.txtSHA1Ori.Text.Trim()));
string str = "";
for (int i = 0; i < result.Length; i++)
{
str += string.Format("{0:x2}", result[i]); // 此处的x2,和写x得出的结果不一样,应该用x2就对了。
}
this.txtSHA1Tran.Text = str.ToUpper();
this.lblSHA1Size.Text = str.Length.ToString();
}

web 下实现 SHA1

this.lblSHA1.Text = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(this.txtSHA1Ori.Text.Trim(), "SHA1");
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: