PDO を使用したパスワード ハッシュによるコードの保護
コードのセキュリティを強化するには、PDO を使用したパスワード ハッシュの実装を検討する必要があります。 。この技術は、MD5 を使用する場合と比較して、より高いレベルの保護を提供します。
ログイン スクリプトでは、次のようにパスワード ハッシュを組み込むことができます:
$sql = "SELECT * FROM users WHERE username = :u"; $query = $dbh->prepare($sql); // prepare $params = array(":u" => $_POST['username']); $query->execute($params); // execute $results = $query->fetchAll(); // then fetch if (count($results) > 0) { $firstrow = $results[0]; $providedPassword = $_POST['password']; $hashedPasswordFromDB = $firstrow['password']; if (password_verify($providedPassword, $hashedPasswordFromDB)) { // Valid login } else { // Invalid password } } else { // Invalid username }
登録スクリプト:
$dbh = new PDO(...); $username = $_POST["username"]; $email = $_POST["email"]; $password = $_POST["password"]; $hash = password_hash($password, PASSWORD_DEFAULT); $stmt = $dbh->prepare("insert into users set username=?, email=?, password=?"); $result = $stmt->execute([$username, $email, $hash]);
パスワード ハッシュを利用すると、不正アクセスやデータ侵害からコードを効果的に保護できます。
以上がPDO パスワードのハッシュ化によりコードのセキュリティはどのように向上しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。