Security 一个盐和一个;散列用于lost pw的质询问题的回答?

Security 一个盐和一个;散列用于lost pw的质询问题的回答?,security,Security,如果你在db中对一个pw进行盐析和散列,你是否也应该这样做,以回应在临时pw生成过程中使用的质询问题 谢谢 是的,你应该这样做 没有必要知道挑战是什么,只要回答正确。如果你问的是密码恢复问题和答案,那么,天哪,是的!您可能能够在密码恢复过程中实现更多的可跟踪性(以检测和防止尝试破解),但数据库的这一部分与密码一样敏感,如果以明文形式泄漏,将对用户造成伤害 基本上,密码恢复挑战只是另一个名称的密码…这取决于您希望对存储的响应执行什么操作。如果您只想将其与用户提供的响应进行精确的比较,那么将其存储为

如果你在db中对一个pw进行盐析和散列,你是否也应该这样做,以回应在临时pw生成过程中使用的质询问题

谢谢

是的,你应该这样做


没有必要知道挑战是什么,只要回答正确。

如果你问的是密码恢复问题和答案,那么,天哪,是的!您可能能够在密码恢复过程中实现更多的可跟踪性(以检测和防止尝试破解),但数据库的这一部分与密码一样敏感,如果以明文形式泄漏,将对用户造成伤害


基本上,密码恢复挑战只是另一个名称的密码…

这取决于您希望对存储的响应执行什么操作。如果您只想将其与用户提供的响应进行精确的比较,那么将其存储为salted hash就可以了,强烈建议将其存储为salted hash

但是,如果您允许的答案几乎正确(例如区分大小写或遗漏空格),则需要原始字符串进行比较。此外,如果您有支持用户重置密码的帮助台,您可能希望他们能够比较答案。在这种情况下,您将需要原始字符串,哈希是无用的。您的决定取决于在密码重置过程中可能需要原始字符串的用途


如果您无法避免以明文形式存储信息,则应在更改密码之前,对密码重置实施其他限制,如发送授权链接的已验证电子邮件地址。

如果我提供了几个问题供选择,当然,我应该提醒用户他选择了哪个问题……记住这个问题是可以的,但是答案应该安全地存储。你甚至应该警告用户,他们的答案不会安全地存储,因为他们可能在其他网站上使用相同的问题/答案组合。