コンテンツへスキップ

Bcrypt検証ツール

パスワードがbcryptハッシュと一致するか確認します。パスワードと$2a$、$2b$、または$2y$ハッシュを貼り付けると、ツールが文字列からソルトとコストを読み取り、ハッシュを再計算して、一致するかどうかを返します。開発者がログインの問題をデバッグしたり、データベース移行を確認したり、PHP、Node.js、Pythonのハッシュをテストしたりするのに役立ちます。コストが12を超えるハッシュは拒否され、パスワードが表示されることはありません。

リセット

よくある質問

bcryptの検証はどのように行われますか?

ツールはハッシュ文字列からバージョン、コスト、ソルトを読み取り、同じ設定でパスワードをハッシュ化して、結果を保存済みのハッシュと比較します。完全に一致すれば「一致」、それ以外は「不一致」と表示されます。

どのハッシュ形式に対応していますか?

このツールは、$2a$、$2b$、$2y$の接頭辞、2桁のコスト、53文字のソルトとハッシュを含むモジュラー暗号形式に対応しています。対象はPHP password_hash、Node.js bcryptとbcryptjs、Python bcrypt、Spring Securityです。

ハッシュが拒否されるのはなぜですか?

ハッシュは正確に60文字で、形式は$2b$10$の後にbcryptの文字セットからなる53文字が続く必要があります。データベースのカラムで途中までしか保存されていないか、引用符で囲まれていないか確認してください。サービスの処理速度を保つため、コストが12を超えるハッシュは拒否されます。

既知の例を試せますか?

公開されているjBCryptのテストベクトル$2a$06$If6bvum7DFjUnE9p2uDeDu0YHzrHM6tf.iqN8.yx.jNN1ILEf7h0iは、パスワードabcに対応します。両方を入力すると「一致」と表示され、それ以外のパスワードでは「不一致」と表示されます。

コスト上限が12なのはなぜですか?

ハッシュの検証には作成と同じだけのコストがかかり、コストが1段階上がるごとに処理時間は2倍になります。12を超えると数秒かかることがあるため、サーバーを占有しないようツールで拒否しています。

Verifierはパスワードを表示または保存しますか?

いいえ。レスポンスに含まれるのはハッシュと判定結果のみで、パスワードは含まれません。ログへの記録や保存も行われません。

パスワードの最大長はありますか?

bcryptが読み取るのはパスワードの先頭72バイトまでです。このツールは切り詰めずに、それより長いパスワードを拒否します。ハッシュ作成時にシステムが長いパスワードを切り詰めていた場合は、先頭72バイトだけを入力してください。

$2a$、$2b$、$2y$の違いは何ですか?

これらは、古い実装のバグに対する修正を示しています。$2y$はPHPのcrypt_blowfishの修正に由来し、$2b$は長いパスワードに関するOpenBSDの修正に由来します。72バイト以下の有効なパスワードでは同じハッシュが生成されるため、このツールは3種類すべてを検証できます。

ここで他のアルゴリズムのハッシュも検証できますか?

いいえ。このツールが確認できるのはbcryptハッシュのみです。$argon2で始まる文字列にはArgon2 Verifierを使ってください。

新しく作成したbcryptハッシュが保存済みのものと一致しないのはなぜですか?

bcryptハッシュには毎回新しいランダムなソルトが使われるため、同じパスワードでも生成されるハッシュ文字列は異なります。そのため、検証では2つのハッシュを比較せず、保存済みのソルトを使って再計算します。

OneClick Proについて

OneClick Proは、日々の作業に役立つ150以上のウェブツールを集めた無料コレクションです。画像や単位の変換、コードの整形と検証、ドメインやSEOの確認、テキスト、日付、数値の処理などに利用できます。すべてのツールは登録やサブスクリプションなしで使えます。入力した内容は結果の計算にのみ使用され、保存されることはありません。単発の作業に使える便利なツールボックスとして、または毎日使うツールをブックマークしてご活用ください。