bcrypt・scrypt・Argon2 のパスワードハッシュをブラウザ内で生成・検証します。OWASP の推奨値を下回る設定には警告を表示し、検証では Django の PBKDF2 ハッシュも読み取れます。
「ハッシュを生成」を選び、「アルゴリズム」で bcrypt・scrypt・Argon2 のいずれかを選びます。
パラメーター(bcrypt の「コスト」、scrypt の N・r・p、Argon2 のバリアント・「メモリ」・「反復回数」・「並列度」)を調整し、警告が出ていないか確認します。
「パスワード」を入力して「ハッシュを生成」を押し、ハッシュ文字列をコピーします。scrypt と Argon2 では生のハッシュとソルトも表示されます。
パスワードを確認するには「ハッシュを検証」に切り替え(または「このハッシュを検証」を押し)、「ハッシュ文字列」を貼り付けて「確認するパスワード」を入力し、「検証」を押します。
いいえ。ハッシュ計算は端末上のバックグラウンド処理で行われ、パスワードもハッシュも保存・送信されません。
毎回新しい 16 バイトのランダムなソルトを使うためです(bcrypt は自前でソルトを生成します)。ソルトはハッシュ文字列に含まれているので、検証は問題なく通ります。既知のハッシュを再現したいときだけ「指定」のソルトを使ってください。
新しいシステムには Argon2id が推奨で、OWASP の最低ラインは m = 19 MiB、t = 2、p = 1 です。scrypt は N = 2^17、r = 8、p = 1、bcrypt はコスト 10 以上が推奨です。これを下回るとツールが警告します。
bcrypt($2a$、$2b$、$2y$)、Argon2id/2i/2d の PHC 文字列、scrypt($scrypt$ と $s0$)、Django の pbkdf2_sha256 / pbkdf2_sha1 です。Linux の crypt ハッシュ($1$、$5$、$6$、$y$)、Apache の $apr1$、単純な MD5/SHA ダイジェストは判別はできますが検証には対応していません。
bcrypt はパスワードの先頭 72 バイトしか使わず、残りは無視します。その場合はツールが警告します。Argon2 と scrypt にはこの制限はありません。
できません。入力したパスワードが一致するかを確かめるだけです。パスワードハッシュは一方向で、わざと時間がかかるように作られているため計算に少し待ち時間があります。タイマーを見ながら待つか、「キャンセル」で中止できます。