匹配postgresql中的codeigniter默认加密密码?

时间:2017-07-03 12:26:51

标签: php postgresql codeigniter encryption aes

我对加密知之甚少,所以请原谅我的知识湖。我使用了codeigniter默认库进行加密。在这个库中说明了

  

默认情况下,加密库将使用您配置的encryption_key和SHA512 HMAC身份验证在CBC模式下使用AES-128密码。

在配置文件中,我为此加密设置了密钥。直到现在我已经成功注册了新用户。但现在登录我必须匹配密码。我想知道如何使用postgresql实现这一目标?我见过md5文章,但没有看到AES加密。

此外,检查用户名和加密密码两者或获取密码,解密然后将其与插入的密码相匹配的正确方法是什么?

P.S:对于否定投票,请不要忘记留下评论:) 干杯!

1 个答案:

答案 0 :(得分:1)

如果您仔细阅读CodeIgniter's Encryption Library的文档,您会发现它明确指出它不应该用于密码存储:

  

请勿使用此密码库或任何其他加密库进行用户密码存储!密码必须经过哈希处理,您应该通过PHP自己的密码哈希扩展来实现。

PHP's own Password Hashing extension包含Narf在评论中提到的两个函数:password_hash()& password_verify()

有关详细信息,请查看此处的示例:https://secure.php.net/manual/en/function.password-verify.php