gpt4 book ai didi

database - 如果我为每个用户随机生成 SALT,我该如何对他们进行身份验证?

转载 作者:太空狗 更新时间:2023-10-30 01:40:17 24 4
gpt4 key购买 nike

我一直在阅读关于加盐和散列密码的好处,但有一件事仍然让我难以理解......

当我为每个用户提供一个随机盐时,当我尝试验证他们登录时我如何知道盐是什么?

所以如果我这样做..

HASHHPW = PW.RANDOMNUMBER

我可以将随机数存储在数据库中,但这似乎扼杀了添加盐的全部意义……不是吗?我也可以为每个盐使用一个非随机数,但这也扼杀了盐的意义,因为如果他们弄清楚了,他们就有了我所有的用户密码......

我刚开始学习 PHP 和 MySQL,像这样抽象的东西一直让我感到困惑

谢谢!

最佳答案

这并没有违背独特的盐来储存它的目的。唯一盐的作用是保护您的整个用户存储库免受攻击,而不是保护给定的单个用户。如果攻击者破坏了您的数据库并下定决心要破解特定用户的帐户,他们就会这么做。我们对此无能为力。但是这样做他们将不得不花费过多的计算机时间 - 足够多以致于在每个 用户上花费那么多时间是不可行的 - 从而保护您的所有用户。将此与对所有用户使用相同的盐进行对比 - 一旦攻击者获得盐,就可以在相对较短的时间内针对每个用户重新运行相同的表/进程。

关于database - 如果我为每个用户随机生成 SALT,我该如何对他们进行身份验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1416060/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com