加密您的密码:最佳实践?

加密您的密码:最佳实践?

我一直很好奇.。当将密码用于散列时,哪个更好:前缀,还是后缀?为什么?或者说,只要你有盐,这有关系吗?

解释:我们(希望)现在都知道我们应该食盐在散列以存储在数据库中之前的密码[编辑:这样你就可以避免杰夫·阿特伍德最近怎么了]。通常,这是通过在通过散列算法传递SALT之前将SALT与密码连接起来完成的。但例子各不相同.。一些示例在密码之前加上了SALT。一些例子加盐密码。我甚至见过一些人试图把盐放在中间。

那么哪种方法更好,为什么呢?有没有减少哈希冲突的方法?我在谷歌上的搜索结果并没有对这一问题做出恰当的分析。


慕运维8079593
浏览 652回答 3
3回答

慕斯王

真正的答案,似乎没有人触及,是两者都错了..如果您正在实现您自己的密码,无论您认为您正在做的是多么琐碎的部分,您要犯错误。HMAC这是一种更好的方法,但即使这样,如果您使用的是SHA-1,您已经选择了一种不适合密码哈希的算法,因为它的设计是为了提高速度。使用类似的东西bcrypt或者可能氪石把问题完全从你手里拿出来。哦,甚至不要考虑将结果散列与编程语言或数据库字符串比较实用程序进行比较。它们按字符和短路进行比较。false如果一个字符不同。因此,现在攻击者可以使用统计方法来计算散列是什么,一次是一个字符。
打开App,查看更多内容
随时随地看视频慕课网APP