Answers:
WordPress密码哈希器实现了可移植PHP密码哈希框架,该框架在WordPress和Drupal等内容管理系统中使用。
他们曾经在较旧的版本中使用MD5,但对我来说可悲的是,仅此而已。您可以在http://scriptserver.mainframe8.com/wordpress_password_hasher.php上使用此加密方案生成哈希。
password_hash
功能。如果您只有PHP 5.3.7,请在此处使用兼容性库github.com/ircmaxell/password_compat
$hash_type$salt$password
如果哈希不使用盐,则没有$
迹象表明。您的情况下的实际哈希值是第二个之后$
这样做的原因是,因此您可以拥有多种类型的带有不同盐的哈希,并将该字符串输入一个知道如何将其与其他值匹配的函数中。
MD5为我工作,手动更改数据库。请参阅:重设密码
要在Wordpress DB中手动重置密码,简单的MD5哈希就足够了。(请参见下面的原因)
为了防止向后兼容,存储在数据库中的MD5哈希密码仍然有效。当用户使用这种密码登录时,WordPress会检测到使用了MD5,并使用更安全的方法重新加密了密码,并将新的哈希存储在数据库中。
资料来源:http://eamann.com/tech/wordpress-password-hashing/
更新:这是在2014年发布的答案。我不知道它是否仍适用于最新版本的WP,因为我不再使用WP。
我在找出Wordpress使用哪种哈希时遇到了同样的问题。
这是wp hash密码。
例
将已经散列的密码与其纯文本字符串进行比较:
<?php
$wp_hasher = new PasswordHash(8, TRUE);
$password_hashed = '$P$B55D6LjfHDkINU5wF.v2BuuzO0/XPk/';
$plain_password = 'test';
if($wp_hasher->CheckPassword($plain_password, $password_hashed)) {
echo "YES, Matched";
} else {
echo "No, Wrong Password";
}
?>
请参阅以下链接:https : //codex.wordpress.org/Function_Reference/wp_hash_password
https://developer.wordpress.org/reference/functions/wp_hash_password
它使用PasswordHash,它将密码加盐,并通过8次MD5传递对其进行哈希处理。
最好的方法是使用WordPress类对用户进行身份验证。这是我的解决方案:
1.包括以下WordPress PHP文件:
include_once(dirname(dirname(dirname(__FILE__))) . DIRECTORY_SEPARATOR . "wp-includes" . DIRECTORY_SEPARATOR . "class-phpass.php");
2.创建一个PasswordHash
类的对象:
$wp_hasher = new PasswordHash(8, true);
3.调用CheckPassword
功能对用户进行身份验证:
$check = $wp_hasher->CheckPassword($password, $row['user_pass']);
4.检查$check
变量:
if($check) {
echo "password is correct";
} else {
echo "password is incorrect";
}
请注意: $password
是未加密的明文$row['user_pass']
密码,而是您需要从数据库中获取的哈希密码。
启动phpMyAdmin并从您的wordpress实例访问wp_users。编辑记录并选择user_pass函数以匹配MD5。在VALUE中输入将成为您的新密码的字符串。单击,开始。转到您的wordpress网站,然后输入新密码。返回phpMyAdmin,您将看到WP将HASH更改为类似$ P $ B的东西……尽情享受吧!
include_once('../../../ wp-config.php');
全局$ wpdb;
$ password = wp_hash_password(“您的密码”);
默认情况下,wordpress使用MD5。您可以将其升级为河豚鱼或扩展的DES。
http://frameworkgeek.com/support/what-hash-does-wordpress-use/