国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

php實現(xiàn)密碼加密

2020-03-22 18:50:02
字體:
來源:轉載
供稿:網友
本文主要和大家分享php實現(xiàn)密碼加密的方法實例,由于快速的散列算法,所以不推薦使用md5這個函數(shù)獲得密碼,password_hash()使用了一個強的哈希算法,來產生足夠強的鹽值,并且會自動進行合適的輪次。password_hash()是crypt()的一個簡單封裝,并且完全與現(xiàn)有的密碼哈希兼容。所以推薦使用password_hash()。

創(chuàng)建密碼的哈希
string password_hash ( string $password , integer $algo [, array $options ] )
驗證密碼是否和哈希匹配
boolean password_verify ( string $password , string $hash )

例:

<?php$hash = password_hash("rasmuslerdorf", PASSWORD_DEFAULT);if (password_verify('rasmuslerdorf', $hash)) {    echo 'Password is valid!';} else {    echo 'Invalid password.';}
使用技巧說明:

創(chuàng)建密碼時不要自己設置鹽值

原因:強烈建議不要自己為這個函數(shù)生成鹽值(salt)。只要不設置,它會自動創(chuàng)建安全的鹽值。 就像以上提及的,在 PHP 7.0 提供 salt選項會導致廢棄(deprecation)警告。 未來的 PHP 發(fā)行版里,手動提供鹽值的功能可能會被刪掉。

在自己的服務器上做基準測試,調整 cost 參數(shù)直至函數(shù)時間開銷小于 100 毫秒(milliseconds)。

例:

<?php/** * 這個例子對服務器做了基準測試(benchmark),檢測服務器能承受多高的 cost * 在不明顯拖慢服務器的情況下可以設置最高的值 * 8-10 是個不錯的底線,在服務器夠快的情況下,越高越好。 * 以下代碼目標為  ≤ 100 毫秒(milliseconds), * 適合系統(tǒng)處理交互登錄。 */$timeTarget = 0.1; // 100 毫秒(milliseconds)  $cost = 8;do {     $cost++;     $start = microtime(true);    password_hash("test", PASSWORD_BCRYPT, ["cost" => $cost]);        $end = microtime(true);} while (($end - $start) < $timeTarget);echo "Appropriate Cost Found: " . $cost;

結果:

Appropriate Cost Found: 10

相關推薦:

php用戶密碼加密算法解析

PHP之密碼加密的幾種方式_php實例

php密碼加密速度較慢

以上就是php實現(xiàn)密碼加密的詳細內容,更多請關注 其它相關文章!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 葵青区| 益阳市| 阿鲁科尔沁旗| 如皋市| 忻城县| 邻水| 盐津县| 茂名市| 泸水县| 介休市| 上犹县| 平远县| 增城市| 大英县| 宜宾市| 南昌市| 新巴尔虎左旗| 垣曲县| 平定县| 麻栗坡县| 荣昌县| 津市市| 盘锦市| 章丘市| 铜川市| 和林格尔县| 梅河口市| 郧西县| 石阡县| 勐海县| 承德县| 海兴县| 丽江市| 通城县| 东兰县| 大庆市| 诸城市| 清镇市| 本溪| 长治县| 林口县|