999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種改進URL保護算法研究

2017-01-10 03:44:26章紅琴張文盛

章紅琴,張文盛

(1.安徽繼遠軟件有限責(zé)任公司,安徽 合肥 230088;2.安徽廣播電視大學(xué),安徽 合肥 230022)

一種改進URL保護算法研究

章紅琴1,張文盛2

(1.安徽繼遠軟件有限責(zé)任公司,安徽 合肥 230088;2.安徽廣播電視大學(xué),安徽 合肥 230022)

針對傳統(tǒng)URL保護算法存在暴露實現(xiàn)細節(jié)的問題,提出一種采用MD5和AES保護URL的改進算法。首先將原始URL和密鑰key1按規(guī)定順序裝配,計算MD5檢驗和,并將檢驗和嵌入原始URL得到防篡改URL;其次使用密鑰key2對防篡改URL執(zhí)行AES加密得到加密URL;最后對加密URL進行編碼,得到受保護URL。解析過程逆向操作,期間驗證檢驗和,丟棄無效請求。在PHP中測試兩種保護算法的性能,結(jié)果表明改進算法與傳統(tǒng)算法相比,生成速度變?yōu)樵瓉淼?倍,解析速度變?yōu)樵瓉淼?.8倍。而相比傳統(tǒng)算法,改進算法具有保密性特點,能夠提高Web應(yīng)用的安全性。

URL保護;Web安全;信息泄露;語義攻擊

0 引言

URL是Web應(yīng)用的重要組成部分,不重視URL的保護會造成不良后果。一些Web應(yīng)用將用戶名和密碼等敏感信息嵌入URL實現(xiàn)特定功能,而瀏覽器都有記錄訪問歷史功能,將用戶訪問的敏感URL記錄下來,一旦黑客有機會掃描和分析該記錄,就會造成信息泄露[1]。此外在大量的Web應(yīng)用中,數(shù)據(jù)庫使用自增id作為記錄的鍵值,并在URL的請求參數(shù)直接嵌入該鍵值,生成類似于show.php?id=9的URL,惡意用戶據(jù)此可推測出數(shù)據(jù)庫實現(xiàn)方式,偽造其他請求參數(shù),例如id=10對數(shù)據(jù)庫進行語義攻擊,訪問到應(yīng)該受限的資源[2]。URL保護是對URL進行適當(dāng)?shù)奶幚恚沤^此類不良后果,提高Web安全性。

URL保護內(nèi)容包括結(jié)構(gòu)、編碼和算法等多方面,重點是保護算法。在設(shè)計URL保護算法時,需要考慮多個因素,包括保護強度、解析效率和編程接口復(fù)雜度等。URL保護算法越復(fù)雜,保護強度也就越高,而每次訪問都需要進行URL解析,相應(yīng)的開銷也就越大,特別對于訪問量較大的應(yīng)用,更是需要慎重設(shè)計,要在幾個因素之間找到一個平衡點。本文遵從該設(shè)計原則,提出一種URL保護算法,在盡量降低解析開銷的同時,實現(xiàn)URL的保密性和抗篡改特性。

1 相關(guān)研究

目前URL保護算法研究主要采用MD5算法[3-5]。MD5是一種散列算法,能夠?qū)⑷我忾L的字符串計算成為一個128 bit的值,具有很強的抗碰撞攻擊能力[6]。這類URL保護算法的處理過程是:首先將原始URL字符串s1和一個密鑰字符串key拼接形成字符串s2;其次計算s2的MD5檢驗和;最后將檢驗和嵌入s1成為字符串s3,s3是供用戶訪問的最終URL。用戶訪問最終URL時,系統(tǒng)完成驗證檢驗和的工作。其工作原理如圖1和圖2所示。

圖1 傳統(tǒng)URL保護算法生成URL過程

圖2 傳統(tǒng)URL保護算法解析URL過程

傳統(tǒng)URL保護算法的核心是密鑰key,由于MD5是不可逆算法,想要反推出密鑰key,是極其困難的。沒有密鑰key, 想要計算出含攻擊意圖的s1且能夠通過驗證,即碰撞攻擊,也是極其困難的。因此MD5能夠有效保護URL不被篡改,保證用戶訪問的URL都是合法的。但是這些研究未考慮明文請求參數(shù)的信息泄漏問題,還需要完善。本文提出一種URL保護算法,既能防篡改,又能保密,可以大幅提升Web應(yīng)用安全。

2 改進URL保護算法

改進URL保護算法采用MD5和AES共同保護URL。AES是一種對稱加密算法,屬于分組密碼,具有很強的抗分析能力[7-8]。規(guī)定雙引號為字符串定界符,雙引號之間的字符為字符串內(nèi)容,“+”為字符串拼接運算符,則改進算法的具體執(zhí)行過程是:

(1)將請求參數(shù)s1和密鑰key1按規(guī)定順序裝配成字符串s2=key1+s1;

(2)計算s2的MD5檢驗和v=md5(s2);

(3)將檢驗和v嵌入s1成為新請求字符串s3="v="+v+"&"+s1;

