2016-07-24 113 views
0

我已閱讀手冊中的PHP函數password_hash()使用隨機鹽散列密碼。如何讓這個隨機鹽保存到數據庫?如何從PHP中的password_hash獲取隨機鹽?

+3

爲什麼你需要這種鹽? –

+4

salt是生成的散列的一部分,並且每次都會隨機生成。你不應該單獨保存它,你不應該修改/修復它。不要管它!按照文檔中的說明使用'password_hash'。 – ceejayoz

回答

2

當您運行password_hash時,鹽會自動隨機生成。每次都會有所不同,即使是相同的密碼。 這很好!the docs

enter image description here

你不應該手動設置或以任何方式修改鹽。只需將整個散列保存在數據庫中,並讓PHP處理它。 password_hashpassword_verify,默認情況下,以符合行業最佳實踐的方式使用行業標準bcrypt算法。修改該行爲可能會使您的網站減少的安全性。

1

這是很簡單的,看看這裏:http://php.net/manual/en/faq.passwords.php#faq.password.storing-salts

但實際上你不應該需要它,因爲password_verify()並不需要手動的鹽。

+0

如果你要參考PHP.net,至少使用它的英文版http://php.net/manual/en/faq.passwords.php#faq.password.storing-salts - 編輯:這根據你原來的帖子http://stackoverflow.com/revisions/38553031/1 –

+0

不是我downvote btw –

+0

@弗雷德 - ii - 你說得對。我沒有注意到我在德國的網站上。 – alve89