PDO とパスワード ハッシュを使用してコード セキュリティを強化する
PHP コードを保護するには、パスワード ハッシュ技術を利用することが重要です。セキュリティが不足している MD5 のような脆弱な方法に依存することは避けてください。パスワード ハッシュは、元のパスワードが侵害されるのを防ぐ、元に戻せない一意の値を生成することでパスワードを保護します。
提供されたコードでは、パスワード ハッシュは次のように実装できます。以下:
ログイン:
$dbh = new PDO(...); $sql = "SELECT * FROM users WHERE username = :u AND password = :p"; $stmt = $dbh->prepare($sql); $stmt->bindParam(":u", $_POST['username']); $stmt->bindParam(":p", password_hash($_POST['password'], PASSWORD_DEFAULT)); $stmt->execute();
登録:
$dbh = new PDO(...); $username = $_POST["username"]; $email = $_POST["email"]; $password = password_hash($_POST["password"], PASSWORD_DEFAULT); $stmt = $dbh->prepare("INSERT INTO users (username, email, password) VALUES (?, ?, ?)"); $stmt->bindParam(1, $username); $stmt->bindParam(2, $email); $stmt->bindParam(3, $password); $stmt->execute();
注:以前の PHP との互換性を確保するために、「password-compat」や「phpass」などのライブラリを必ず使用してください。 5.5 より前のバージョン
以上がPDO とパスワード ハッシュはどのように PHP アプリケーションのセキュリティを向上させることができますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。