如何在查询中使用bcrypted密码


How can I use bcrypted password in a query?

在开始之前,我将声明目前我仍然使用旧的mysql API。

我使用此功能创建密码。

$password = $_POST[password];
$passwordhashed = password_hash($password, PASSWORD_DEFAULT);

然而,现在我需要运行这样一个查询:

$query_f = mysql_query("SELECT fiscal FROM list WHERE password='$password'");

但显然我不能使用$password,因为在数据库中它是用随机盐加密的。那么我该怎么做呢?

这不是我真正要做的。出于我不想打扰你的原因,我想知道这是否可能以及如何做到。

您没有。通过某些标识符(如用户名或电子邮件地址)查找用户,然后检查密码字段是否与password_verify匹配。你特别不能通过加盐的密码散列来查找用户,这会破坏加盐的意义。