真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

PHP的password_hash功能介紹

password_hash

目前成都創(chuàng)新互聯(lián)已為上千多家的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬空間、網(wǎng)站托管、服務(wù)器托管、企業(yè)網(wǎng)站設(shè)計、東興網(wǎng)站維護等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

傳統(tǒng)的用戶名和密碼都采用加鹽的方式存儲加密信息,鹽值也需要存儲。

自PHP5.5.0之后,新增加了密碼散列算法函數(shù)(password_hash),password_hash() 使用足夠強度的單向散列算法創(chuàng)建密碼的散列(hash)。 password_hash() 兼容 crypt()。 所以, crypt() 創(chuàng)建的密碼散列也可用于 password_hash()。

說明

password_hash不需要再單獨存儲鹽值,而且每次加密的值都不一樣,我們只需要存儲加密字符串,驗證時用password_verify()方法即可得出結(jié)果!

當(dāng)前支持的算法:

PASSWORD_DEFAULT - 使用 bcrypt 算法 (PHP 5.5.0 默認)。 注意,該常量會隨著 PHP 加入更新更高強度的算法而改變。 所以,使用此常量生成結(jié)果的長度將在未來有變化。 因此,數(shù)據(jù)庫里儲存結(jié)果的列可超過60個字符(最好是255個字符)。

PASSWORD_BCRYPT - 使用 CRYPT_BLOWFISH 算法創(chuàng)建散列。 這會產(chǎn)生兼容使用 "$2y$" 的 crypt()。 結(jié)果將會是 60 個字符的字符串, 或者在失敗時返回 FALSE。

PASSWORD_ARGON2I - 使用 Argon2 散列算法創(chuàng)建散列。

返回值:

返回散列后的密碼, 或者在失敗時返回 FALSE。

使用的算法、cost 和鹽值作為散列的一部分返回。所以驗證散列值的所有信息都已經(jīng)包含在內(nèi)。 這使 password_verify() 函數(shù)驗證的時候,不需要額外儲存鹽值或者算法的信息。

/**
 * 我們想要使用默認算法散列密碼
 * 當(dāng)前是 BCRYPT,并會產(chǎn)生 60 個字符的結(jié)果。
 *
 * 請注意,隨時間推移,默認算法可能會有變化,
 * 所以需要儲存的空間能夠超過 60 字(255字不錯)
 */
 
 
password_hash("rasmuslerdorf", PASSWORD_DEFAULT);
 
輸出類似結(jié)果:
$2y$10$.vGA1O9wmRjrwAVXD98HNOgsNpDczlqm3Jq7KnEd1rVAGv3Fykk1a

驗證

$inputValue = '123456'; //用戶輸入的密碼
if(password_verify( $inputValue, '數(shù)據(jù)庫存儲的密碼')){
    //如果為真,則驗證成功
}
 
輸出:
True  或 False

以上就是詳解PHP中password_hash的功能的詳細內(nèi)容,更多請關(guān)注創(chuàng)新互聯(lián)其它相關(guān)文章!


當(dāng)前標題:PHP的password_hash功能介紹
文章來源:http://weahome.cn/article/ppiece.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部