WordPressはどのタイプのハッシュを使用しますか?
これはWordPressハッシュの例です。
$ P $ Bp.ZDNMM98mGNxCtHSkc1DqdRPXeoR。
WordPressパスワードハッシュは、 Portable 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
にはすべての回答が含まれています。
これを行う最良の方法は、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);
。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']
はデータベースから取得する必要があるハッシュされたパスワードです。
どのようなハッシュがWordpress Usesを使用しているかを見つけるのと同じ問題がありました。
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を使用します。これは、パスワードにソルトを追加し、MD5の8パスでハッシュします。
PhpMyAdminを起動し、wordpressインスタンスからwp_usersにアクセスします。レコードを編集し、user_pass関数を選択してMD5に一致させます。新しいパスワードとなる文字列をVALUEに書き込みます。 [GO]をクリックします。 wordpress Webサイトにアクセスして、新しいパスワードを入力します。 phpMyAdminに戻ると、WPがHASHを$ P $ Bのようなものに変更したことがわかります。
include_once( '../../../ wp-config.php');
グローバル$ wpdb;
$ password = wp_hash_password( "your password");
WordpressはMD5パスワードハッシュを使用します。プレーンテキストパスワードのハッシュを作成します。グローバルな$ wp_hasherが設定されていない限り、デフォルトの実装はPasswordHashを使用します。これはパスワードにソルトを追加し、MD5の8パスでハッシュします。 MD5はすべてのプラットフォームでサポートされているため、デフォルトで使用されます。 $ portable_hashesコンストラクター引数またはプロパティでMD5の代わりにBlowfishまたは拡張DES(利用可能な場合)を使用するようにPasswordHashを構成できます。
デフォルトでは、wordpressはMD5を使用します。 blowfishまたは拡張DESにアップグレードできます。
http://frameworkgeek.com/support/what-hash-does-wordpress-use/