ホームページ >データベース >mysql チュートリアル >安全なストレージのためにハッシュする前に、なぜパスワードをクレンジングしてはいけないのですか?
PHPでのパスワードストレージを保護する:なぜプリハッシュクレンジングをスキップするのか? PHP開発者は、データベースに保存する前に、パスワードを「クリーニング」する(
、、またはescape_string()
などの関数を使用)を検討することがよくあります。 ただし、このプラクティスは不要であり、ハッシュされたパスワードを処理する際に潜在的に有害です。
htmlspecialchars()
addslashes()
プレハッシュクレンジングのリスク
パスワード前のクレンジングは、セキュリティを改善することなく複雑さを追加します。 ハッシュされたパスワードはSQLインジェクションの影響を受けないため、これらのクレンジングステップはセキュリティの利点を提供しません。
ハッシュ:パスワードセキュリティの礎
パスワードハッシュパスワードをデータベースストレージに適した暗号化された文字列に変換します。ハッシュ関数はすべての入力バイトを等しく扱い、前処理を冗長にします。 堅牢なパスワード保護
無制限のパスワード作成(長さ、文字タイプ)を許可すると、ハッシュプロセス自体がパスワードコンテンツに関係なく、十分なセキュリティを提供します。
サニタイゼーションのマイナスの影響
トリミング、HTMLエンコード、またはパスワードの逃亡は、
を使用してパスワードを検証する際に矛盾を引き起こす可能性があります。 検証の精度を維持するには、これらの同じ方法をユーザー入力に一貫して適用し、不必要な複雑さを追加する必要があります。概要
事前にハッシュパスワードクレンジングを省略します。 パスワードハッシュだけで、パスワードを保存したパスワードを効果的に保護し、前処理の必要性と潜在的な問題を排除します。
以上が安全なストレージのためにハッシュする前に、なぜパスワードをクレンジングしてはいけないのですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。