# Argon2検証ツール

パスワードがArgon2ハッシュと一致するか確認します。パスワードと、$argon2id$v=19$m=65536,t=4,p=1$のようなPHC文字列を貼り付けると、バリアント、メモリ、反復回数、レーン数、ソルトを読み取り、ハッシュを再計算して、一致するかどうかを回答します。Argon2id、Argon2i、Argon2dのバージョン19に対応し、最大64 MiB、4回の反復、8レーンまで利用できます。パスワードを表示することはありません。

## よくある質問

### Argon2の検証はどのように行われますか？

このツールはPHC文字列を解析し、バリアント、バージョン、メモリ、反復回数、並列度、ソルトを取得します。次に、その設定を正確に使ってパスワードをハッシュ化し、結果を保存済みのハッシュと比較します。

### どのハッシュを確認できますか？

このツールでは、PHC文字列形式のバージョン19（0x13）のArgon2id、Argon2i、Argon2dのハッシュを確認できます。これらはPHP password_hash、libsodium、argon2-cffi、Node.js argon2パッケージ、このサイトのArgon2 Generatorで生成できます。

### 利用上限はありますか？

ハッシュで使用できるメモリは最大64 MiB（m=65536）、反復回数は4回、レーン数は8です。この上限なら、PHPのデフォルト設定m=65536,t=4,p=1とargon2-cffiのデフォルト設定m=65536,t=3,p=4に対応できます。上限を超える設定のハッシュは、理由を説明して拒否されます。

### 公開されているサンプルで試せますか？

リファレンス実装のテスト用ハッシュ$argon2id$v=19$m=65536,t=2,p=1$c29tZXNhbHQ$CTFhFdXPJO1aFaMaO6Mm5c8y7cJHAph8ArZWb2GRPPcは、ソルトがsomesalt、パスワードがpasswordの場合のものです。両方を入力すると、一致と表示されます。

### ハッシュが無効として拒否されるのはなぜですか？

文字列は$argon2id$、$argon2i$、$argon2d$のいずれかで始まり、続けてv=19、m、t、pの順にカンマで区切られた値、最後にBase64ソルトとハッシュを含む必要があります。空白、引用符、または一部が欠けた状態でコピーされたハッシュは拒否されます。v=部分のない古いバージョン16のハッシュには対応していません。

### パスワードは秘密に保たれますか？

はい。レスポンスに含まれるのは、回答と入力したハッシュだけで、パスワードは含まれません。何も保存・記録されません。

### 「不一致」と表示された場合、ハッシュが壊れているということですか？

通常は、末尾の空白や大文字・小文字の違いなど、パスワードが異なることを意味します。システムによっては、ハッシュ化の前にペッパーや秘密鍵を追加する場合もありますが、この検証ツールでは把握できません。

### 確認にはどのくらい時間がかかりますか？

確認にかかる処理時間はハッシュの作成と同程度で、通常、前述の上限内であれば1秒を大きく下回ります。そのため、非常に大きなメモリ設定は拒否されます。

### このツールはlibsodiumのハッシュに対応していますか？

はい。libsodiumのcrypto_pwhash_strはArgon2idのPHC文字列を書き出します。インタラクティブプリセットは64 MiBと2回の反復を使うため、ここで検証できますが、moderateとsensitiveのプリセットは64 MiBの上限を超えます。

### ここでbcryptハッシュを確認できますか？

いいえ。$2a$、$2b$、$2y$で始まるハッシュには、Bcrypt Verifierをお使いください。

ここに広告を掲載しませんか？

[メールでお問い合わせ](mailto:hi@dennn.is?subject=OneClick%20Pro%E3%81%A7%E3%81%AE%E5%BA%83%E5%91%8A%E6%8E%B2%E8%BC%89)

[広告 WordPress向けのエージェント対応プラグインスイート。](https://sleekwp.com/?ref=oneclickpro)
