【发布时间】:2010-09-16 10:53:38
【问题描述】:
我正在尝试在 JavaScript 和 .Net 中生成等效的 MD5 哈希。也没有这样做,我决定使用第三方计算 - 这个web site 用于“密码”一词。稍后我会添加盐,但目前,我无法让 .net 版本与网站的哈希匹配:
5f4dcc3b5aa765d61d8327deb882cf99
我猜这是一个编码问题,但我已经尝试了大约 8 种不同的方法来计算 .Net 中的 MD5 哈希,但没有一个与我在 JavaScript(或从网站上获得的)相匹配)。这个MSDN example 是我尝试过的方法之一,它产生了我通常收到的这个哈希:
7c6a180b36896a0a8c02787eeafb0e4c
编辑:可悲的是,我不小心为两种不同的实现提供了不同的源字符串。埃布萨克。 :-/ 仍然有兴趣听听您对后续行动的回答。
额外问题:哪种编码/格式最适合在数据库中存储散列值?
【问题讨论】:
-
你使用 javascript 哈希做什么?我问的原因是,如果是为了安全,应该只在服务器上生成。
-
从这个讨论中退一步,我觉得Thomas Ptacek's post(回应Jeff Atwood post 类似主题)最好地解释了为什么你不应该使用像 MD5 这样的东西来进行密码散列。推荐阅读。
标签: .net security hash cryptography