我目前正在研究一个需要高级别安全性的Web应用程序,并且我一直在考虑密码处理。我应该使用带有足够大的salt的哈希密码,但使用不同的salt或不同的算法多次哈希密码会有好处吗?多重密码散列
我指的不是事实,你应该多次产生像Hash(Hash(Hash(salt + psw)))=pswhash
您的密码哈希散列密码,而是我在考虑使用Hash(Hash(Hash(salt1 + psw)))=pswhash1
和Hash(Hash(Hash(salt2 + psw)))=pswhash2
,然后在登录时比较两者。 使用此例程时,攻击者不仅必须找到一个可生成pswhash的密码,而且还必须能够正确生成两个哈希值的密码。这样,碰撞的可能性几乎为零,但攻击者可以使用第二个散列来确定第一个散列的密码是否正确。
关于应用程序的更多信息: 的应用主要是为我们的公司内部应用程序。 Alla连接使用https处理,所有用户名对于此应用程序都是唯一的(因为您不能选择您的用户名),并且所有密码对于此应用程序都是唯一的(随机生成的,您不能选择它们)。我们主要担心有人在我们能够做出反应之前未经授权访问系统。如果我们有时间回应“他们”可以找到确切密码的事实并不是什么大不了的事情。
对程序员这个问题的答案对利弊良好的细节:http://programmers.stackexchange.com/questions/115406/is-it-more-secure-to-hash-a-password-multiple时间 – 2013-07-31 12:51:24