WordPressパスワードハッシュ生成
WordPressのパスワードをphpass形式($P$B...)でハッシュ化します。 phpMyAdminでDBに直接書き込んでパスワードを復旧できます。 すべての処理はブラウザ上で行われ、データがサーバーに送信されることはありません。
phpMyAdminでのパスワード復旧手順
- phpMyAdminにログイン
レンタルサーバーの管理画面からphpMyAdminにアクセスします。
- WordPressのデータベースを選択
左サイドバーからWordPressが使用しているデータベースをクリックします。
- wp_usersテーブルを開く
テーブル一覧から
wp_usersをクリックします。 テーブル接頭辞がカスタマイズされている場合はxxxx_usersのようになります。 - 対象ユーザーの「編集」をクリック
パスワードをリセットしたいユーザーの行で「編集」ボタンをクリックします。
- user_passフィールドにハッシュ値を貼り付け
user_passフィールドに上で生成したハッシュ値を貼り付けます。「関数」ドロップダウンは空欄のままにしてください。 - 「実行」をクリック
変更を保存します。これでWordPressに新しいパスワードでログインできます。
注意事項
- ログイン後、WordPress管理画面からパスワードを再変更することを推奨します。
- テーブル接頭辞は
wp-config.phpの$table_prefixで確認できます。 - 操作前にデータベースのバックアップを取ることを推奨します。
このツールについて
WordPressはphpassライブラリを使用してパスワードをハッシュ化しています。 すべての処理はブラウザ上で完結し、パスワードやハッシュ値がサーバーに送信されることはありません。 また、ブラウザのストレージにも保存されません。
WordPressのパスワードが必要になるケース
- 管理画面のパスワードを忘れてログインできない
- パスワードリセットメールが届かない(メール設定の問題など)
- 管理者アカウントがロックアウトされた
- サイト移行後にパスワードが機能しない
これらの場合、データベースに直接ハッシュ値を書き込むことでパスワードを復旧できます。
パスワード復旧の全体フロー
パスワード入力
新しいパスワードを決める
ハッシュ生成
phpass形式に変換
phpMyAdminで編集
wp_usersテーブルを更新
ログイン成功!
管理画面にアクセス
このツールでハッシュ値を生成し、phpMyAdminからデータベースに書き込むだけで復旧が完了します。 サーバーへのSSH接続やWP-CLIは不要です。
ハッシュ化のしくみ
パスワード
mypasswordソルト (8文字)
a1b2c3d48,192回 繰り返し
MD5(前回の結果 + パスワード)
最終出力 (34文字)
$P$Ba1b2c3d4xxxxxxxxxxxxxxxxxxxxxxxxWordPressのphpassは、ランダムな8文字のソルトとパスワードを結合し、 MD5ハッシュを8,192回繰り返し計算します。 この反復処理により、ブルートフォース攻撃に対する耐性を高めています。 最終的なハッシュ値は $P$B で始まる34文字の文字列になります。 ソルトはハッシュ値の中に埋め込まれているため、照合時には保存されたハッシュからソルトを取り出して再計算することで一致を確認できます。
phpMyAdminでの操作
| 関数 | ID | user_login | user_pass | user_email |
|---|---|---|---|---|
| 空欄のまま | 1 | admin | $P$BxxxxxxxxxxxxxxxxxxxxxxxxxxxR1← ここに貼り付け | admin@example.com |
wp_users テーブルのuser_pass フィールドに 生成したハッシュ値をそのまま貼り付けます。 重要なのは「関数」ドロップダウンを空欄のままにすることです。 MD5などの関数を選択してしまうと、ハッシュ値が二重にハッシュ化されてログインできなくなります。
セキュリティに関する注意: phpass内部で使用されるMD5は暗号学的に脆弱なハッシュ関数です。 WordPressのphpassはソルトと多数回のイテレーションにより安全性を高めていますが、 復旧後はWordPress管理画面から速やかにパスワードを再変更してください。