哈希密碼為什么是PHP比md5更安全的加密方式?很多新手對此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

傳統(tǒng)加密方式:
md5(密碼+鹽值);
$passwordString='your password';//你的密碼 $salt="your salt value";//鹽值,增加復(fù)雜度(隨機(jī)字串) $md5Password=md5($passwordString.$salt);
從理論上來說,md5不可逆,算是一種比較安全的加密方式。但是我要提醒的是,md5早在04年的時(shí)候就被中國人破解。一旦被人拖庫的化,密碼泄漏的可能性極大。
現(xiàn)在推薦一種新的處理方式:
密碼散列算法函數(shù)
password_get_info — 返回指定哈希(hash)的相關(guān)信息
password_hash — 創(chuàng)建密碼的哈希(hash)
password_needs_rehash — Checks if the given hash matches the given options
password_verify — 驗(yàn)證密碼是否和哈希匹配
PHP5.5引入了Password Hashing函數(shù),內(nèi)核自帶無需安裝擴(kuò)展。在PHP5.4下測試了下也可是可以的,使用前最好確認(rèn)一下你當(dāng)前的環(huán)境是否支持這些函數(shù)。
Password Hashing主要提供了4個(gè)函數(shù)
//查看哈希值的相關(guān)信息 array password_get_info (string $hash) //創(chuàng)建hash密碼 string password_hash(string $password , integer $algo [, array $options ]) //判斷hash密碼是否特定選項(xiàng)、算法所創(chuàng)建 boolean password_needs_rehash (string $hash , integer $algo [, array $options ] boolean password_verify (string $password , string $hash) //驗(yàn)證密碼
代碼演示:
$password = 'password123456';//原始密碼
//使用BCRYPT算法加密密碼
$hash_password = password_hash($password, PASSWORD_BCRYPT);
if (password_verify($password , $hash_password)){
echo "密碼匹配";
}else{
echo "密碼錯(cuò)誤";
}重要特征:
通過password_hash加密后的密碼,使用字典方式很難破解,因?yàn)槊看紊傻拿艽a都是不一樣的。破解這種加密只能采用暴力破解。
最后提醒:
加密方法再好,原始密碼設(shè)置的過于簡單都容易被破解,設(shè)置復(fù)雜的密碼才是王道。
看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。
當(dāng)前名稱:哈希密碼為什么是PHP比md5更安全的加密方式-創(chuàng)新互聯(lián)
轉(zhuǎn)載源于:http://www.chinadenli.net/article42/djdoec.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化、外貿(mào)網(wǎng)站建設(shè)、定制網(wǎng)站、全網(wǎng)營銷推廣、品牌網(wǎng)站設(shè)計(jì)、做網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容