2012-10-03 53 views
1

我不明白这是如何工作你如何使用BCRYPT

$hash = $bcrypt->hash($_POST['password']); //this string is stored in mysql 

然后验证与PHP/MySQL的密码,当用户登录,

//get hash string from above from mysql, then 

if ($bcrypt->verify($_POST['password'], $row['password'])) { 
    echo "Logged in."; 
} 

A.),我做这是否正确?

B.)如果是这样,如果bcrypt没有存储在数据库中,bcrypt如何记住salt?

回答

1

盐被加在哈希上,所以函数从数据库中抽出盐。这就是为什么您必须将数据库中的哈希值传递给验证函数,而不是重新调整密码并进行比较。

是的,它看起来像你正在做的正确。