我知道如果我们只是散列密码,黑客可以使用预先计算的散列密码表并将其与实际的散列密码表进行比较。据我所知,如果我们在哈希之前添加一个随机字符串作为盐,预计算的哈希表将无法工作。
现在我的问题是,假设一个用户的密码是"password",我将999加到它并在保存它之前对字符串"password999"进行散列。现在,当用户返回到我的站点时,我如何知道在与数据库中的散列值进行比较之前,我需要在他的密码中添加999 ?我是否为每个用户名维护一个包含所有盐类的单独表?
您需要将每个用户的salt存储在密码旁边的单独的列