【发布时间】:2020-03-11 12:58:56
【问题描述】:
我想跟踪用户密码更改历史记录,如果他们以前使用过他们的当前密码,则显示警告。需要注意的是,如果之前使用过,我不想阻止用户设置密码,我想让他们设置密码,但之后只显示警告。所以我要找的不是密码验证器。
我知道,虽然 Django 将用户密码保存在数据库中,但它会使用随机盐创建密码的哈希值。因此,相同密码的 2 个哈希值不会相同。不过,是否可以判断是否使用与输入相同的原始密码创建了 2 个不同的密码哈希?
【问题讨论】:
-
为此,您需要原始(未散列的)密码;然后,您可以使用与旧密码相同的随机盐对其进行哈希处理,并查看哈希是否匹配。如果你只有哈希,这是不可能的。
-
@deceze 是的,就我而言,我所拥有的只是哈希值。如果您可以发布一个答案来解释这是不可能的,我可以接受。
标签: django cryptography django-users