pav*_*red 10 c# silverlight md5 windows-phone-7
我正在开发Windows Phone 7应用程序.我在Silverlight中使用此实现进行MD5散列.
我正在使用此代码 -
protected string GetMD5Hash(string input)
{
byte[] bs = System.Text.Encoding.UTF8.GetBytes(input);
MD5Managed md5 = new MD5Managed();
byte[] hash = md5.ComputeHash(bs);
StringBuilder sb = new StringBuilder();
foreach (byte b in bs)
{
sb.Append(b.ToString("x2").ToLower());
}
return sb.ToString();
}
Run Code Online (Sandbox Code Playgroud)
但是,我没有为我提供的输入获得正确的MD5哈希值.我不确定这段代码有什么问题.如果有人在Silverlight中使用 此实现进行MD5哈希,你知道我哪里出错吗?
Jon*_*eet 11
您将返回输入的十六进制版本,而不是哈希:
foreach (byte b in bs)
Run Code Online (Sandbox Code Playgroud)
应该
foreach (byte b in hash)
Run Code Online (Sandbox Code Playgroud)
(Convert.ToBase64String(hash)如果您不介意它在Base64而不是十六进制中,则使用另一种方法.)
| 归档时间: |
|
| 查看次数: |
6903 次 |
| 最近记录: |