首頁 > 後端開發 > php教程 > 使用 PHP 的「password_hash()」時是否應該單獨儲存鹽?

使用 PHP 的「password_hash()」時是否應該單獨儲存鹽?

Barbara Streisand
發布: 2024-12-29 06:23:10
原創
926 人瀏覽過

Should I Store the Salt Separately When Using PHP's `password_hash()`?

使用PHP 5.5的password_hash和password_verify函數進行安全密碼存儲

問題:

當使用PHP 5.5的password_hash()函數來儲存使用者密碼,鹽是否應該與雜湊分開儲存?

答案:

不,將鹽與雜湊分開存放是不正確的。 password_hash() 函數產生一個包含雜湊值和鹽值的字串。這是正確的使用方法:

$hashAndSalt = password_hash($password, PASSWORD_BCRYPT);
// Insert $hashAndSalt into database against user
登入後複製

驗證密碼:

if (password_verify($password, $hashAndSalt)) {
    // Verified
}
登入後複製

這種方法提供了最佳的安全性,因為它可以防止攻擊者訪問鹽並破壞哈希值。另外,建議使用 mysqli 而不是 ext/mysql,後者在 PHP 5.5 中已棄用,並注意 SQL 注入漏洞。

以上是使用 PHP 的「password_hash()」時是否應該單獨儲存鹽?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板