Réponses:
Le hachage de mot de passe WordPress implémente le framework de hachage de mot de passe PHP portable , qui est utilisé dans les systèmes de gestion de contenu tels que WordPress et Drupal.
Ils utilisaient MD5 dans les anciennes versions, mais malheureusement pour moi, pas plus. Vous pouvez générer des hachages à l'aide de ce schéma de chiffrement à l' adresse http://scriptserver.mainframe8.com/wordpress_password_hasher.php .
password_hash
fonction. si vous avez seulement> PHP 5.3.7 utilisez la bibliothèque de compatibilité ici github.com/ircmaxell/password_compat
$hash_type$salt$password
Si le hachage n'utilise pas de sel, il n'y a aucun $
signe pour cela. Le hachage réel dans votre cas est après le 2ème$
La raison en est que vous pouvez avoir de nombreux types de hachages avec différents sels et alimente cette chaîne dans une fonction qui sait comment la faire correspondre avec une autre valeur.
MD5 a travaillé pour moi en changeant ma base de données manuellement. Voir: Réinitialiser votre mot de passe
Pour réinitialiser manuellement le mot de passe dans Wordpress DB, un simple hachage MD5 est suffisant. (voir la raison ci-dessous)
Pour éviter de rompre la compatibilité ascendante, les mots de passe hachés MD5 stockés dans la base de données sont toujours valides. Lorsqu'un utilisateur se connecte avec un tel mot de passe, WordPress détecte que MD5 a été utilisé, répète le mot de passe en utilisant la méthode la plus sécurisée et stocke le nouveau hachage dans la base de données.
Source: http://eamann.com/tech/wordpress-password-hashing/
Mise à jour: c'était une réponse publiée en 2014. Je ne sais pas si cela fonctionne toujours pour la dernière version de WP puisque je ne travaille plus avec WP.
J'ai eu le même problème pour savoir quel type de hachage utilise Wordpress.
C'est le mot de passe de hachage wp .
Exemple
Comparez un mot de passe déjà haché avec sa chaîne de texte brut:
<?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";
}
?>
Voir ces liens: https://codex.wordpress.org/Function_Reference/wp_hash_password
https://developer.wordpress.org/reference/functions/wp_hash_password
Il utilise PasswordHash, qui ajoute du sel au mot de passe et le hache avec 8 passes de MD5.
La meilleure façon de le faire est d'utiliser la classe WordPress pour authentifier les utilisateurs. Voici mes solutions:
1. Incluez le fichier PHP WordPress suivant:
include_once(dirname(dirname(dirname(__FILE__))) . DIRECTORY_SEPARATOR . "wp-includes" . DIRECTORY_SEPARATOR . "class-phpass.php");
2. Créez un objet de PasswordHash
classe:
$wp_hasher = new PasswordHash(8, true);
3. appelez la CheckPassword
fonction pour authentifier l'utilisateur:
$check = $wp_hasher->CheckPassword($password, $row['user_pass']);
4. vérifier la $check
variable:
if($check) {
echo "password is correct";
} else {
echo "password is incorrect";
}
Veuillez noter que: $password
est le mot de passe non haché en texte clair, alors que $row['user_pass']
c'est le mot de passe haché que vous devez récupérer dans la base de données.
Démarrez phpMyAdmin et accédez à wp_users depuis votre instance wordpress. Modifiez l'enregistrement et sélectionnez la fonction user_pass pour correspondre à MD5. Écrivez la chaîne qui sera votre nouveau mot de passe dans VALUE. Cliquez, GO. Accédez à votre site WordPress et entrez votre nouveau mot de passe. De retour à phpMyAdmin, vous verrez que WP a changé le HASH en quelque chose comme $ P $ B ... profitez-en!
Wordpress utilise le hachage de mot de passe MD5 . Crée un hachage d'un mot de passe en texte brut. À moins que le global $ wp_hasher ne soit défini, l'implémentation par défaut utilise PasswordHash, qui ajoute du sel au mot de passe et le hache avec 8 passes de MD5. MD5 est utilisé par défaut car il est pris en charge sur toutes les plates-formes. Vous pouvez configurer PasswordHash pour utiliser Blowfish ou DES étendu (si disponible) au lieu de MD5 avec l'argument ou la propriété du constructeur $ portable_hashes.
include_once ('../../../ wp-config.php');
global $ wpdb;
$ password = wp_hash_password ("votre mot de passe");
Par défaut, wordpress utilise MD5. Vous pouvez le mettre à niveau vers Blowfish ou DES étendu.
http://frameworkgeek.com/support/what-hash-does-wordpress-use/