|
|
1
7
在我看来,为每个用户储存一种独特的盐是个好主意。在用户每次登录时重新生成salt/hash组合是没有意义的,除非您需要消耗CPU周期。我建议使用类似
|
|
|
2
5
正如Adam已经提到的,每次用户登录时散列和存储密码并没有真正的意义。 与其自己滚动,不如考虑使用 BCrypt.NET 用法非常简单:
如果您愿意,它允许您改变计算密码散列的计算成本,这使得某些人更难对他们可能获得的数据库进行字典攻击。这是通过向
BCrypt算法的细节 can be found here . |
|
|
3
3
salt的目的是防止预计算攻击(如彩虹表)。因此,如果两个用户有相同的密码,他们就不会有相同的最终哈希。如果salt是系统范围的,而不是每个用户,那么情况就不会是这样,攻击者只需预先计算一次系统的所有密码。如果每个用户都有自己的salt,则需要对每个用户分别进行预计算攻击,从而使攻击不可行。 使用salted hash不能防止暴力字典攻击。您需要使用其他方法来防止这些。 |
|
|
4
1
如果你相信有人真的会把你的一个salt的预计算表建立到一个密码数据库中,然后用这个表查找他们在你的数据库中找到的salt密码哈希,那么你应该为每个密码使用一个唯一的salt。否则,不用担心。 |
|
|
Hasan · 保护tomcat server.xml中的密码 8 年前 |
|
|
zyx4sdk · Laravel通过密码限制网站 9 年前 |
|
|
blockheadjr · 在最大化之前触发密码提示的最大化按钮? 10 年前 |
|
|
Sriram S · 如何在java中为Zip文件夹提供密码保护? 10 年前 |
|
|
The Quantum Physicist · 隐藏我的数据库密码 11 年前 |
|
|
Matt · 在需要检索密码以供使用时安全存储凭据 11 年前 |