【问题标题】:Django Password Decrypt in PHP (with salt and cypher)PHP中的Django密码解密(使用盐和密码)
【发布时间】:2021-07-23 02:50:27
【问题描述】:

在 Django 中,我们保存一个散列密码,如

"gAAAAABgiwEaPluFLV48a1kZFLIQDJfvk5elLjRGBAwuLVwnkhzpOtxLTU4n6ble1pB0DNCYdDdcU1MaGL3uFAQvwILVJNx50w=="

还有盐类

"-GcGi6r3TmMNz5cD8Cagpfli3Es-hz_s3hda5vr5G60="

在 Python 中,我使用 Fernet Library 之类的方式解密密码

f = Fernet(salt)
password = f.decrypt(bytes(password_cypher.encode())).decode()

问题是如何在 php 中像这种方法一样解密......? (Laravel & PHP)

【问题讨论】:

  • php.net/manual/en/function.hash-pbkdf2.php 也就是说,PBKDF 并不是特别适合密码存储,如果您要切换到用于密码的更广泛实施的方法,例如:bcrypt,您将能够利用 PHP 的内置函数:php.net/manual/en/book.password.php
  • 谢谢,我知道那个兄弟,在任何地方我都使用 bcrypt 在数据库中存储密码,但这是一个用 django 编写的程序,现在我必须显示一堆密码......所以我必须使用 cypher 和 salt 来证明,在 django 中没问题,php 也是如此。我解决了。

标签: php django encryption password-encryption


【解决方案1】:

在 php 中我使用了库

kelvinmo/fernet-php

代码也很简单

$fernet = new \Fernet\Fernet(salt);
echo $fernet->decode(password_cypher)

【讨论】:

    猜你喜欢
    • 2015-02-10
    • 2017-10-23
    • 2014-11-30
    • 2012-07-04
    • 2012-07-07
    • 2016-04-09
    • 1970-01-01
    • 1970-01-01
    • 2014-01-24
    相关资源
    最近更新 更多