外部脚本的 Moodle 密码检查
Moodle password check on external script
我有 Moodle 2.7。用户登录名和密码哈希存储在 mdl_user table 中。我想创建可以检查登录名和密码是否正确的外部脚本。
如我所见-此 moodle 版本使用某些函数 php,例如 password_hash() 来生成密码哈希。
我的php版本是5.4所以我不能使用这个功能。所以我使用这个库 https://github.com/ircmaxell/password_compat 和这个代码
$password_hash = password_hash( $password , PASSWORD_DEFAULT, array());
问题是每次计算哈希值都不一样。所以我无法将此哈希与放置在 mdl_user table.
中的字符串进行比较
如果此函数类似于 password_hash()
原生于 PHP 的函数,则盐是 与哈希 一起生成的,并且盐是随机的。因此,比较 password_hash()
的 2 个单独调用的结果不会匹配。
您正在查找的函数 password_verify()
,它获取输入的密码和数据库中的哈希值。如果此 returns 为真,则密码匹配。
我有 Moodle 2.7。用户登录名和密码哈希存储在 mdl_user table 中。我想创建可以检查登录名和密码是否正确的外部脚本。
如我所见-此 moodle 版本使用某些函数 php,例如 password_hash() 来生成密码哈希。
我的php版本是5.4所以我不能使用这个功能。所以我使用这个库 https://github.com/ircmaxell/password_compat 和这个代码
$password_hash = password_hash( $password , PASSWORD_DEFAULT, array());
问题是每次计算哈希值都不一样。所以我无法将此哈希与放置在 mdl_user table.
中的字符串进行比较如果此函数类似于 password_hash()
原生于 PHP 的函数,则盐是 与哈希 一起生成的,并且盐是随机的。因此,比较 password_hash()
的 2 个单独调用的结果不会匹配。
您正在查找的函数 password_verify()
,它获取输入的密码和数据库中的哈希值。如果此 returns 为真,则密码匹配。