用于Phalcon加密库的password_verify

时间:2015-01-13 19:12:20

标签: php encryption password-protection phalcon password-encryption

你好, 我正在尝试使用phalcon设置基本登录,并使用它的加密库 而 以下代码返回false

$crypt = new Phalcon\Crypt();
$string = 'password';
$enc_password = $crypt->encrypt($string, ENCRYPTION_KEY);
$dec_password = $crypt->decrypt($enc_password, ENCRYPTION_KEY);
if($string == $dec_password){
    return true;
} else {
    return false;
}

这个条件返回false,而如果$string和& $dec_password回显密码,php函数stcmp返回-24。生成的加密如下

¡ØŠ7¯r¿ëæ5。=ã'M‡ÖŸ,sH])G¼ÂÆÂ]ªü¥»Iμ-¾T]oDÝÔYf}

如果这个问题得到解决,我想加入这种加密方式。 谢谢

1 个答案:

答案 0 :(得分:1)

密码应该是单向函数的哈希值,所以我不认为解密密码的必要性

继续参考vokuro项目,该项目向您展示如何处理此

https://github.com/phalcon/vokuro/blob/master/app/controllers/SessionController.php#L86

https://github.com/phalcon/vokuro/blob/master/app/library/Auth/Auth.php#L34

话虽如此,以下内容应该有效:

$crypt->setKey('¡ØŠ7¯r¿ëæ5.=ã´M‡ÖŸ‚sH]‚­)G¼ÂÆÂ]ªü¥»Íµ–¾T]oDÝÔYf}')

https://github.com/phalcon/vokuro/blob/master/app/config/services.php#L97

return $this->security->checkHash($string, $enc_password)