高麗麗,李順東
(陜西師范大學計算機科學學院,西安710119)
基于身份認證的密鑰交換改進協(xié)議
高麗麗,李順東
(陜西師范大學計算機科學學院,西安710119)
基于離散對數的困難性假設,H?lbl等人提出了2個基于身份認證的密鑰交換協(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)。通過分析Shim等人提出的攻擊方案,找出這2個協(xié)議能夠被篡改的原因,分別提出改進的HW1和HW2協(xié)議,利用Hash函數對傳輸的信息做Hash驗證,以防止信息被篡改。對改進協(xié)議進行可行性證明和安全性分析,結果表明,2種協(xié)議能夠有效抵抗中間人攻擊和偽裝攻擊,具有較高的安全性。
密鑰交換;基于身份;中間人攻擊;偽裝攻擊;Hash函數;離散對數問題
網絡技術,特別是基于互聯(lián)網的工具的不斷成熟與發(fā)展,傳統(tǒng)的事務處理、商業(yè)活動以及政府服務等越來越通過網絡實施,大大加快了社會信息化的發(fā)展,對計算機和網絡系統(tǒng)的依賴性也越來越大,信息系統(tǒng)中的安全問題勢必會影響到信息產業(yè)的應用和發(fā)展。要保證信息的安全性,一個有效的解決辦法就是利用密碼術。密碼學是信息安全的基礎和關鍵,利用密碼技術,可以實現(xiàn)信息的保密性、完整性、認證性和抗抵賴性。密碼協(xié)議是實現(xiàn)網絡通信和網絡體系、分布式系統(tǒng)和電子商務安全運行的核心組成部分,是安全系統(tǒng)的主要保障手段和工具,密鑰交換是保密通信的前提和保證,是實施其他密碼協(xié)議的關鍵,是公鑰基礎設施的基礎。認證密鑰交換協(xié)議,作為更可靠的密鑰交換協(xié)議,在密碼學與信息安全領域具有很強的實際意義。
密碼學中的一個核心問題是在有敵手控制的網絡中如何實現(xiàn)安全可靠的通信,為了解決這個問題,實體之間必須共享一個密鑰并利用現(xiàn)有的技術來實現(xiàn)安全通信。密鑰交換協(xié)議就是這樣一個機制,它允許2個或多個用戶在開放的網絡環(huán)境中通過協(xié)商,建立一個便于保密通信的會話密鑰,從而實現(xiàn)安全通信。如果協(xié)議能夠使參與者確信除了指定的用戶之外,其他任何參與者都不能得到會話密鑰,則稱此類密鑰交換協(xié)議為認證密鑰交換協(xié)議,這類協(xié)議將認證和密鑰交換協(xié)議結合在一起,是網絡通信中應用最廣泛的協(xié)議。近年來,不少可認證的密鑰交換協(xié)議被提出[1-4],其中也有不少協(xié)議被攻破,因此,設計出更為安全的密鑰交換協(xié)議具有重大意義。
1976年,Diffie和Hellman提出了公鑰密碼學的概念[5],同時給出了第一個密鑰交換協(xié)議,即Diffie-Hellman協(xié)議。1984年,Shamir提出了基于身份的密碼學概念[6],在該體制下,終端用戶可以任意選取一個身份字符串作為自己的公鑰,存在一個可信的密鑰生成中心(KGC),秘密持有一個主私鑰,將主私鑰和用戶身份結合生成用戶私鑰。Hsieh等人在2002年,在Saeednia協(xié)議的基礎上,通過使用模乘運算和模冪運算減少計算花費,提出了一個改進的基于身份認證的密鑰協(xié)商協(xié)議[7]。同年,Tseng等人指出Hsieh協(xié)議不能抵抗密鑰泄露偽裝攻擊,并給出了攻擊方案。在2007年,Tseng對Hsieh協(xié)議進行了改進,并給出了一個高效的密鑰協(xié)商協(xié)議[8],改進后的協(xié)議能夠滿足所有安全屬性。2009年,H?lbl等人提出了2個基于身份認證的密鑰交換協(xié)議[9]:HW1協(xié)議和HW2協(xié)議。2012年,Shim等人分析了這2個協(xié)議[10],本文針對這2個協(xié)議存在的缺陷,利用Hash函數對協(xié)議進行改進,并對改進后的協(xié)議進行安全性分析。
2.1 Hash函數
Hash函數在密碼學中扮演著重要的角色,下面回顧一下Hash函數的概念和基本性質[11]。
定義1(Hash函數) 在密碼學中,Hash函數是一個映射,滿足h:{0,1}*→{0,1}n,其中,{0,1}*表示任意長度的比特串的集合;{0,1}n代表長度為n比特的二進制串集合。消息x∈{0,1}*的像h(x)稱為x的Hash值。
定義2(碰撞) 設x,x′∈{0,1}*是2個不同的消息,如果h(x)=h(x′),則稱x和x′是Hash函數h的一個碰撞。
為了保證Hash函數應用的安全性,要求找出Hash函數的碰撞在計算上是困難的。依據找出Hash函數碰撞的情況,可將Hash函數分為3類:
(1)單向Hash函數:設h是一個Hash函數,給定一個Hash值y,如果尋找一個消息x,使得y= h(x)是計算上不可行的,則稱h是單向Hash函數。
(2)弱抗碰撞Hash函數:設h是一個Hash函數,任給一個消息x,如果尋找另一個不同的消息x′,使得h(x)=h(x′)是計算上不可行的,則稱h是弱抗碰撞Hash函數。
(3)強抗碰撞Hash函數:設h是一個Hash函數,如果尋找2個不同的消息x和x′,使得h(x)= h(x′)是計算上不可行的,則稱h是強抗碰撞Hash函數。
一個密碼學上的安全Hash函數h應具有以下性質:對任意的消息x,計算h(x)是容易的;h是單向的;h是弱抗碰撞的,或是強抗碰撞的。
2.2 eCK模型
eCK模型是賦予敵手強攻擊力的雙方認證密鑰交換協(xié)議的安全模型,該模型具體描述如下[12-13]:
證書管理中心:eCK模型需要一個可信第三方證書管理中心(CA)驗證每個參與者的長期公鑰與其身份的綁定情況,所有通過該驗證的參與者(包括敵手)均有資格參與協(xié)議。
敵手:敵手M為一個主動攻擊者,它被模擬為一個概率多項式時間圖靈機。eCK模型允許敵手任意監(jiān)聽、延遲、重放和修改消息等。
本文通過一個挑戰(zhàn)者和敵手M之間的游戲定義雙方認證密鑰交換協(xié)議的安全性。在該游戲中, M被允許進行以下的預言機查詢,并且這些查詢是無序的:
(2)Long-term Key Reveal(A):敵手M通過此查詢獲得參與者A的長期私鑰。
(5)Establish Party(A):敵手M通過此查詢可以在CA上注冊與參與者A相同的公鑰。通過此查詢,M可以發(fā)起未知密鑰共享攻擊。
在游戲最后,M輸出b′∈{0,1}作為對b的判斷,若b=b′,則稱敵手M贏得了此游戲。
基于以上描述,本文定義以下概念:
(1)敵手沒有對參與者A和B進行過Long-term Key Reveal查詢或Ephemeral Key Reveal查詢。
H?lbl等人提出了2種基于身份認證的密鑰交換協(xié)議,即HW1協(xié)議和HW2協(xié)議[7],協(xié)議包括3個階段:系統(tǒng)建立階段,私鑰生成階段和密鑰交換階段。
3.1 HW1協(xié)議
私鑰生成階段:
密鑰交換階段:
3.2 HW2協(xié)議
密鑰交換階段:
Shim等對H?lbl等基于身份認證的密鑰交換協(xié)議進行了分析,提出了中間人攻擊和偽裝攻擊協(xié)議[10]。
4.1 對HW1協(xié)議的中間人攻擊
敵手Eve竊聽Alice和Bob的通信信息,攻擊過程如下:
(1)當Alice發(fā)送給Bob信息{uA,tA,IDA}時,Eve竊聽該信息,選取一個隨機數α,計算t′A=gα-vA,將{uA,t′A,IDA}發(fā)送給Bob。類似地,當Bob發(fā)送給Alice信息{uB,tB,IDB}時,Eve竊聽該信息,選取一個隨機數 β,計算 t′B=gα-vB,將{uB,t′B,IDB}發(fā)送給Alice。
(2)Alice接收到{uB,t′B,IDB}后,計算密鑰KAB= (gvB·t′B)vA+rA=(gvB·gβ-vB)vA+rA=(gvB·gβ-vB)vA+rA= (gβ)vA+rA,類似地,Bob接收到{uA,t′A,IDA}后,計算密鑰KBA=(gvA·t′A)vB+rB=(gα)vB+rB。
(3)Eve分別計算密鑰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é)議沒有密鑰驗證過程,Alice和Bob不知道他們的密鑰是不同的,Eve可以解密Alice用KAB加密的消息,以及Bob用KBA加密的消息。
4.2 對HW1協(xié)議的偽裝攻擊
假設敵手 Eve向 Bob偽裝 Alice,攻擊過程如下:
(2)Bob接收到{uA,tA=grA,IDA}后,計算共享密鑰KBA=(xB·tA)vB+rB=(gvA·grA)vB+rB=g(rA+vA)(rB+vB)。
(3)Eve截獲到{uB,tB,IDB}后,Eve計算共享密鑰KAB=(xA·tB)t=g(rA+vA)(rB+vB)。
最后,Eve向Bob偽裝成功,和Bob共享密鑰K=KAB=KBA。
4.3 對HW2協(xié)議的偽裝攻擊
假設敵手 Eve向 Bob偽裝 Alice,攻擊過程如下:
(2)Bob接收到{uA,tA=grA,IDA}后,計算共享密鑰: KBA=(xB·tA)vB+rB=(gvA·grA)vB+rB=g(rA+vA)(rB+vB)。
(3)Eve截獲到{uB,tB,IDB}后,Eve計算共享密鑰KAB=(xA·tB)τ=g(rA+vA)(rB+vB)。
最后,Eve向Bob偽裝成功,和Bob共享密鑰K= KAB=KBA。
5.1 改進的HW1協(xié)議
5.1.1 抗中間人攻擊協(xié)議
對HHW1協(xié)議,在密鑰交換階段,加入密鑰驗證,強化密鑰交換階段的安全性。系統(tǒng)建立階段和私鑰生成階段保持不變,過程參考3.1節(jié)。
密鑰交換階段:
5.1.2 抗偽裝攻擊協(xié)議
對HW1協(xié)議,利用Hash函數,強化密鑰交換階段的安全性。系統(tǒng)建立階段和私鑰生成階段保持不變,過程參考3.1節(jié)。
密鑰交換階段:
5.2 改進的HW2協(xié)議
對HW2協(xié)議,利用Hash函數,強化密鑰交換階段的安全性。系統(tǒng)建立階段和私鑰生成階段保持不變,過程參考3.2節(jié)。
密鑰交換階段:
6.1 抗中間人攻擊協(xié)議的安全性分析
基于Hash函數的弱抗碰撞性,Eve要找到滿足條件的數是困難的,故改進后的協(xié)議能夠抵抗Shim等提出的對HW1協(xié)議的中間人攻擊。
6.2 抗偽裝攻擊協(xié)議的安全性分析
改進的HW1協(xié)議,記作HWP1協(xié)議,在eCK模型下證明HWP1協(xié)議的安全性,改進的HW2協(xié)議的安全性可用相同的方法得到證明,限于篇幅,本文只給出HWP1協(xié)議的詳細證明過程。
定義5(計算Diffie-Hellman(CDH)問題) 設G是一個q階乘法循環(huán)群,g是G的生成元,如果已知g,ga,gb(a,b是正整數),求gab的成功概率PrCDH是可忽略的,則稱CDH問題是困難的。
定理 假設H是隨機預言機,CDH假設對群G是成立的,則HWP1協(xié)議在eCK模型下是安全的。
證明:敵手M以偽造攻擊的方式區(qū)分真實的會話密鑰和隨機值。本文將證明,如果敵手M以不可忽略的概率贏得游戲,則可構造一個模擬器S,它可利用M以不可忽略的概率解決CDH問題。
給定S的挑戰(zhàn)(U,V),S將與M按照HWP1協(xié)議流程執(zhí)行查詢,并適當修改誠實的參與者返回的數據,以期在M贏得游戲后S可以解決CDH問題。
首先,S選取由某2個參與者Alice和Bob參與的匹配會話,S將這2個會話中的grA用U代替,grB用V代替。假設S最多可選取k次會話,故選擇的概率為2/k2。
攻擊開始后,M以1/k2的概率選中上述會話中的Alice的會話作為Test會話。顯然,此時Bob的會話稱為Test會話的匹配會話。若M成功地進行了偽裝攻擊,S一定能解決CDH問題。
事實上,共享密鑰 K=g(rA+hA1vA)(rB+hA2vB),若 M獲得了K,它一定可以計算出grArB,通過進行Hash運算得到hA1,hA2。根據之前的假設,K=CDH(U, V)。因此,若M成功地進行了偽裝攻擊,S一定能解決CDH問題。
綜上,定理得證。
本文通過對H?lbl等人基于身份認證的密鑰交換協(xié)議和Shim等人的攻擊協(xié)議進行研究與分析,找出H?lbl等協(xié)議存在的不足,并對該協(xié)議進行改進和安全性分析。分析結果表明,改進后的協(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] 李曉航,王宏霞,張文芳.認證理論及應用[M].北京:清華大學出版社,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模型下可證明安全的雙方認證密鑰協(xié)商協(xié)議[J].計算機學報,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
國家自然科學基金資助面上項目“高性能保密計算算法與協(xié)議研究”(61070189);國家自然科學基金資助面上項目“云計算與云存儲若干關鍵問題研究”(61272435)。
高麗麗(1988-),女,碩士研究生,主研方向:密碼學,信息安全;李順東,教授、博士生導師。
2013-11-18
2013-12-17E-mail:fly0323@126.com
中文引用格式:高麗麗,李順東.基于身份認證的密鑰交換改進協(xié)議[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.