PHP password_hash()、password_verify()
问题:
使用的注册脚本用于密码加密的password_hash() 和使用password_verify() 进行密码验证的登录脚本无法正确匹配密码。
答案:
以下是问题的细分和代码解决方案:
要点:
问题和解决方案:
使用不同的算法进行哈希和验证时会出现问题。您收到的错误(“不。密码”)表示数据库中存储的哈希密码与登录期间输入的未哈希密码不匹配。
修订的代码:
注册(哈希):
<code class="php">$password = password_hash($password, PASSWORD_DEFAULT); // Using PASSWORD_DEFAULT or specific algorithm</code>
登录(验证):
<code class="php">if (password_verify($pwd, $row['password'])) { // Password matches... }</code>
脚注:
以上是为什么使用password_hash() 和password_verify() 得到的散列密码不匹配?的详细内容。更多信息请关注PHP中文网其他相关文章!