2017-06-12 77 views
-4

您好我正在测试使用bcrypt与PHP后使用它与node.js和我找到一些麻烦与我的代码。本质上,我在表单中输入用户名和密码,这是散列并将散列回显到页面上,它也运行密码验证,并且应该返回一条消息,说明密码正确无误,但是它永远不会回归真实。password_verify即使正确返回false

这里是我的代码(注意,没有使用一个数据库,该代码应该总是意味着$密码等于$哈希)

<?php 
$username = $_POST["name"]; 
$password = $_POST["pass"]; 



$hash = password_hash($password, PASSWORD_BCRYPT) . "<br/>"; 

echo $hash; 


if (password_verify($password , $hash)) { 
    echo 'Password is valid!'; 
} else { 
    echo 'Invalid password.'; 
} 
?> 

这是在有和无效的密码因此返回“:

“$ 2Y $ 10 $ yzY0md5wm3nBZvuynPV7mO2W3Ux9455AG/dWfLzwEqRtC1DfMx9Oa 密码无效”

+6

您连锁 “
” 的哈希值。所以,它不应该匹配。 – kainaw

回答

1

变化

$hash = password_hash($password, PASSWORD_BCRYPT); 
+0

啊,是的,工作,傻我的监督 –

相关问题