(4)對s3使用密鑰key2執(zhí)行AES加密得到字符串s4=aes(s3,key2);

(5)對s4使用改進base64編碼成為字符串s5=base64_encode_ex(s4),得到最終URL。

(6)解析過程逆向操作,期間驗證檢驗和,丟棄無效請求。

其工作原理如圖3、圖4所示。

圖4 改進URL算法解析URL過程

本算法的改進之處在于,在MD5實現(xiàn)防篡改特性基礎(chǔ)之上,使用AES加密算法加強信息泄露保護,從而實現(xiàn)保密特性。在算法設(shè)計上,做如下幾點說明:

(1)雖然AES已經(jīng)可以很好地保護URL,但是為了強化保護能力,繼續(xù)保留key1用于MD5計算;

(2)使用AES解密偽造的URL時,可能不會出錯,但會得到亂碼字符串,對后續(xù)步驟的執(zhí)行造成干擾,為了更好地檢測這種攻擊,在將檢驗和嵌入s3時,特意增加"v="標(biāo)識,便于驗證和丟棄無效的請求;

(3)AES加密生成的是二進制字符串,需要用base64編碼成為可以傳輸?shù)淖址5莃ase64編碼中存在+/字符,不是URL兼容的,本算法采用改進base64 算法,將+/替換為_*。

(4)為了支持AJAX,允許在保護URL后面拼接其他請求參數(shù),但是不允許覆蓋保護URL中的參數(shù)。

3 算法實現(xiàn)

下面給出改進算法的PHP實現(xiàn)。改進算法需要多個參數(shù),將其封裝成配置參數(shù)對象,結(jié)構(gòu)如下:

$cfg = new stdClass();

//md5密鑰

//aes加密標(biāo)準(zhǔn)

//aes密鑰

//aes iv值,初始向量

3.1 生成算法

//$s1為請求參數(shù)串,$cfg為配置參數(shù)對象

function createLink($s1, $cfg)

{

$v = md5($cfg->key1 . $s1);

//生成檢驗和

$s3 = openssl_encrypt($s2, $cfg->aes, $cfg->key2, true, $cfg->iv);

//加密

$s4=strtr(base64_encode($s3),+/,_*);;

//使用改進base64編碼處理

return $s4;

}

3.2 解析算法

//$s5為安全URL串,$cfg為配置參數(shù)對象

function parseLink($s5, $cfg)

{

$s4 = base64_dencode(strtr($s5,_*,+/));

//解碼

if($s4 === false) return false;

//解碼失敗

$s3 = openssl_decrypt($s4, $cfg->aes, $cfg->key2, true, $cfg->iv);

if($s3 === false) return false;

//解密失敗

if($i === false) return false;

//未找到&

$v=substr($s3, 0, $i);

//$i是長度,解析嵌入的檢驗和

if($i <> 34 || substr($v, 0, 2) <>v=) return false;

//長度或標(biāo)識不符

$v = substr($v, 2);

//取檢驗和

$s1 = substr($s3, $i + 1);

//解析s1

$s2 = $cfg->key1 . $s1;

$v2 = md5($s2);

//計算檢驗和

if($v <> $v2) return false;

//比較檢驗和

return $s1;

}

4 性能測試

分別測試傳統(tǒng)算法和改進算法的性能開銷。測試環(huán)境硬件為Intel(R) Core(TM)2 Quad CPU Q9400 @ 2.66GHz CPU,軟件為Windows 2003(x86_32,企業(yè)版) + PHP 5.3.13(nts,x86_32)。采用兩組s1輸入,每次測試3次,取平均值,測試結(jié)果如表1所示。

從表1可以看出,改進算法生成時間比傳統(tǒng)算法生成時間增加(a2-a1)/a1=2倍左右,改成算法解析時間比傳統(tǒng)算法解析時間增加(a4-a2)/a2=0.8倍左右。此外解析時間比生成時間都要長,傳統(tǒng)算法解析時間是傳統(tǒng)算

表1 URL保護算法性能測試和對比(單位:s)

法生成時間的(a2-a1)/a1=1.8倍左右,改進算法解析 時間是改進算法生成時間的(a4-a3)/a3=0.7倍左右。還可以分析出當(dāng)字符串長度從10增加到100時,相應(yīng)的處理時間增加不到10%,說明字符串長度增加對算法性能的影響不是很大。

5 結(jié)論

保護URL能提高Web應(yīng)用的安全性,傳統(tǒng)URL保護算法存在信息泄漏問題,為此本文設(shè)計了一種改進URL保護算法,既能防篡改,又能防止信息泄漏,能夠全面保護URL。在給出實現(xiàn)代碼的同時,測試了兩種算法的性能,結(jié)果表明改進算法性能并沒有大幅下降,可以滿足大多數(shù)Web應(yīng)用的需求。

[1] 朱小龍,孫國梓.瀏覽器歷史痕跡提取技術(shù)[J].信息網(wǎng)絡(luò)安全,2013(1):19-21.

[2] 熊婧.SQL注入檢測技術(shù)研究[D].武漢:華中科技大學(xué),2009.

[3] 杜恩寬.URL攻擊防范和細粒度權(quán)限管理的安全鏈接方法[J].計算機應(yīng)用,2009, 29(8):2230-2232.

[4] 劉國卿.基于MD5 的URL 防篡改算法設(shè)計[J].科技信息,2011(3):504-505,536.

[5] 張杰,李華偉,周立軍.一種采用MD5加密算法防止URL攻擊的方法[J].現(xiàn)代計算機, 2014(4):52-54.

[6] 毛熠,陳娜.MD5算法的研究與改進[J].計算機工程,2012,38(24):111-114,118.

[7] 趙雪梅.AES加密算法的實現(xiàn)及應(yīng)用[J].常熟理工學(xué)院學(xué)報,2010,24(2):105-110.

[8] 楊斐,彭鵬.基于AES的可重構(gòu)加密系統(tǒng)的FPGA設(shè)計[J].微型機與應(yīng)用,2014,33(24):2-4.

Study on an improved URL protection algorithm

Zhang Hongqin1,Zhang Wensheng2

(1. Anhui Jiyuan Software Limited Liability Company,Hefei 230088,China; 2.Anhui Radio & TV University,Hefei 230022,China)

Aiming at the problem that the traditional URL protection algorithm exposes implement details, an improved algorithm using MD5 and AES to protect URL is proposed. Firstly,the original URL and a key are orderly assembled into a string, MD5 checksum of this string is calculated,then the checksum and the original URL are assembled into a tamper proof URL. Secondly, using AES encryption algorithm,this tamper proof URL is encrypted into a cipher string. Finally, this cipher string is encoded to a protected URL.Parsing protected URL is a reverse operation,in which checksum is verified and invalid requests are discarded. The performance of these two algorithms are tested in PHP. The results show that comaring the improved algorithm with the traditional algorithm,generating speed reduces to only 2 times or so, and parsing speed reduces to only 0.8 times or so. Compared with the traditional algorithm, the improved algorithm has the feature of secrecy, which can improve the security of Web application.

URL protection;Web security;information leakage;semantic attack

TP309.7

A

1674-7720(2016)04-0009-03

章紅琴,張文盛.一種改進URL保護算法研究[J] .微型機與應(yīng)用,2016,35(4):9-11,16.

2015-09-23)

章紅琴(1982-),女,碩士,助理工程師,主要研究方向:項目管理。

主站蜘蛛池模板: 高潮毛片免费观看| www成人国产在线观看网站| 日本黄色a视频| 国产毛片高清一级国语 | 伊人久久婷婷| 亚洲男人的天堂在线观看| 亚洲综合第一区| 国产精品区视频中文字幕| 亚洲综合狠狠| 婷婷伊人五月| 这里只有精品在线播放| 国产精品久久久久久搜索| 国产91导航| 亚洲三级电影在线播放| 无码国内精品人妻少妇蜜桃视频| 无码内射中文字幕岛国片| 在线a视频免费观看| 成年片色大黄全免费网站久久| a级毛片在线免费| 亚洲 欧美 日韩综合一区| 最新无码专区超级碰碰碰| 58av国产精品| 影音先锋丝袜制服| 人与鲁专区| 欧美成人手机在线视频| 999国产精品永久免费视频精品久久| 亚洲婷婷丁香| 日本精品αv中文字幕| 又爽又大又光又色的午夜视频| 在线精品视频成人网| 丁香婷婷激情网| 国产99在线| 强奷白丝美女在线观看| 亚洲AⅤ无码国产精品| 亚洲—日韩aV在线| 亚洲热线99精品视频| 在线亚洲精品自拍| 免费A级毛片无码无遮挡| 国产精品永久不卡免费视频| 五月激情综合网| 爱色欧美亚洲综合图区| 亚洲精品老司机| a毛片在线| 亚洲综合色区在线播放2019| 国产成人综合久久| 久久狠狠色噜噜狠狠狠狠97视色| 欧类av怡春院| 欧美日韩国产精品综合| 国产肉感大码AV无码| 无码高潮喷水专区久久| 最新亚洲av女人的天堂| 久久99热这里只有精品免费看| 亚洲国产成人久久精品软件| 色综合五月| 日本91视频| 中文字幕一区二区视频| 亚洲天堂免费| 美女视频黄又黄又免费高清| 欧美高清国产| AV不卡国产在线观看| 亚洲美女高潮久久久久久久| 亚洲第一极品精品无码| 亚洲性一区| 国产理论一区| 日韩高清欧美| 亚洲性日韩精品一区二区| 久久精品人妻中文系列| 国产精品漂亮美女在线观看| 天天爽免费视频| a毛片在线| 亚洲一区二区三区国产精华液| 欧美A级V片在线观看| 麻豆精品在线| 91精品国产丝袜| 免费AV在线播放观看18禁强制| 中文字幕乱码中文乱码51精品| 国产成人综合日韩精品无码首页| 欧美精品v欧洲精品| 乱系列中文字幕在线视频| 国产成人三级| 国产福利小视频在线播放观看| 国产中文在线亚洲精品官网|