Open futianshen opened 5 years ago
利用其不可逆的特性,將無窮多的字串輸入到 Hash Function 之後產生有限且長度相等的字串。 一個 Hash Function 好壞取決於 hash 碰撞的程度。
就算駭客成功入侵資料庫,取得的密碼的暗碼也難以解碼,因為 hash function 是單向輸出。
password_hash
password_verify
$register_password=password_hash($_POST["password"], PASSWORD_DEFAULT); password_verify($login_password, $register_password) // 如果驗證成功回傳1
如果要將轉換過的暗碼儲存在 MySQL 資料庫,在設計資料庫結構時,密碼的欄位長度必須超過 60 以上。
PHP: password_hash PHP: password_verify
Hash Function 的功能是什麽 ?
利用其不可逆的特性,將無窮多的字串輸入到 Hash Function 之後產生有限且長度相等的字串。 一個 Hash Function 好壞取決於 hash 碰撞的程度。
為什麼要使用 Hash Function 將明碼存為暗碼?
就算駭客成功入侵資料庫,取得的密碼的暗碼也難以解碼,因為 hash function 是單向輸出。
如何在 PHP 使用
password_hash
password_verify
轉換以及驗證密碼?注意事項
如果要將轉換過的暗碼儲存在 MySQL 資料庫,在設計資料庫結構時,密碼的欄位長度必須超過 60 以上。
參考資料
PHP: password_hash PHP: password_verify