Какой тип хэша использует WordPress?
Вот пример хэша WordPress:
$ P $ Bp.ZDNMM98mGNxCtHSkc1DqdRPXeoR.
Мастера пароля WordPress реализует инфраструктуру хеширования паролей PHP , которая используется в системах управления контентом, таких как WordPress и Drupal.
Раньше они использовали MD5 в старых версиях, но, к сожалению, для меня, не более того. Вы можете генерировать хэши с помощью этой схемы шифрования по адресу http://scriptserver.mainframe8.com/wordpress_password_hasher.php .
$hash_type$salt$password
Если хэш не использует соль, то для этого нет знака $
. Фактический хэш в вашем случае – после 2-го $
Причина этого заключается в том, что у вас может быть много типов хэшей с различными солями и кормами, которые строятся в функцию, которая знает, как сопоставить ее с каким-либо другим значением.
MD5 работал для меня, меняя мою базу данных вручную. См. Сброс пароля.
http://eamann.com/tech/wordpress-password-hashing/
Чтобы предотвратить нарушение обратной совместимости, MD5-хэшированные пароли, хранящиеся в базе данных, остаются в силе. Когда пользователь входит в систему с таким паролем, WordPress обнаруживает, что MD5 использовался, перефразирует пароль с использованием более безопасного метода и сохраняет новый хеш в базе данных.
Это означает, что для ручного сброса пароля в WordPress DB достаточно простого хеша MD5.
Это зависит, по крайней мере, от используемой версии PHP. wp-includes/class-phpass.php
содержит все ответы.
Запустите phpMyAdmin и получите доступ к wp_users из вашего экземпляра wordpress. Измените запись и выберите функцию user_pass для соответствия MD5. Напишите строку, которая будет вашим новым паролем в VALUE. Нажмите, GO. Перейдите на ваш сайт WordPress и введите новый пароль. Вернемся к phpMyAdmin, вы увидите, что WP изменил HASH на что-то вроде $ P $ B … наслаждайтесь!
По умолчанию WordPress использует MD5. Вы можете обновить его до blowfish или расширенного DES.
http://frameworkgeek.com/support/what-hash-does-wordpress-use/
У меня была такая же проблема, когда выяснял, какой тип Хэша использует WordPress.
Это wp-хэш-пароль .
пример
Сравните уже хэшированный пароль с его строкой открытого текста:
<?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 использует хеширование пароля MD5 . Создает хэш обычного текстового пароля. Если глобальный $ wp_hasher не установлен, реализация по умолчанию использует PasswordHash, который добавляет соль к паролю и хэширует его с 8 проходами MD5. MD5 используется по умолчанию, поскольку поддерживается всеми платформами. Вы можете настроить PasswordHash для использования Blowfish или расширенного DES (если доступно) вместо MD5 с аргументом или свойством конструктора $ portable_hash.
include_once ( '../../../ WP-config.php');
глобальный $ wpdb;
$ password = wp_hash_password («ваш пароль»);
Лучший способ сделать это – использовать класс WordPress для аутентификации пользователей. Вот мои решения:
1. Включите следующий PHP-файл WordPress:
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
функцию CheckPassword
для аутентификации пользователя:
$check = $wp_hasher->CheckPassword($password, $row['user_pass']);
4. $check
переменную $check
:
if($check) { echo "password is correct"; } else { echo "password is incorrect"; }