【发布时间】:2016-04-15 17:27:34
【问题描述】:
我正在使用以下 PHP 代码加密密码,然后将其保存到数据库中,我需要能够使用 Python 对其进行解密。
我成功地使用 PHP 解密它但无法找到 使用 Python 这样做(如果重要的话,我使用的是 2.7.9 版)..
$mypass = "somepassword"
$encryptionMethod = "AES-256-CBC";
$secretHash = "25c6c78835b7479b151f2136cd888777";
$encpass = openssl_encrypt($mypass, $encryptionMethod, $secretHash);
我打开和读取数据库没有问题,我唯一的问题是解密部分。 欢迎任何建议,谢谢。
【问题讨论】:
-
为什么要这样做?加密这样的密码就像建造一座城堡,然后雇用一个小男孩来吓唬那些通过吊桥进入的人,并说服他们在攻击时保持开放......
-
您永远不应该加密您的用户密码。您需要使用散列代替一些强大的散列,例如 PBKDF2、bcrypt、scrypt 和 Argon2。由于散列函数是单向函数,因此您将无法“解密”散列。为了验证您的用户,您可以再次通过哈希函数运行密码,以便与存储在数据库中的哈希值进行比较。查看更多:How to securely hash passwords?
标签: php python encryption openssl encryption-symmetric