国产一级一区二区_segui88久久综合9999_97久久夜色精品国产_欧美色网一区二区

掃一掃
關(guān)注微信公眾號(hào)

使用MD5變換算法來(lái)防止窮舉破譯密碼
2007-01-18   

MD5是在Web應(yīng)用程序中最常用的密碼加密算法。由于MD5是不可逆的,因而經(jīng)過(guò)MD5計(jì)算得到后的密文,不能通過(guò)逆向算法得到原文。

回顧在Web應(yīng)用程序中使用MD5加密文本密碼的初衷,就是為了防止數(shù)據(jù)庫(kù)中保存的密碼不幸泄露后被直接獲得。但攻擊者不但擁有數(shù)據(jù)量巨大的密碼字典,而且建立了很多MD5原文/密文對(duì)照數(shù)據(jù)庫(kù),能快速地找到常用密碼的MD5密文,是破譯MD5密文的高效途徑。然而,MD5密文數(shù)據(jù)庫(kù)所使用的是最常規(guī)的MD5加密算法:原文-->MD5-->密文。因此,我們可以使用變換的MD5算法,使現(xiàn)成的MD5密文數(shù)據(jù)庫(kù)無(wú)所作為。

下面演示一些變換算法的例子,當(dāng)然,在其它的Web開發(fā)語(yǔ)言中,也大同小異,完全能得到相同的結(jié)果。

變換一:循環(huán)MD5

最容易理解的變換就是對(duì)一個(gè)密碼進(jìn)行多次的MD5運(yùn)算。自定義一個(gè)函數(shù),它接受$data和$times兩個(gè)形參,第一個(gè)是要加密的密碼,第二個(gè)是重復(fù)加密的次數(shù)。實(shí)現(xiàn)這種變換有兩種算法:

//迭代算法
function md5_1_1($data, $times = 32)
{
//循環(huán)使用MD5
for ($i = 0; $i < $times; $i++) {
$data = md5($data);
}
return $data;
}
//遞歸算法
function md5_1_2($data, $times = 32)
{
if ($times > 0) {
$data = md5($data);
$times--;
return md5_1_2($data, $times); //實(shí)現(xiàn)遞歸
} else {
return $data;
}
}
?>

變換二:密文分割MD5

盡管用戶的密碼是不確定的字符串,但是只要經(jīng)過(guò)一次MD5運(yùn)算后,就會(huì)得到一個(gè)由32個(gè)字符組成的字符串,這時(shí)可以再針對(duì)這個(gè)定長(zhǎng)字符串變換。有點(diǎn)BT的算法是,把這段密文分割成若干段,對(duì)每段都進(jìn)行一次MD5運(yùn)算,然后把這堆密文連成一個(gè)超長(zhǎng)的字符串,最后再進(jìn)行一次MD5運(yùn)算,得到仍然是長(zhǎng)度為32位的密文。

//把密文分割成兩段,每段16個(gè)字符
function md5_2_1($data)
{
//先把密碼加密成長(zhǎng)度為32字符的密文
$data = md5($data);
//把密碼分割成兩段
$left = substr($data, 0, 16);
$right = substr($data, 16, 16);
//分別加密后再合并
$data = md5($left).md5($right);
//最后把長(zhǎng)字串再加密一次,成為32字符密文
return md5($data);
}
//把密文分割成32段,每段1個(gè)字符
function md5_2_2($data)
{
$data = md5($data);
//循環(huán)地截取密文中的每個(gè)字符并進(jìn)行加密、連接
for ($i = 0; $i < 32; $i++) {
$data .= md5($data{$i});
}
//這時(shí)$data長(zhǎng)度為1024個(gè)字符,再進(jìn)行一次MD5運(yùn)算
return md5($data);
}
?>

當(dāng)然,這種密文分割的具體算法是數(shù)之不盡的,比如可以把原密文分割成16段每段兩字符、8段每段4字符,或者每一段的字符數(shù)不相等……

變換三:附加字符串干涉

在加密過(guò)程的一個(gè)步驟中,附加一個(gè)內(nèi)容確定的字符串(比如說(shuō)用戶名),干涉被加密的數(shù)據(jù)。不可以用隨機(jī)字串,因?yàn)檫@樣會(huì)使原算法無(wú)法重現(xiàn)。這種算法在某些情況下是很具有優(yōu)勢(shì)的,比如說(shuō)用于大量的用戶密碼加密,可以把用戶名作為附加干涉字串,這樣攻擊者就算知道你的算法,也很難從他們手中的字典中一下子生成海量的對(duì)照表,然后大量地破譯用戶密碼,只能有針對(duì)性的窮舉為數(shù)不多的用戶。

//附加字符串在原數(shù)據(jù)的尾部
function md5_3_1($data, $append)
{
return md5($data.$append);
}
//附加字符串在原數(shù)據(jù)的頭部
function md5_3_2($data, $append)
{
return md5($append.$data);
}
//附加字符串在原數(shù)據(jù)的頭尾
function md5_3_3($data, $append)
{
return md5($append.$data.$append);
}
?>

變換四:大小寫變換干涉

由于PHP所提供的md5()函數(shù)返回的密文中的英文字母全部都是小寫的,因此我們可以把它們?nèi)哭D(zhuǎn)為大寫,然后再進(jìn)行一次MD5運(yùn)算。

function md5_4($data)
{
//先得到密碼的密文
$data = md5($data);
//再把密文中的英文母全部轉(zhuǎn)為大寫
$data = strtotime($data);
//最后再進(jìn)行一次MD5運(yùn)算并返回
return md5($data);
}
?>

變換五:字符串次序干涉

把MD5運(yùn)算后的密文字符串的順序調(diào)轉(zhuǎn)后,再進(jìn)行一次MD5運(yùn)算。

function md5_5($data)
{
//得到數(shù)據(jù)的密文
$data = md5($data);
//再把密文字符串的字符順序調(diào)轉(zhuǎn)
$data = strrev($data);
//最后再進(jìn)行一次MD5運(yùn)算并返回
return md5($data);
}
?>

變換六、變換七、變換八……

MD5變換算法是數(shù)之不盡的,甚至無(wú)須自己再去創(chuàng)造,就用上面的五個(gè)互相組合就可以搞出很BT的算法。比如說(shuō)先循環(huán)加密后再分割,并在每一段上附加一個(gè)字符串再分別加密,然后變換大小寫并顛倒字符串順序后連成一個(gè)長(zhǎng)字符串再進(jìn)行MD5運(yùn)算……

如果真的很不幸,由于某些漏洞,比如說(shuō)SQL Injection或者文件系統(tǒng)中的數(shù)據(jù)庫(kù)被下載而異致用戶密碼數(shù)據(jù)暴露,那么MD5變換算法就能大大地增加破譯出密碼原文的難度,首先就是使網(wǎng)上很多的MD5原文/密文對(duì)照數(shù)據(jù)庫(kù)(要知道,這是破譯MD5最高效的方法)沒(méi)有用了,然后就是使攻擊者用常規(guī)算法去窮舉一串由變換算法得到的密文而搞得焦頭爛額。當(dāng)然,MD5變換算法特別適合用于非開源的Web程序使用,雖說(shuō)用在開源的程序中優(yōu)勢(shì)會(huì)被削弱(大家都知道算法),但是也能抑制MD5原文/密文對(duì)照數(shù)據(jù)庫(kù)的作用。要進(jìn)行這些復(fù)雜的變換運(yùn)算,當(dāng)然就要花費(fèi)的更多的系統(tǒng)開銷了,然而對(duì)于安全性要求很嚴(yán)格的系統(tǒng)來(lái)說(shuō),多付出一些來(lái)?yè)Q取高一點(diǎn)的安全性,是完全值得的。

責(zé)任編輯: 雪花(TEL:(010)68476636-8008)

熱詞搜索:

上一篇:Net程序如何防止被注入
下一篇:網(wǎng)站服務(wù)器通用和專用保護(hù)方法比較

