我需要使用Django的user_password明文。我尝试了很多方法在user_password中获取明文。但它不起作用。因此,我分析了Django用户密码是如何生成的。它在Django核心模型中使用make_password方法。在此方法中,使用( pbkdf2_sha256)算法生成散列代码。如果有可能的话,可以解密密码。
示例: pbkdf2_sha256$150000$O9hNDLwzBc7r$RzJPG76Vki36xEflUPKn37jYI3xRbbf6MTPrWbjFrgQ=
发布于 2020-12-02 16:47:06
正如你已经看到的,Django在这个例子中使用了像SHA256这样的散列方法。哈希机制基本上使用有损压缩方法,因此无法解密哈希消息,因为它们是不可逆的。因为它不是加密,也没有像解密这样的反向方法。以散列形式存储密码是安全的,因为只有密码的创建者应该知道原始密码,而后端系统只是比较散列。
这是大多数后端框架的正常情况。因为到目前为止,这是出于安全原因。密码被散列并保存在数据库中,这样即使恶意用户访问了数据库,他也无法在那里找到有用的信息,否则就很难用一些巨大的单词字典来破解散列。
https://stackoverflow.com/questions/65104609
复制相似问题