Argon2 オンラインハッシュ生成ツール
Argon2id/i/d の3種類に対応、メモリ・反復回数・並列度を調整可能、PHC 検証とベンチマークにも対応
Argon2 オンラインハッシュ生成ツール
Argon2 は Password Hashing Competition の優勝アルゴリズムで、新規プロジェクトのパスワード保存に推奨される選択肢の一つです。計算時間だけでなく一定量のメモリも必要とするため、GPU や専用ハードウェアによる大規模な並列化攻撃を困難にします。このツールでは、ハッシュ生成、パスワード検証、ハッシュ解析の3つのタブを利用できます。
アルゴリズムの種類とプリセット
- 種類:Argon2id はパスワード保存に推奨され、Argon2i はサイドチャネル攻撃への耐性が必要な特殊な用途に適しています。Argon2d は一般的なパスワード保存には推奨されません。
- プリセット:推奨は 64MB、反復 3、並列度 2。高セキュリティは 128MB、反復 3、並列度 4。低リソースは 32MB、反復 2、並列度 1。すべての値を手動で設定することもできます。
- パラメータの意味:メモリは1回のハッシュ計算で使用するメモリ量、反復回数は計算ラウンド数を表します。並列度はサーバーで利用可能な CPU スレッド数を超えないようにしてください。
プリセットは一般的な開始値にすぎません。最終的なパラメータは、対象サーバーの CPU、メモリ、同時ログイン数を考慮して決定してください。
ハッシュ生成
パスワードを入力してパラメータを確認し、標準 PHC 形式のハッシュを生成します。ハッシュにはアルゴリズム名、バージョン、m/t/p パラメータ、Salt、ハッシュ本体が含まれ、そのままデータベースに保存できます。パスワード欄は表示・非表示を切り替えられます。また、パラメータのテスト専用としてランダムなパスワードを生成することもできます。
検証と解析
検証モードでは既存の Argon2 ハッシュと確認するパスワードを入力すると、ハッシュに保存されたパラメータを読み取り、再計算して結果を比較します。新しいハッシュを生成することなく、パスワードが一致するかを表示します。解析モードでは PHC 文字列からアルゴリズム、バージョン、メモリ、反復回数、並列度、Salt、ハッシュ本体を読み取り、本番環境の設定がドキュメントと一致しているかを確認できます。
性能ベンチマーク
ベンチマークでは現在のパラメータで複数回計算を行い、平均、最小、最大の所要時間と最適化の推奨事項を表示します。ログイン時の応答時間と安全性のバランスを取るためのパラメータ選定に役立ちます。結果は現在のデバイスとブラウザのみを対象としており、サーバーは別途テストする必要があります。
パラメータ検証とエラー処理
- メモリは 1MB から 1024MB、反復回数は 1 から 100、並列度は 1 から 16 の範囲で指定します。範囲外の値はすぐに通知されます。
- 256MB を超えるメモリを指定すると、ブラウザがメモリ不足で失敗する可能性があることを警告します。このようなパラメータはサーバー上で直接テストしてください。
- 不正なハッシュ形式や Salt またはハッシュ部分がない PHC 文字列について、具体的な原因を表示します。
- 計算に失敗した場合は、メモリまたは反復回数を下げて再試行することを推奨します。ブラウザが WebAssembly に対応していない場合は直接エラーを表示し、パスワードをサーバーへ送信することはありません。
利用シーン
- 新規プロジェクトでパスワードハッシュアルゴリズムと適切なパラメータを選定する。
- MD5、SHA、bcrypt から Argon2 へ移行する前にパラメータを評価する。
- 本番環境で使用されている既存 PHC ハッシュの実際のパラメータ強度を確認する。
- メモリ負荷型パスワードハッシュの特性を研修や授業で説明する。
プライバシーとデータセキュリティ
パスワードハッシュは不可逆です。このツールは計算、検証、パラメータ解析のみを行い、復号機能は提供しません。すべての計算はブラウザ内の WebAssembly でローカル実行されます。パスワードやハッシュがサーバーへ送信・保存されることはありません。ローカルエンジンを利用できない場合は直接エラーを表示し、サーバー側で代替計算を行うことはありません。
Argon2 のパスワードハッシュをオンラインで生成・検証・解析
- 3種類のバリアントに対応:Argon2id はパスワード保存に推奨、Argon2i はサイドチャネル攻撃対策向け、Argon2d は一般的なパスワード保存には非推奨
- 3種類のプリセット:推奨 64MB t=3 p=2、高セキュリティ 128MB t=3 p=4、低リソース 32MB t=2 p=1。完全なカスタマイズにも対応
- パラメータ範囲を検証:メモリ 1〜1024MB、反復 1〜100、並列度 1〜16。256MB を超えるとブラウザのメモリ不足の可能性を警告
- 標準 PHC 形式のハッシュを出力し、そのままデータベースに保存可能
- 検証モードではハッシュに保存されたパラメータで再計算して比較し、解析モードではアルゴリズム、バージョン、メモリ、反復、並列度、Salt、ハッシュを表示
- 性能ベンチマークで平均処理時間と最適化の推奨事項を提示し、対象サーバーに適したパラメータ選定を支援