分享到: 收藏
国产一级一区二区_segui88久久综合9999_97久久夜色精品国产_欧美色网一区二区
日韩高清不卡在线| 国产亚洲午夜高清国产拍精品| 高清不卡一区二区| 久久99精品久久久久久动态图| 午夜国产精品影院在线观看| 一区二区三区国产精华| 亚洲激情中文1区| 亚洲综合自拍偷拍| 亚洲午夜精品17c| 天堂成人国产精品一区| 日韩精品91亚洲二区在线观看 | 久久久激情视频| 国产亚洲欧美色| 国产精品久久久久影院色老大| 欧美高清在线视频| 久久夜色精品国产欧美乱极品| 久久久久久久久久看片| 中文在线一区二区| 亚洲人被黑人高潮完整版| 一区二区三区视频在线看| 日韩电影一区二区三区四区| 日本不卡一二三区黄网| 国产很黄免费观看久久| 91丨porny丨国产入口| 欧美日韩免费高清一区色橹橹| 欧美剧情片在线观看| 2019国产精品| 一区二区三区在线观看欧美| 日韩专区欧美专区| 国产aⅴ综合色| 欧美在线影院一区二区| 精品国产免费一区二区三区香蕉| 国产女人aaa级久久久级 | 7777精品伊人久久久大香线蕉的 | 中文字幕一区在线观看视频| 亚洲午夜激情网页| 国产成人99久久亚洲综合精品| 日本高清无吗v一区| 欧美大片一区二区三区| 一区二区视频在线| 国内精品伊人久久久久av影院| 日本乱人伦aⅴ精品| 久久色.com| 亚洲一区二区三区在线| 成人性视频免费网站| 777亚洲妇女| 亚洲麻豆国产自偷在线| 国产老妇另类xxxxx| 欧美日韩精品免费观看视频| 欧美国产欧美综合| 免费观看日韩av| 色美美综合视频| 欧美国产乱子伦| 国产美女av一区二区三区| 欧美猛男超大videosgay| 亚洲欧洲在线观看av| 国产成a人亚洲| 精品va天堂亚洲国产| 日日摸夜夜添夜夜添国产精品| 色偷偷88欧美精品久久久| 国产亚洲欧美一级| 国产在线麻豆精品观看| 日韩欧美区一区二| 免费看欧美女人艹b| 91精品国产综合久久久久久久久久| 自拍偷拍亚洲综合| 成人黄色软件下载| 亚洲国产精品av| 国产精品自拍网站| 精品盗摄一区二区三区| 美女视频免费一区| 日韩一级高清毛片| 久久国产精品第一页| 日韩一区二区三区在线| 男人的天堂亚洲一区| 欧美一区二区三区在线观看视频| 亚洲va韩国va欧美va精品| 欧美性大战久久久久久久蜜臀| 夜夜亚洲天天久久| 欧美性猛交xxxxxxxx| 日欧美一区二区| 欧美大片免费久久精品三p| 久久99精品国产麻豆婷婷| 精品国产一区久久| 国产69精品一区二区亚洲孕妇| 久久精品人人做人人爽97| 国产剧情av麻豆香蕉精品| 久久精品免费在线观看| 成人夜色视频网站在线观看| 综合久久给合久久狠狠狠97色| 91蜜桃婷婷狠狠久久综合9色| 亚洲视频一区二区免费在线观看 | 亚洲高清免费观看高清完整版在线观看 | 日本亚洲免费观看| 精品日韩一区二区| 国产成人午夜99999| 亚洲欧美影音先锋| 欧美三级视频在线播放| 另类综合日韩欧美亚洲| 久久婷婷久久一区二区三区| 成人综合激情网| 亚洲激情在线激情| 日韩欧美中文一区| 成人a级免费电影| 亚洲动漫第一页| 日韩精品在线看片z| 国产成人免费9x9x人网站视频| 日韩码欧中文字| 日韩三级免费观看| 成年人国产精品| 日本欧洲一区二区| 亚洲欧美日韩人成在线播放| 在线不卡免费av| 成人av在线资源网| 视频在线观看一区| 中文在线一区二区| 日韩欧美一级二级三级| 99re66热这里只有精品3直播| 午夜电影一区二区| 亚洲欧美在线另类| 精品久久久三级丝袜| 色哟哟一区二区三区| 国产麻豆精品在线| 午夜国产精品影院在线观看| 国产日韩欧美精品一区| 欧美一区二区三区在线电影| 91丨九色丨尤物| 韩国三级在线一区| 日韩高清不卡一区二区三区| 亚洲男人的天堂av| 国产日产欧产精品推荐色| 91精品午夜视频| 欧美性一二三区| 9久草视频在线视频精品| 国内国产精品久久| 天天综合网天天综合色| 亚洲欧美视频在线观看| 国产精品视频看| 久久精品视频在线看| 欧美成人vr18sexvr| 欧美一区二区大片| 在线成人av影院| 欧美日韩国产小视频| 在线亚洲免费视频| 色就色 综合激情| 成人性生交大片免费看中文网站| 国产综合色视频| 久久99国产精品久久99| 美女视频黄久久| 精品一区二区三区影院在线午夜| 日本中文在线一区| 麻豆国产精品777777在线| 裸体歌舞表演一区二区| 免费在线观看一区| 蜜桃av一区二区三区电影| 奇米综合一区二区三区精品视频| 香蕉加勒比综合久久| 视频一区在线视频| 麻豆精品视频在线观看| 热久久久久久久| 九九国产精品视频| 国产99久久精品| va亚洲va日韩不卡在线观看| 99国产精品久| 色婷婷综合久久久久中文| 91极品视觉盛宴| 欧美精选一区二区| 欧美一区二区三区的| 精品国产麻豆免费人成网站| 久久综合色婷婷| 国产精品久久一级| 一区二区三区免费网站| 日韩精品一区第一页| 狠狠狠色丁香婷婷综合激情| 国产成人午夜精品影院观看视频| 97久久超碰国产精品| 欧美性色黄大片手机版| 欧美xxxxx牲另类人与| 中文字幕高清不卡| 洋洋成人永久网站入口| 蜜桃av噜噜一区二区三区小说| 国产黑丝在线一区二区三区| 91论坛在线播放| 欧美一区二区三区免费大片| 亚洲国产成人私人影院tom| 亚洲国产成人精品视频| 极品少妇xxxx精品少妇| 97se亚洲国产综合自在线不卡| 日本电影欧美片| 精品国产91洋老外米糕| 一区二区三区四区精品在线视频 | 日韩免费视频一区二区| 国产精品福利一区二区三区| 亚洲国产日韩在线一区模特| 久久国产人妖系列| 欧美综合色免费| 欧美国产精品久久| 久久激情五月激情| 在线免费不卡视频| 国产精品久久久久永久免费观看 |