首頁 >資料庫 >mysql教程 >如何使用「password_hash」和「password_verify」在 PHP 5.5 中安全地儲存和驗證使用者密碼?

如何使用「password_hash」和「password_verify」在 PHP 5.5 中安全地儲存和驗證使用者密碼?

Susan Sarandon
Susan Sarandon原創
2024-12-13 11:49:11911瀏覽

How Can I Securely Store and Verify User Passwords in PHP 5.5 Using `password_hash` and `password_verify`?

有效使用PHP 5.5的password_hash和password_verify

在考慮使用者密碼安全性的同時,出現瞭如何合適的儲存方法的問題PHP 5.5 中的密碼。隨 PHP 5.5 引入並隨後在 PHP 5.3.7 中實作的 password_hash 函數,成為密碼管理的安全選項。

與問題中提出的初始實現相反,該實現將鹽與鹽分開存儲hash,推薦的方法是將 hash 和 salt 聯合存儲。 password_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
}

此方法可驗證確保同時使用雜湊和鹽,從而增強密碼儲存的安全性。

以上是如何使用「password_hash」和「password_verify」在 PHP 5.5 中安全地儲存和驗證使用者密碼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn