高麗麗,李順東
(陜西師范大學(xué)計(jì)算機(jī)科學(xué)學(xué)院,西安710119)
基于身份認(rèn)證的密鑰交換改進(jìn)協(xié)議
高麗麗,李順東
(陜西師范大學(xué)計(jì)算機(jī)科學(xué)學(xué)院,西安710119)
基于離散對(duì)數(shù)的困難性假設(shè),H?lbl等人提出了2個(gè)基于身份認(rèn)證的密鑰交換協(xié)議 HW1和 HW2 (Computer Standards&Interfaces,2009,No.6)。HW1協(xié)議能夠有效抵抗 Tseng等人提出的攻擊(Journal of Computers,2002,No.3),HW2協(xié)議則具有較高的效率,但Shim等人發(fā)現(xiàn)HW1不能抵抗中間人攻擊和偽裝攻擊, HW2不能抵抗偽裝攻擊(IEEE Communications Letters,2012,No.4)。通過(guò)分析Shim等人提出的攻擊方案,找出這2個(gè)協(xié)議能夠被篡改的原因,分別提出改進(jìn)的HW1和HW2協(xié)議,利用Hash函數(shù)對(duì)傳輸?shù)男畔⒆鯤ash驗(yàn)證,以防止信息被篡改。對(duì)改進(jìn)協(xié)議進(jìn)行可行性證明和安全性分析,結(jié)果表明,2種協(xié)議能夠有效抵抗中間人攻擊和偽裝攻擊,具有較高的安全性。
密鑰交換;基于身份;中間人攻擊;偽裝攻擊;Hash函數(shù);離散對(duì)數(shù)問(wèn)題
網(wǎng)絡(luò)技術(shù),特別是基于互聯(lián)網(wǎng)的工具的不斷成熟與發(fā)展,傳統(tǒng)的事務(wù)處理、商業(yè)活動(dòng)以及政府服務(wù)等越來(lái)越通過(guò)網(wǎng)絡(luò)實(shí)施,大大加快了社會(huì)信息化的發(fā)展,對(duì)計(jì)算機(jī)和網(wǎng)絡(luò)系統(tǒng)的依賴(lài)性也越來(lái)越大,信息系統(tǒng)中的安全問(wèn)題勢(shì)必會(huì)影響到信息產(chǎn)業(yè)的應(yīng)用和發(fā)展。要保證信息的安全性,一個(gè)有效的解決辦法就是利用密碼術(shù)。密碼學(xué)是信息安全的基礎(chǔ)和關(guān)鍵,利用密碼技術(shù),可以實(shí)現(xiàn)信息的保密性、完整性、認(rèn)證性和抗抵賴(lài)性。密碼協(xié)議是實(shí)現(xiàn)網(wǎng)絡(luò)通信和網(wǎng)絡(luò)體系、分布式系統(tǒng)和電子商務(wù)安全運(yùn)行的核心組成部分,是安全系統(tǒng)的主要保障手段和工具,密鑰交換是保密通信的前提和保證,是實(shí)施其他密碼協(xié)議的關(guān)鍵,是公鑰基礎(chǔ)設(shè)施的基礎(chǔ)。認(rèn)證密鑰交換協(xié)議,作為更可靠的密鑰交換協(xié)議,在密碼學(xué)與信息安全領(lǐng)域具有很強(qiáng)的實(shí)際意義。
密碼學(xué)中的一個(gè)核心問(wèn)題是在有敵手控制的網(wǎng)絡(luò)中如何實(shí)現(xiàn)安全可靠的通信,為了解決這個(gè)問(wèn)題,實(shí)體之間必須共享一個(gè)密鑰并利用現(xiàn)有的技術(shù)來(lái)實(shí)現(xiàn)安全通信。密鑰交換協(xié)議就是這樣一個(gè)機(jī)制,它允許2個(gè)或多個(gè)用戶(hù)在開(kāi)放的網(wǎng)絡(luò)環(huán)境中通過(guò)協(xié)商,建立一個(gè)便于保密通信的會(huì)話(huà)密鑰,從而實(shí)現(xiàn)安全通信。如果協(xié)議能夠使參與者確信除了指定的用戶(hù)之外,其他任何參與者都不能得到會(huì)話(huà)密鑰,則稱(chēng)此類(lèi)密鑰交換協(xié)議為認(rèn)證密鑰交換協(xié)議,這類(lèi)協(xié)議將認(rèn)證和密鑰交換協(xié)議結(jié)合在一起,是網(wǎng)絡(luò)通信中應(yīng)用最廣泛的協(xié)議。近年來(lái),不少可認(rèn)證的密鑰交換協(xié)議被提出[1-4],其中也有不少協(xié)議被攻破,因此,設(shè)計(jì)出更為安全的密鑰交換協(xié)議具有重大意義。
1976年,Diffie和Hellman提出了公鑰密碼學(xué)的概念[5],同時(shí)給出了第一個(gè)密鑰交換協(xié)議,即Diffie-Hellman協(xié)議。1984年,Shamir提出了基于身份的密碼學(xué)概念[6],在該體制下,終端用戶(hù)可以任意選取一個(gè)身份字符串作為自己的公鑰,存在一個(gè)可信的密鑰生成中心(KGC),秘密持有一個(gè)主私鑰,將主私鑰和用戶(hù)身份結(jié)合生成用戶(hù)私鑰。Hsieh等人在2002年,在Saeednia協(xié)議的基礎(chǔ)上,通過(guò)使用模乘運(yùn)算和模冪運(yùn)算減少計(jì)算花費(fèi),提出了一個(gè)改進(jìn)的基于身份認(rèn)證的密鑰協(xié)商協(xié)議[7]。同年,Tseng等人指出Hsieh協(xié)議不能抵抗密鑰泄露偽裝攻擊,并給出了攻擊方案。在2007年,Tseng對(duì)Hsieh協(xié)議進(jìn)行了改進(jìn),并給出了一個(gè)高效的密鑰協(xié)商協(xié)議[8],改進(jìn)后的協(xié)議能夠滿(mǎn)足所有安全屬性。2009年,H?lbl等人提出了2個(gè)基于身份認(rèn)證的密鑰交換協(xié)議[9]:HW1協(xié)議和HW2協(xié)議。2012年,Shim等人分析了這2個(gè)協(xié)議[10],本文針對(duì)這2個(gè)協(xié)議存在的缺陷,利用Hash函數(shù)對(duì)協(xié)議進(jìn)行改進(jìn),并對(duì)改進(jìn)后的協(xié)議進(jìn)行安全性分析。
2.1 Hash函數(shù)
Hash函數(shù)在密碼學(xué)中扮演著重要的角色,下面回顧一下Hash函數(shù)的概念和基本性質(zhì)[11]。
定義1(Hash函數(shù)) 在密碼學(xué)中,Hash函數(shù)是一個(gè)映射,滿(mǎn)足h:{0,1}*→{0,1}n,其中,{0,1}*表示任意長(zhǎng)度的比特串的集合;{0,1}n代表長(zhǎng)度為n比特的二進(jìn)制串集合。消息x∈{0,1}*的像h(x)稱(chēng)為x的Hash值。
定義2(碰撞) 設(shè)x,x′∈{0,1}*是2個(gè)不同的消息,如果h(x)=h(x′),則稱(chēng)x和x′是Hash函數(shù)h的一個(gè)碰撞。
為了保證Hash函數(shù)應(yīng)用的安全性,要求找出Hash函數(shù)的碰撞在計(jì)算上是困難的。依據(jù)找出Hash函數(shù)碰撞的情況,可將Hash函數(shù)分為3類(lèi):
(1)單向Hash函數(shù):設(shè)h是一個(gè)Hash函數(shù),給定一個(gè)Hash值y,如果尋找一個(gè)消息x,使得y= h(x)是計(jì)算上不可行的,則稱(chēng)h是單向Hash函數(shù)。
(2)弱抗碰撞Hash函數(shù):設(shè)h是一個(gè)Hash函數(shù),任給一個(gè)消息x,如果尋找另一個(gè)不同的消息x′,使得h(x)=h(x′)是計(jì)算上不可行的,則稱(chēng)h是弱抗碰撞Hash函數(shù)。
(3)強(qiáng)抗碰撞Hash函數(shù):設(shè)h是一個(gè)Hash函數(shù),如果尋找2個(gè)不同的消息x和x′,使得h(x)= h(x′)是計(jì)算上不可行的,則稱(chēng)h是強(qiáng)抗碰撞Hash函數(shù)。
一個(gè)密碼學(xué)上的安全Hash函數(shù)h應(yīng)具有以下性質(zhì):對(duì)任意的消息x,計(jì)算h(x)是容易的;h是單向的;h是弱抗碰撞的,或是強(qiáng)抗碰撞的。
2.2 eCK模型
eCK模型是賦予敵手強(qiáng)攻擊力的雙方認(rèn)證密鑰交換協(xié)議的安全模型,該模型具體描述如下[12-13]:
證書(shū)管理中心:eCK模型需要一個(gè)可信第三方證書(shū)管理中心(CA)驗(yàn)證每個(gè)參與者的長(zhǎng)期公鑰與其身份的綁定情況,所有通過(guò)該驗(yàn)證的參與者(包括敵手)均有資格參與協(xié)議。
敵手:敵手M為一個(gè)主動(dòng)攻擊者,它被模擬為一個(gè)概率多項(xiàng)式時(shí)間圖靈機(jī)。eCK模型允許敵手任意監(jiān)聽(tīng)、延遲、重放和修改消息等。
本文通過(guò)一個(gè)挑戰(zhàn)者和敵手M之間的游戲定義雙方認(rèn)證密鑰交換協(xié)議的安全性。在該游戲中, M被允許進(jìn)行以下的預(yù)言機(jī)查詢(xún),并且這些查詢(xún)是無(wú)序的:
(2)Long-term Key Reveal(A):敵手M通過(guò)此查詢(xún)獲得參與者A的長(zhǎng)期私鑰。
(5)Establish Party(A):敵手M通過(guò)此查詢(xún)可以在CA上注冊(cè)與參與者A相同的公鑰。通過(guò)此查詢(xún),M可以發(fā)起未知密鑰共享攻擊。
在游戲最后,M輸出b′∈{0,1}作為對(duì)b的判斷,若b=b′,則稱(chēng)敵手M贏(yíng)得了此游戲。
基于以上描述,本文定義以下概念:
(1)敵手沒(méi)有對(duì)參與者A和B進(jìn)行過(guò)Long-term Key Reveal查詢(xún)或Ephemeral Key Reveal查詢(xún)。
H?lbl等人提出了2種基于身份認(rèn)證的密鑰交換協(xié)議,即HW1協(xié)議和HW2協(xié)議[7],協(xié)議包括3個(gè)階段:系統(tǒng)建立階段,私鑰生成階段和密鑰交換階段。
3.1 HW1協(xié)議
私鑰生成階段:
密鑰交換階段:
3.2 HW2協(xié)議
密鑰交換階段:
Shim等對(duì)H?lbl等基于身份認(rèn)證的密鑰交換協(xié)議進(jìn)行了分析,提出了中間人攻擊和偽裝攻擊協(xié)議[10]。
4.1 對(duì)HW1協(xié)議的中間人攻擊
敵手Eve竊聽(tīng)Alice和Bob的通信信息,攻擊過(guò)程如下:
(1)當(dāng)Alice發(fā)送給Bob信息{uA,tA,IDA}時(shí),Eve竊聽(tīng)該信息,選取一個(gè)隨機(jī)數(shù)α,計(jì)算t′A=gα-vA,將{uA,t′A,IDA}發(fā)送給Bob。類(lèi)似地,當(dāng)Bob發(fā)送給Alice信息{uB,tB,IDB}時(shí),Eve竊聽(tīng)該信息,選取一個(gè)隨機(jī)數(shù) β,計(jì)算 t′B=gα-vB,將{uB,t′B,IDB}發(fā)送給Alice。
(2)Alice接收到{uB,t′B,IDB}后,計(jì)算密鑰KAB= (gvB·t′B)vA+rA=(gvB·gβ-vB)vA+rA=(gvB·gβ-vB)vA+rA= (gβ)vA+rA,類(lèi)似地,Bob接收到{uA,t′A,IDA}后,計(jì)算密鑰KBA=(gvA·t′A)vB+rB=(gα)vB+rB。
(3)Eve分別計(jì)算密鑰KAB=(gvA·tA)β=gβ(vA+rA)和密鑰KBA=(gvB·tB)α=gα(vB+rB)。
最后,Eve和 Alice共享密鑰 KAB=gβ(vA+rA),Eve和Bob共享密鑰KBA=gα(vB+rB)。該協(xié)議沒(méi)有密鑰驗(yàn)證過(guò)程,Alice和Bob不知道他們的密鑰是不同的,Eve可以解密Alice用KAB加密的消息,以及Bob用KBA加密的消息。
4.2 對(duì)HW1協(xié)議的偽裝攻擊
假設(shè)敵手 Eve向 Bob偽裝 Alice,攻擊過(guò)程如下:
(2)Bob接收到{uA,tA=grA,IDA}后,計(jì)算共享密鑰KBA=(xB·tA)vB+rB=(gvA·grA)vB+rB=g(rA+vA)(rB+vB)。
(3)Eve截獲到{uB,tB,IDB}后,Eve計(jì)算共享密鑰KAB=(xA·tB)t=g(rA+vA)(rB+vB)。
最后,Eve向Bob偽裝成功,和Bob共享密鑰K=KAB=KBA。
4.3 對(duì)HW2協(xié)議的偽裝攻擊
假設(shè)敵手 Eve向 Bob偽裝 Alice,攻擊過(guò)程如下:
(2)Bob接收到{uA,tA=grA,IDA}后,計(jì)算共享密鑰: KBA=(xB·tA)vB+rB=(gvA·grA)vB+rB=g(rA+vA)(rB+vB)。
(3)Eve截獲到{uB,tB,IDB}后,Eve計(jì)算共享密鑰KAB=(xA·tB)τ=g(rA+vA)(rB+vB)。
最后,Eve向Bob偽裝成功,和Bob共享密鑰K= KAB=KBA。
5.1 改進(jìn)的HW1協(xié)議
5.1.1 抗中間人攻擊協(xié)議
對(duì)HHW1協(xié)議,在密鑰交換階段,加入密鑰驗(yàn)證,強(qiáng)化密鑰交換階段的安全性。系統(tǒng)建立階段和私鑰生成階段保持不變,過(guò)程參考3.1節(jié)。
密鑰交換階段:
5.1.2 抗偽裝攻擊協(xié)議
對(duì)HW1協(xié)議,利用Hash函數(shù),強(qiáng)化密鑰交換階段的安全性。系統(tǒng)建立階段和私鑰生成階段保持不變,過(guò)程參考3.1節(jié)。
密鑰交換階段:
5.2 改進(jìn)的HW2協(xié)議
對(duì)HW2協(xié)議,利用Hash函數(shù),強(qiáng)化密鑰交換階段的安全性。系統(tǒng)建立階段和私鑰生成階段保持不變,過(guò)程參考3.2節(jié)。
密鑰交換階段:
6.1 抗中間人攻擊協(xié)議的安全性分析
基于Hash函數(shù)的弱抗碰撞性,Eve要找到滿(mǎn)足條件的數(shù)是困難的,故改進(jìn)后的協(xié)議能夠抵抗Shim等提出的對(duì)HW1協(xié)議的中間人攻擊。
6.2 抗偽裝攻擊協(xié)議的安全性分析
改進(jìn)的HW1協(xié)議,記作HWP1協(xié)議,在eCK模型下證明HWP1協(xié)議的安全性,改進(jìn)的HW2協(xié)議的安全性可用相同的方法得到證明,限于篇幅,本文只給出HWP1協(xié)議的詳細(xì)證明過(guò)程。
定義5(計(jì)算Diffie-Hellman(CDH)問(wèn)題) 設(shè)G是一個(gè)q階乘法循環(huán)群,g是G的生成元,如果已知g,ga,gb(a,b是正整數(shù)),求gab的成功概率PrCDH是可忽略的,則稱(chēng)CDH問(wèn)題是困難的。
定理 假設(shè)H是隨機(jī)預(yù)言機(jī),CDH假設(shè)對(duì)群G是成立的,則HWP1協(xié)議在eCK模型下是安全的。
證明:敵手M以偽造攻擊的方式區(qū)分真實(shí)的會(huì)話(huà)密鑰和隨機(jī)值。本文將證明,如果敵手M以不可忽略的概率贏(yíng)得游戲,則可構(gòu)造一個(gè)模擬器S,它可利用M以不可忽略的概率解決CDH問(wèn)題。
給定S的挑戰(zhàn)(U,V),S將與M按照HWP1協(xié)議流程執(zhí)行查詢(xún),并適當(dāng)修改誠(chéng)實(shí)的參與者返回的數(shù)據(jù),以期在M贏(yíng)得游戲后S可以解決CDH問(wèn)題。
首先,S選取由某2個(gè)參與者Alice和Bob參與的匹配會(huì)話(huà),S將這2個(gè)會(huì)話(huà)中的grA用U代替,grB用V代替。假設(shè)S最多可選取k次會(huì)話(huà),故選擇的概率為2/k2。
攻擊開(kāi)始后,M以1/k2的概率選中上述會(huì)話(huà)中的Alice的會(huì)話(huà)作為T(mén)est會(huì)話(huà)。顯然,此時(shí)Bob的會(huì)話(huà)稱(chēng)為T(mén)est會(huì)話(huà)的匹配會(huì)話(huà)。若M成功地進(jìn)行了偽裝攻擊,S一定能解決CDH問(wèn)題。
事實(shí)上,共享密鑰 K=g(rA+hA1vA)(rB+hA2vB),若 M獲得了K,它一定可以計(jì)算出grArB,通過(guò)進(jìn)行Hash運(yùn)算得到hA1,hA2。根據(jù)之前的假設(shè),K=CDH(U, V)。因此,若M成功地進(jìn)行了偽裝攻擊,S一定能解決CDH問(wèn)題。
綜上,定理得證。
本文通過(guò)對(duì)H?lbl等人基于身份認(rèn)證的密鑰交換協(xié)議和Shim等人的攻擊協(xié)議進(jìn)行研究與分析,找出H?lbl等協(xié)議存在的不足,并對(duì)該協(xié)議進(jìn)行改進(jìn)和安全性分析。分析結(jié)果表明,改進(jìn)后的協(xié)議能夠抵抗Shim等人提出的攻擊,協(xié)議安全、可行。本文主要研究了基于雙方的密鑰交換協(xié)議,下一步將致力于基于多方的密鑰交換協(xié)議的研究。
[1] Zhao Jianjie,Gu Dawu.Provably Secure Three-party Password-based Authenticated Key Exchange Protocol[J].Information Sciences,2012,184(1):310-323.
[2] Chang T Y,Hwang M S,Yang W P.A Communicationefficient Three-party Password Authenticated Key Exchange Protocol[J].Information Science,2011,181(1): 217-226.
[3] Zhang Shiwu,Cheng Qingfeng,Wang Xuekui.Impersonation Attack on Two Identity-based Authenticated Key Exchange Protocols[C]//Proceedings of 2010 WASE InternationalConference on Information Engineering.Beidaihe,China:IEEE Press,2010:113-116.
[4] Ni Liang,Chen Gongliang,Li Jianhua,et al.Strongly Secure Identity-based Authenticated Key Agreement Protocols[J].Computers and Electrical Engineering, 2011,37(2):205-217.
[5] Diffie W,Hellman M E.New Directions in Cryptography[J].IEEE Transactions on Information Theory,1976,22 (6):29-40.
[6] Shamir A.Identity-based Cryptosystem and Signature Schemes[C]//Advances in Cryptology-Crypto'84.Heidelberg,Germany:Springer,1984:47-56.
[7] Hsien B T,Sun H M,Hwang T,et al.An Improvement of Saeednia's Identity-based Key Exchange Protocol[C]// Proceedings of Information Security Conference.[S.l.]: IEEE Press,2002:41-43.
[8] Tseng Y M,Jan J K,Wang C H.Cryptanalysis and Improvement of an Identity-based Key Exchange Protocol[J].Journal of Computers,2002,14(3):17-22.
[9] H?lbl M,Welzer T.Two Improved Two-party Identitybased Authenticated Key AgreementProtocols[J].Computer Standards&Interfaces,2009,31(6):1056-1060.
[10] Shim K.Cryptanalysis of Two Identity-based Authenticated Key Agreement Protocols[J].IEEE Communications Letters,2012,16(4):554-556.
[11] 李曉航,王宏霞,張文芳.認(rèn)證理論及應(yīng)用[M].北京:清華大學(xué)出版社,2009.
[12] LaMacchia B,Lauter K,Mityagin A.Stronger Security of Authenticated Key Exchange[C]//Proceedings of ProvSec'07.[S.l.]:Springer-verlag,2007:1-16.
[13] 趙建杰,谷大武.eCK模型下可證明安全的雙方認(rèn)證密鑰協(xié)商協(xié)議[J].計(jì)算機(jī)學(xué)報(bào),2011,34(1):47-54.
編輯 金胡考
Improved Identity-based Authenticated Key Exchange Protocols
GAO Lili,LI Shundong
(School of Computer Science,Shaanxi Normal University,Xi'an 710119,China)
Based on the difficulty of the discrete logarithm assumption,H?lbl et al(Computer Standards&Interfaces, 2009,No.6)presented two identity-based authenticated key exchange protocols.The first protocol,denoted by HW1, improved Hsieh et al's protocol which makes it immune against Tseng et al's attack(Journal of Computers,2002, No.3),while the second protocol,denoted by HW2,improves the efficiency of Tseng's protocol.Shim et al analyzes these two protocols,and then shows that the HW1 can not resist the man-in the-middle attack and the impersonation attack,and the HW2 can not resist the impersonation attack(IEEE Communications Letters,2012,No.4).This paper conducts a detailed analysis on the flaw,and finds the reason of the protocols are tampered,making use of the Hash function,authenticates the information to prevent the information is tampered,it proposes improved protocols based on these two protocols,and analyzes the security of improved protocols.The results suggest that the improved protocols can resist the man-in-the-middle-attack and the impersonation attacks,they are safe and feasible.
key exchange;identity-based;man-in-the-middle attack;impersonation attack;Hash function;discrete logarithm problem
1000-3428(2014)11-0113-05
A
TP309
10.3969/j.issn.1000-3428.2014.11.022
國(guó)家自然科學(xué)基金資助面上項(xiàng)目“高性能保密計(jì)算算法與協(xié)議研究”(61070189);國(guó)家自然科學(xué)基金資助面上項(xiàng)目“云計(jì)算與云存儲(chǔ)若干關(guān)鍵問(wèn)題研究”(61272435)。
高麗麗(1988-),女,碩士研究生,主研方向:密碼學(xué),信息安全;李順東,教授、博士生導(dǎo)師。
2013-11-18
2013-12-17E-mail:fly0323@126.com
中文引用格式:高麗麗,李順東.基于身份認(rèn)證的密鑰交換改進(jìn)協(xié)議[J].計(jì)算機(jī)工程,2014,40(11):113-117.
英文引用格式:Gao Lili,Li Shundong.Improved Identity-based Authenticated Key Exchange Protocols[J].Computer Engineering,2014,40(11):113-117.