2

我知道如果我们只是散列密码,黑客可以使用预先计算的散列密码表并将其与实际的散列密码表进行比较。据我了解,如果我们在散列之前添加一个随机字符串作为盐,预先计算的散列表将不起作用。

现在我的问题是,假设用户密码是“password”,我在其中添加 999 并在保存之前对字符串“password999”进行哈希处理。现在当用户返回我的站点时,我怎么知道我需要在他的密码中添加 999 才能将其与数据库中的散列值进行比较?我是否维护一个单独的表,其中包含每个用户名的所有盐?

4

1 回答 1

3

您需要将每个用户的 salt 存储在密码旁边的单独列中。

于 2013-01-17T16:38:42.307 回答