2017-10-11 3 views
4

私が作っているノードアプリケーション用にBcryptを設定しようとしています。ここで誰かが親切に答えてくれることを願っている塩についていくつか質問があります。Salt Roundとは何ですか?塩はBcryptにどのように保存されていますか?

  • 「ラウンド」とは何ですか?たとえば、githubのドキュメント(https://github.com/kelektiv/node.bcrypt.js/)では、10の塩ラウンドを使用しています。それはどういう意味ですか?

  • Bcryptによって生成される塩は、常に同じですか?たとえば、ユーザーのハッシュされたパスワードをDBに保存する場合、パスワードをハッシュするために使用した塩はすべてのパスワードで同じですか?

  • 塩はどのように保存されていますか?潜在的な攻撃から安全ですか? "塩ラウンド" で

答えて

1
  1. 彼らは実際コスト要因を意味します。原価要素は、単一のBCryptハッシュを計算するのに必要な時間を制御します。コスト係数が高いほど、より多くのハッシュラウンドが実行されます。 teコスト係数を1増加させると必要な時間が2倍になります。より多くの時間が必要になると、ブルートフォースが難しくなります。
  2. 塩はランダムな値であり、計算ごとに異なる必要があるため、同じパスワードであっても結果はほとんど同じにならないはずです。
  3. 通常、塩は結果として得られるハッシュ文字列に可読形式で含まれます。したがって、ハッシュ文字列を保存すると、塩も保存されます。詳細はanswerをご覧ください。
関連する問題