如何解密django pbkdf2_sha256 算法密码?
How to decrypt django pbkdf2_sha256 algorthim password?
我需要 user_password 使用 Django 的明文。我尝试了很多方法来获取 user_password 中的明文。但它不起作用。于是,我分析了Django用户密码是如何生成的。它使用 Django 核心模型中的 make_password 方法。在此方法中,使用(pbkdf2_sha256)算法生成散列代码。如果有可能解密密码。
示例:
pbkdf2_sha256$150000$O9hNDLwzBc7r$RzJPG76Vki36xEflUPKn37jYI3xRbbf6MTPrWbjFrgQ=
如您所见,Django 在这种情况下使用像 SHA256 这样的哈希方法。哈希机制基本上使用有损压缩方法,因此无法解密哈希消息,因为它们是不可逆的。因为它不是加密,没有像解密这样的落后方法。以散列形式存储密码是安全的,因为只有密码的创建者应该知道原始密码,而后端系统只是比较散列。
这是大多数后端框架的正常情况。因为到目前为止,这是出于安全原因。密码经过哈希处理并保存在数据库中,这样即使恶意用户可以访问数据库,他也无法在那里找到有用的信息,否则很难用一些庞大的单词字典破解哈希值。
我需要 user_password 使用 Django 的明文。我尝试了很多方法来获取 user_password 中的明文。但它不起作用。于是,我分析了Django用户密码是如何生成的。它使用 Django 核心模型中的 make_password 方法。在此方法中,使用(pbkdf2_sha256)算法生成散列代码。如果有可能解密密码。
示例: pbkdf2_sha256$150000$O9hNDLwzBc7r$RzJPG76Vki36xEflUPKn37jYI3xRbbf6MTPrWbjFrgQ=
如您所见,Django 在这种情况下使用像 SHA256 这样的哈希方法。哈希机制基本上使用有损压缩方法,因此无法解密哈希消息,因为它们是不可逆的。因为它不是加密,没有像解密这样的落后方法。以散列形式存储密码是安全的,因为只有密码的创建者应该知道原始密码,而后端系统只是比较散列。
这是大多数后端框架的正常情况。因为到目前为止,这是出于安全原因。密码经过哈希处理并保存在数据库中,这样即使恶意用户可以访问数据库,他也无法在那里找到有用的信息,否则很难用一些庞大的单词字典破解哈希值。