问题描述
哪种哈希算法最适合安全性?
SHA1含盐
SHA2含已知盐
或带有已知盐的MD5
MD5含盐
解决方法
在您列出的列表中,SHA2是最安全的。但是,在已知盐和未知盐之间,未知盐将始终使您的加密呈指数级提高。
, 我的成员资格提供者(这绝不是完美的解决方案,也不是任何人或每个人应该做的事情的模型)在用户创建时将SHA1与随机生成的盐一起使用,并为密码和安全性答案提供单独的盐。显然,您需要存储这些盐,以便在某个地方知道它们,但是一旦用户输入密码,它就不会再出现了。如果他们更改了密码,我将重新加盐并重新保存。我发现这在安全哈希,强密钥和稍后轻松匹配而不需要做大量额外工作的能力之间取得了良好的平衡。