加Salt可以一定程度上解決這一問題。所謂加Salt方法,就是加點“佐料”。其基本想 " /> 久久精品视频在线观看,成人免费一区二区,一级毛片aaa

四虎精品视频-四虎精品成人免费网站-四虎黄色网-四虎国产视频-国产免费91-国产蜜臀97一区二区三区

深入密碼加salt原理的分析

我們知道,如果直接對密碼進行散列,那么黑客可以對通過獲得這個密碼散列值,然后通過查散列值字典(例如MD5密碼破解網(wǎng)站),得到某用戶的密碼。

加Salt可以一定程度上解決這一問題。所謂加Salt方法,就是加點“佐料”。其基本想法是這樣的:當(dāng)用戶首次提供密碼時(通常是注冊時),由系統(tǒng)自動往這個密碼里撒一些“佐料”,然后再散列。而當(dāng)用戶登錄時,系統(tǒng)為用戶提供的代碼撒上同樣的“佐料”,然后散列,再比較散列值,已確定密碼是否正確。

這里的“佐料”被稱作“Salt值”,這個值是由系統(tǒng)隨機生成的,并且只有系統(tǒng)知道。這樣,即便兩個用戶使用了同一個密碼,由于系統(tǒng)為它們生成的salt值不同,他們的散列值也是不同的。即便黑客可以通過自己的密碼和自己生成的散列值來找具有特定密碼的用戶,但這個幾率太小了(密碼和salt值都得和黑客使用的一樣才行)。

下面以php示例,講解md5($pass.$salt)加密函數(shù)。
復(fù)制代碼 代碼如下:
<?php
function hash($a) {
    $salt=”Random_KUGBJVY”;  //定義一個salt值,程序員規(guī)定下來的隨機字符串
    $b=$a.$salt;  //把密碼和salt連接
    $b=md5($b);  //執(zhí)行MD5散列
    return $b;  //返回散列   
}
?>

調(diào)用方式:$new_password=hash($_POST[password]);   //這里接受表單提交值,并進行加密
 
下面詳細介紹一下加Salt散列的過程。介紹之前先強調(diào)一點,前面說過,驗證密碼時要使用和最初散列密碼時使用“相同的”佐料。所以Salt值是要存放在數(shù)據(jù)庫里的。

用戶注冊時,

用戶輸入【賬號】和【密碼】(以及其他用戶信息);系統(tǒng)為用戶生成【Salt值】;系統(tǒng)將【Salt值】和【用戶密碼】連接到一起;對連接后的值進行散列,得到【Hash值】;將【Hash值1】和【Salt值】分別放到數(shù)據(jù)庫中。
用戶登錄時,

用戶輸入【賬號】和【密碼】;系統(tǒng)通過用戶名找到與之對應(yīng)的【Hash值】和【Salt值】;系統(tǒng)將【Salt值】和【用戶輸入的密碼】連接到一起;對連接后的值進行散列,得到【Hash值2】(注意是即時運算出來的值);比較【Hash值1】和【Hash值2】是否相等,相等則表示密碼正確,否則表示密碼錯誤。
有時候,為了減輕開發(fā)壓力,程序員會統(tǒng)一使用一個salt值(儲存在某個地方),而不是每個用戶都生成私有的salt值。

php技術(shù)深入密碼加salt原理的分析,轉(zhuǎn)載需保留來源!

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

主站蜘蛛池模板: 电影痴汉电车| 陈颖芝三级| 意大利丁导医务员| 双生姐妹| 秀场视频高清完整版| 查隆拉·诺山荣| 李保田最经典十部电影| 妇检被男医生摸到喷水| 风筝 电影| 秀场视频高清完整版| 公交车上的那些事| 美女在线| 张美仁爱| 林峰电影| 挨打的作文| 张柏芝演的电视剧| 电视剧热播剧大全| 婆媳的战国时代 电视剧| 琅琊榜3第三部免费播放| 用力快点| 韵达快递收费标准| 桜木郁| 王宝强盲井| 金太狼的幸福生活演员表_| 陈颖芝三级| 大时代电视剧剧情介绍| 拳霸3 2010 托尼·贾| 电影鸭之一族| 你的名字豆瓣| 恶魔之吻1993完整版在线观看| 白洁教师| 加藤视频下载| 北京卫视手机直播| 出轨幻想| 金首露| 吻胸摸激情床激烈视频| 我在等你泰剧剧情介绍| 抖音网站| 博人传青年篇动漫在线观看免费| 陆妍淇个人资料| 顺风|