web-dev-qa-db-ja.com

WordPressはどのタイプのハッシュを使用しますか?

WordPressはどのタイプのハッシュを使用しますか?
これはWordPressハッシュの例です。

$ P $ Bp.ZDNMM98mGNxCtHSkc1DqdRPXeoR。

130
Amanda Kumar

WordPressパスワードハッシュは、 Portable PHPパスワードハッシュフレームワーク を実装します。これは、コンテンツ管理システムで使用されます。 WordPressおよびDrupal。

以前のバージョンではMD5を使用していましたが、残念なことに、これ以上はありません。 http://scriptserver.mainframe8.com/wordpress_password_hasher.php でこの暗号化スキームを使用してハッシュを生成できます。

130
Neil
$hash_type$salt$password

ハッシュがソルトを使用しない場合、そのための$記号はありません。実際のハッシュは、2番目の$の後です

その理由は、さまざまな塩を含む多くのタイプのハッシュを使用し、その文字列を他の値と照合する方法を知っている関数にフィードできるからです。

19
Ólafur Waage

MD5は、データベースを手動で変更するのに役立ちました。参照: パスワードのリセット

14
JohnMetta

http://eamann.com/tech/wordpress-password-hashing/

後方互換性が損なわれないように、データベースに保存されているMD5ハッシュパスワードは引き続き有効です。ユーザーがそのようなパスワードでログインすると、WordPressはMD5が使用されたことを検出し、より安全な方法を使用してパスワードを再ハッシュし、新しいハッシュをデータベースに保存します。

つまり、Wordpress DBのパスワードを手動でリセットするには、単純なMD5ハッシュで十分です。

10
JJLL

少なくとも使用されるPHPのバージョンに依存します。 wp-includes/class-phpass.phpにはすべての回答が含まれています。

8
innaM

これを行う最良の方法は、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']はデータベースから取得する必要があるハッシュされたパスワードです。

8
Faisal Shaikh

どのようなハッシュが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パスでハッシュします。

6
Meisam

PhpMyAdminを起動し、wordpressインスタンスからwp_usersにアクセスします。レコードを編集し、user_pass関数を選択してMD5に一致させます。新しいパスワードとなる文字列をVALUEに書き込みます。 [GO]をクリックします。 wordpress Webサイトにアクセスして、新しいパスワードを入力します。 phpMyAdminに戻ると、WPがHASHを$ P $ Bのようなものに変更したことがわかります。

6
ceccoto

include_once( '../../../ wp-config.php');

グローバル$ wpdb;

$ password = wp_hash_password( "your password");

2

WordpressはMD5パスワードハッシュを使用します。プレーンテキストパスワードのハッシュを作成します。グローバルな$ wp_hasherが設定されていない限り、デフォルトの実装はPasswordHashを使用します。これはパスワードにソルトを追加し、MD5の8パスでハッシュします。 MD5はすべてのプラットフォームでサポートされているため、デフォルトで使用されます。 $ portable_hashesコンストラクター引数またはプロパティでMD5の代わりにBlowfishまたは拡張DES(利用可能な場合)を使用するようにPasswordHashを構成できます。

2
J. Shabu

デフォルトでは、wordpressはMD5を使用します。 blowfishまたは拡張DESにアップグレードできます。

http://frameworkgeek.com/support/what-hash-does-wordpress-use/

0
frameworkgeek