PHP でのソルトを使用した安全なパスワード ハッシュ
質問:
- とはMD5 の制限と速度とセキュリティのバランスが必要ですか?
答え:
ハッシュメカニズムとソルト
- PHP では、bcrypt が推奨されるパスワード ハッシュ メカニズムです。これは、blowfish と呼ばれる計算量の多い関数を使用しており、パスワードのブルート フォース攻撃を困難にしています。
- ソルトは、ハッシュ化する前にパスワードに追加されるランダムな値であり、同一のパスワードが同じハッシュを生成するのを防ぎます。これにより、レインボー テーブル攻撃に対するセキュリティが向上します。
- 優れたソルトはエントロピーが高く、一意性と予測不可能性が保証されます。
ハッシュ関数の選択
- Bcrypt は最も安全なオプションです。
- 場合bcrypt は使用できません。scrypt、SHA2 ハッシュを使用した PBKDF2、または PHPASS (レガシー オプション) を使用してください。
ベスト プラクティス
- パスワード文字の制限を避けるか、 length.
- 適切な最小パスワード長を強制する(例: 10 文字)。
- パスワードのエントロピーを増やすには、大文字と小文字、数字、記号の組み合わせが必要です。
- データベースの侵害後にパスワードをリセットします。
追加考慮事項
- 複数のハッシュ化されたパスワードを保存する (異なるアルゴリズムを使用するなど) ことは、セキュリティ上の大きな利点がなく複雑さが増すため、推奨されません。
- bcrypt で hash() を使用することは避けてください。セキュリティを弱める不正な文字の導入を防ぐために、16 進または Base64 エンコードが必要なためです。
以上が速度とセキュリティのバランスをとりながら、PHP でパスワードを安全にハッシュする方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。