Moodle密码检查外部脚本

时间:2016-01-07 17:33:16

标签: php hash moodle password-encryption moodle-api

我有Moodle 2.7。用户登录名和密码哈希值存储在mdl_user表中。我想创建可以检查的外部脚本 - 登录名和密码是否正确。

正如我所见 - 这个moodle版本使用一些函数php,如 password_hash()来生成密码哈希。

我的php版本是5.4所以我无法使用此功能。所以我使用此库https://github.com/ircmaxell/password_compat和此代码

$password_hash = password_hash( $password , PASSWORD_DEFAULT, array());

问题是哈希每次计算时都不同。所以我无法将此哈希值与放在mdl_user表中的字符串进行比较。

1 个答案:

答案 0 :(得分:2)

如果此函数类似于PHP的本地password_hash()函数,则使用散列生成沿着,并且salt是随机的。因此,比较password_hash()的2个单独调用的结果是不匹配的。

您正在寻找的函数password_verify(),它接受​​输入的密码和数据库上的哈希值。如果返回true,则密码匹配。