透過密碼雜湊和 PDO 增強資料庫安全性
保護敏感資訊(例如密碼)在現代軟體開發中至關重要。 MD5 等傳統方法不再安全,因此需要密碼雜湊等強大的解決方案。
使用 PDO 將密碼雜湊合併到程式碼中是一個簡單的過程,可以顯著增強安全性。它們不是以純文字形式儲存密碼,而是轉換為安全雜湊值,使它們幾乎無法解密。
以下是在PHP 程式碼中實作密碼雜湊的方法:
登入腳本:
$dbh = new PDO(...); $sql = "SELECT * FROM users WHERE username = :u"; $query = $dbh->prepare($sql); $params = array(":u" => $_POST['username']); $query->execute($params); $results = $query->fetchAll(); if (count($results) > 0) { $firstrow = $results[0]; if (password_verify($_POST['password'], $firstrow['password'])) { // 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); // Hash password $stmt = $dbh->prepare("insert into users set username=?, email=?, password=?"); $stmt->execute([$username, $email, $hash]);
註冊腳本:
password_compat 或phpass等庫可以簡化密碼哈希,確保正確的鹽生成並減少安全漏洞。 透過將密碼雜湊整合到 PDO 程式碼中,您可以將顯著增強應用程式的安全性,保護使用者憑證免遭未經授權的存取。以上是PDO 和密碼雜湊如何增強資料庫安全性?的詳細內容。更多資訊請關注PHP中文網其他相關文章!