パスワードハッシュ生成・検証ツール
(Argon2id、bcrypt、scrypt、PBKDF2: 2026 年 OWASP デフォルト)

現実的で最新のパラメーターを使ってパスワードハッシュを生成・検証するクライアントサイドツールです。連携のデバッグや、ソルト、メモリ、イテレーションがコストにどう影響するかの理解に役立ちます。デフォルト値は OWASP 2026 のベースライン(Argon2id m = 19 MiB、t = 2、p = 1)と NIST SP 800-63B の PBKDF2 最小値に従います。ローカルで動作し、パスワードがブラウザの外に出ることはありません。

アルゴリズム
プレーンテキストのパスワード
パラメーター
ソルト
0 B

お客様のデータの安全を最優先にしています。ハッシュ化と検証はすべてこのブラウザ内で行われます。このツールはパスワードやハッシュを保存したり、ブラウザの外に送信したりすることはありません。

対応するパスワードハッシュ関数

Argon2id 生成とパラメーター(2026 年設定)
Argon2id はメモリハードなモダンな関数で、GPU や ASIC を使う攻撃者のコストを引き上げます。OWASP 2026 のベースラインは m = 19 MiB、t = 2、p = 1 に 16 バイトのランダムなソルトです。ハードウェアが許せば m = 64 MiB / t = 3 / p = 4 の方が強固です。本番環境で 1 回の検証が 250〜500 ms 程度になるように調整してください。
bcrypt 生成(コスト / ラウンド)
bcrypt は実績があり、広く利用できます。コストファクター 12 が 2026 年の最小値で、新しいシステムではコスト 13〜14 が推奨されます。14 を超えるとログインの遅延が目立つようになります。互換性を重視して $2b$ 形式で出力します。bcrypt は入力の先頭 72 バイトしか考慮しない点に注意してください。
scrypt 生成(N、r、p)
scrypt はメモリハード性を加えます。2026 年のベースラインは N = 2^17、r = 8、p = 1(検証 1 回あたり約 128 MiB)です。控えめなハードウェアでのインタラクティブなログインでは N = 2^15、r = 8、p = 1 でも許容されますが、2^14 未満の値は決して使わないでください。
PBKDF2 生成(SHA-256 / SHA-512)
PBKDF2 は互換性と FIPS 準拠のための定番です。NIST SP 800-63B(2024 年更新)は PBKDF2-HMAC-SHA256 で 600,000 回以上、PBKDF2-HMAC-SHA512 で 210,000 回以上のイテレーションを要求しています。ハードウェアの進化に合わせて毎年見直してください。
ソルト(と任意のペッパー)
このツールは暗号学的に安全なソルトを生成し、長さとエンコード(Hex/Base64)を設定できます。ハッシュには保存しないペッパー(サイト全体のサーバーシークレット)を追加する構成もあります。ペッパーは慎重に使い、他のシークレットと同様に管理してください。
関連記事:
パスワードのハッシュ化とソルトの解説 • 適切なハッシュ関数の選び方

パスワードハッシュ生成ツールの使い方

ステップ 1.
パスワードを入力する
  • 「生成」タブを開き、デモ用のパスワードを入力します(本物の認証情報は避けてください)。
ステップ 2.
アルゴリズムを選ぶ
  • 新しいシステムには、一般的に Argon2id が推奨されます。
ステップ 3.
パラメーターを設定する:
  • Argon2id: メモリ(MiB)、イテレーション(t)、並列度(p)。
  • bcrypt: コスト(2^cost ラウンド)。
  • scrypt: N(2 のべき乗)、r、p。
  • PBKDF2: イテレーションとダイジェスト(SHA-256/512)。
ステップ 4.
パスワードハッシュを生成する
  • 「パスワードハッシュを生成」をクリックし、エンコードされた文字列をコピーします。
ステップ 5.
パスワードハッシュを検証する
  • 「検証」タブに切り替えて、パスワードとエンコード済みハッシュの組み合わせをテストします。

本物のパスワードで使っても安全ですか?

ハッシュ化はすべてブラウザ内のローカルで行われます。ただし安全のため、オンラインツールでは本番のシークレットを使わないようにしてください。

どのハッシュ関数を使うべきですか?

新しいシステムには一般的に Argon2id が推奨されます。bcrypt と scrypt は広く導入されており、PBKDF2 は互換性のためのフォールバックです。必ずベンチマークを取り、レイテンシー目標を満たすパラメーターを選んでください。

ハッシュ化にはどれくらい時間をかけるべきですか?

多くのチームは認証パスで約 250〜500 ms を目標にしています。本番ハードウェアで UX を損なわない範囲で、最も遅い設定を選んでください。

フレームワークでハッシュが検証できないのはなぜ?

よくある原因: 空白や改行コード、エンコードの不一致(Hex と Base64)、bcrypt のプレフィックスの違い($2a$ と $2b$)、ペッパーの付け忘れです。

ソルトの長さはどれくらいにすべきですか?

16〜32 バイトのランダムデータが標準です。このツールはデフォルトで安全な乱数を使い、長さとエンコードを表示します。

このツールでパスワードハッシュを復号できますか?

できません。他のどんなツールでも不可能です。Argon2id、bcrypt、scrypt、PBKDF2 は一方向のハッシュ関数であり、暗号化ではありません。これらを「元に戻す」鍵は存在しません。ハッシュからパスワードを復元する唯一の方法は、候補となるパスワードを推測し、それぞれをハッシュ化して比較することです。これがパスワードクラッキング攻撃の手法であり、モダンなメモリハードなパラメーターは、それを大規模に行うことが経済的に成り立たないように調整されています。既知のパスワードを保存済みハッシュと照合するには「検証」タブを使ってください。

Argon2id、bcrypt、scrypt: 2026 年にはどれを選ぶべき?

Argon2id が新しいシステムの推奨デフォルトです。PHC(パスワードハッシュコンペティション)の優勝者であり、GPU や ASIC による攻撃に対してメモリハードです。bcrypt はコスト 12 以上であれば既存の導入には問題ありませんが、メモリハードではなく、72 バイトの入力制限があります。scrypt もメモリハードでよく研究されていますが、実行環境にメンテナンスされた Argon2id ライブラリがない場合にのみ選んでください。PBKDF2 は FIPS / NIST 準拠が求められる場合にのみ使ってください。

パスワードリセットを強制せずに bcrypt から Argon2id へ移行するには?

機会的リハッシュ(opportunistic rehashing)を使います。既存ユーザーは引き続き bcrypt で検証し、ログインに成功したときに、入力されたプレーンテキストのパスワードを Argon2id でハッシュ化して保存済みの認証情報を更新します。どのアルゴリズムで検証すべきかを判断できるように、ユーザーごとにハッシュバージョンのフィールドを管理してください。通常のユーザー活動が数週間続けば大半のアカウントが移行します。残りの非アクティブなユーザーには、パスワードリセットの案内で強制移行できます。