使用 C# 生成文本的 MD5 哈希值
我了解 System.Security.Cryptography 在 MD5.ComputeHash。但是,该方法接受并返回字节。我不明白如何使用字符串键和哈希来使用此方法。我尝试通过这样做来解决问题,
var hash = MD5.Create().ComputeHash(Encoding.UTF8.GetBytes(@"text".ToCharArray()));
foreach(byte h in hash)
{
Console.Write((char)h);
}
但是生成的输出是乱码。作为比较,在此网站中,输入“text”将得到“1cb251ec0d568de6a929b520c4aed8d1”
I understand that System.Security.Cryptography has a MD5 hashing method in MD5.ComputeHash. However, the method takes and returns bytes. I don't understand how to work with this method using String key and hashes. I try to work around by doing this,
var hash = MD5.Create().ComputeHash(Encoding.UTF8.GetBytes(@"text".ToCharArray()));
foreach(byte h in hash)
{
Console.Write((char)h);
}
However the resulting output is gibberish string. For comparison, in this website, entering "text" will result in "1cb251ec0d568de6a929b520c4aed8d1"
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
编写此代码将得到与网站相同的结果:
技巧是将每个字节打印为 2 个十六进制数字(因此 x2)
writing this code will give the same result as the website:
The trick is to print each byte as 2 hexadecimal digits (hence x2)