PHP Bcrypt 是一個用于散列密碼的庫,它提供了一個簡單的方法來存儲和驗證密碼。要使用 PHP Bcrypt 管理密碼,請遵循以下步驟:
確保已安裝 PHP 7.2 或更高版本,因為 Bcrypt 需要這些版本才能正常工作。
使用 password_hash()
函數對密碼進行散列。這個函數接受兩個參數:要散列的密碼和要使用的算法。對于 Bcrypt,您應該使用 PASSWORD_BCRYPT
常量作為算法。例如:
$password = 'your_desired_password';
$hashed_password = password_hash($password, PASSWORD_BCRYPT);
$username = 'your_username';
$email = 'your_email@example.com';
// Insert the hashed password into the database
$sql = "INSERT INTO users (username, email, password) VALUES (?, ?, ?)";
$stmt = $conn->prepare($sql);
$stmt->bind_param('sss', $username, $email, $hashed_password);
$stmt->execute();
password_verify()
函數。這個函數接受兩個參數:要驗證的密碼和存儲在數據庫中的散列密碼。例如:$input_password = 'user_input_password';
$stored_hashed_password = 'the_hashed_password_from_database';
if (password_verify($input_password, $stored_hashed_password)) {
echo 'Password is correct!';
} else {
echo 'Password is incorrect.';
}
password_hash()
函數對新密碼進行散列,然后將新的散列密碼存儲在數據庫中。例如:$new_password = 'new_desired_password';
$new_hashed_password = password_hash($new_password, PASSWORD_BCRYPT);
// Update the hashed password in the database
$sql = "UPDATE users SET password = ? WHERE username = ?";
$stmt = $conn->prepare($sql);
$stmt->bind_param('ss', $new_hashed_password, $username);
$stmt->execute();
通過遵循這些步驟,您可以使用 PHP Bcrypt 管理密碼,確保用戶密碼的安全存儲和驗證。