php - 在 WordPress 中比较散列密码与 PHP

标签 php wordpress md5 salt password-hash

我正在构建一个外部应用程序,将从 WordPress 站点数据库表中获取用户登录凭据。在表中我可以看到密码正在被散列,类似于这样的内容

$P$9jWFhEPMfI.KPByiNO9IyUzSTG7EZK0

我的要求是根据登录中的纯密码检查此密码。我正在使用函数 $hashed=wp_hash_password($password); 来生成散列并将其与散列进行比较存储在数据库中。但这每次都会为相同的密码生成一个随机散列。那么我如何比较这两个密码?我还可以在我的 wp_config 中看到定义了不同的盐值,例如 AUTH_SALT、SECURE_AUTH_SALT、LOGGED_IN_SALT、NONCE_SALT

请建议一种比较散列密码的方法。我们是否需要使用这些盐来使其正确。如果需要,请建议一些示例代码

谢谢:-)

最佳答案

您应该使用wp_check_password( string $password, string $hash, string|int $user_id= '' )

$password (string) (Required) Plaintext user's password

$hash (string) (Required) Hash of the user's password to check against.

$user_id (string|int) (Optional) User ID.

https://developer.wordpress.org/reference/functions/wp_check_password/

关于php - 在 WordPress 中比较散列密码与 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49707481/

相关文章:

php - 使用 while 循环将 MySQL 结果分离到 Div 中

php - 在动态创建的表单字段 Jquery .insertBefore 之前添加标题

powershell - 比较 Azure Properties.ContentMD5 和 Get-Filehash 之间的字符串输出

go - 为什么通过 TeeReader 的 tar.gz 的 tar 部分的 md5 散列是错误的?

javascript - 使用 jquery/isotope 类调用/链接 wordpress 类别

php - WordPress 选项表行数在刷新时不断变化?

css - 当屏幕尺寸超过 1280 像素时,响应式设计中的滚动条消失

javascript - Wordpress 和 Bootstrap : Dropdown menu does not works

在 C 中计算文件的 MD5 校验和而不打开文件?

php - 避免在 PHP 中显示来自数据库的重复结果