ガイド

bcryptハッシュを生成する方法

パスワードとコストラウンド数を入力すると、bcryptハッシュを生成できます。パスワードを省略した場合は空の値として処理され、ラウンド数を省略すると12が使われます。

ツール Bcryptハッシュ生成ツール

bcryptハッシュ生成の基本

bcryptは、パスワードからハッシュを生成するための方式です。このツールでは、パスワードを入力し、コストラウンド数を指定してbcryptハッシュを作成できます。パスワードを省略した場合の動作も決まっているため、入力前に結果の条件を確認しておくと扱いやすくなります。

入力してハッシュを生成する手順

  1. パスワード欄に、ハッシュ化したい文字列を入力します。入力は省略できますが、その場合は空の文字列として扱われます。
  2. コストラウンド欄に値を入力します。省略時は12です。空でないパスワードを使う場合、入力値は整数に変換され、10から15までの範囲に収められてから生成されます。
  3. 生成を実行し、表示されたハッシュとソルトを確認します。空でないパスワードでは、パスワードがUTF-8として扱われ、新しいソルトからbcryptハッシュが作られます。
  4. 必要なら、元のパスワードを使ってbcryptの照合処理で生成結果を確認します。パスワードそのものではなく、利用目的に応じて生成されたハッシュを扱ってください。

結果の見方と注意点

同じパスワードと同じコストラウンド数を使っても、毎回同じハッシュになるとは限りません。生成のたびに新しいソルトが作られるためです。したがって、文字列の一致だけで結果を判断せず、元のパスワードを使ったbcrypt照合で確認します。

パスワードを空にした場合は例外的に計算が成功し、bcryptに関連付けられた空のハッシュ値とソルト値が返ります。空でないパスワードでラウンド数の変換やbcrypt生成に失敗すると、成功したハッシュではなく失敗として扱われます。

使用例

日本語を含むパスワードをbcryptでハッシュ化し、生成された値が元のパスワードで照合できるか確認します。

パスワード欄に「朝の記録2025」を入力し、コストラウンド欄に12を指定して生成します。表示されたハッシュを、元の文字列を使うbcrypt照合で確認します。

生成後にbcryptハッシュとソルトの値が表示されます。同じ入力を再び使っても、ソルトが新しく作られるためハッシュが異なる場合があります。

制限事項

  • 確認されている機能はbcryptハッシュの生成です。パスワードの復元や強度評価、総当たり、復号を行う機能としては扱えません。

よくある間違い

  • ラウンド数を整数に変換できない値にしたり、生成処理でTypeErrorまたはValueErrorが発生したりすると失敗になります。整数として解釈できる値を入力し、空でないパスワードでは10から15の範囲で指定して再実行してください。

よくある質問

パスワードを入力しなくても生成できますか?

はい。ただし、パスワードを空にした場合は、空のハッシュ値とソルト値が返る別の結果になります。

同じパスワードなら毎回同じハッシュになりますか?

同じになるとは限りません。新しいソルトが生成されるため、同じパスワードとラウンド数でも異なるハッシュになることがあります。

コストラウンド数を省略するとどうなりますか?

省略時は12です。空でないパスワードでは、入力された値が整数に変換され、10から15の範囲に収められてから生成されます。

ツール

Bcryptハッシュ生成ツール