哪个mysql功能等于php; password_hash?

时间:2016-11-01 10:30:30

标签: php mysql password-hash

我使用此命令在mysql表中创建了默认用户名和密码。

 insert into users (email, password) values('admin', md5('1234'));

然后尝试用php验证;

password_verify($_POST['password'], $results['password'])

但是,它未经验证..但是,如果我使用

创建用户名和密码
$stmt -> bindParam(':password', password_hash($_POST['password'], 
PASSWORD_BCRYPT));

可以验证..

我的问题:

我想使用mysql命令创建默认用户名和密码,并希望网站(php)通过用户输入验证它。

要做到这一点,我需要使用哪个mysql函数进行密码加密? md5()似乎不等于php中的 password_hash

非常感谢

1 个答案:

答案 0 :(得分:4)

首先让我们澄清一些事情:

password_hash password_verify 纯粹是PHP函数。它们与MYSQL无关。

password_hash不使用MD5算法来散列您的密码。你可以find more information about it in the docs

那么我们如何使用它以及工作流程如何?

location

在你的情况下,你应该:

  1. 存储用户时将哈希值存储在数据库中
  2. 要记录某人,您需要从数据库中获取用户哈希
  3. 根据哈希验证密码,就像我们上面所做的那样。
  4. 我希望它有所帮助。