PHP 5.5のpassword_hashとpassword_verifyを効果的に使用する
ユーザーパスワードのセキュリティを考慮すると、適切な保存方法について疑問が生じます。 PHP 5.5 のパスワード。 PHP 5.5 で導入され、その後 PHP 5.3.7 に実装されたpassword_hash 関数は、パスワード管理の安全なオプションとして登場しました。
質問で示された初期実装とは対照的に、ソルトとは別にソルトを保存していました。ハッシュの場合、推奨されるアプローチは、ハッシュとソルトの両方を組み合わせて保存することです。 passwd_hash 関数は、両方の要素をカプセル化する文字列を生成し、個別のストレージの必要性を排除します。
password_hash を使用したパスワードの保存
password_hash を使用してユーザーのパスワードを保存する正しい方法は次のとおりです:
$hashAndSalt = password_hash($password, PASSWORD_BCRYPT); // Store $hashAndSalt in database against the user
検証中パスワードとpassword_verify
ユーザーが入力したパスワードを検証するには:
// Fetch $hashAndSalt from database if (password_verify($password, $hashAndSalt)) { // Verified }
このアプローチにより、ハッシュとソルトの両方が使用されることが保証され、パスワード ストレージのセキュリティが強化されます。
以上がPHP 5.5 で「password_hash」と「password_verify」を使用してユーザー パスワードを安全に保存および検証するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。