如果您查看了ASP.NET成员资格系统的表模式,您会发现它们存储原始密码的哈希值以及用于生成它的盐。请参见下面的模式:
dbo.aspnet_Membership
ApplicationId
UserId
Password
PasswordFormat
PasswordSalt
MobilePIN
Email
. . .
如果攻击者获得数据库,他是否更容易从盐和哈希密码中破解原始密码?
在查看了一些记录后,似乎为每个密码生成了一个新的盐。这有何意义?
您会推荐这种方法,还是在代码中硬编码恒定的盐?