李亞軍,劉憶寧,林丹珠
桂林電子科技大學(xué)數(shù)學(xué)與計(jì)算科學(xué)學(xué)院,廣西桂林 541004
抗內(nèi)部人攻擊的安全組密鑰分發(fā)協(xié)議
李亞軍,劉憶寧,林丹珠
桂林電子科技大學(xué)數(shù)學(xué)與計(jì)算科學(xué)學(xué)院,廣西桂林 541004
為了保障群組通信過程中的內(nèi)容安全與成員的身份認(rèn)證,需要一次性會話密鑰對通信內(nèi)容進(jìn)行加密,密鑰建立協(xié)議的主要任務(wù)是在群組通信開始前完成會話密鑰的產(chǎn)生與分發(fā),分為密鑰協(xié)商協(xié)議與密鑰傳輸協(xié)議。詳細(xì)分析了Harn組密鑰分發(fā)協(xié)議與Nam組密鑰分發(fā)協(xié)議的安全漏洞,在Harn協(xié)議與Nam協(xié)議中,群組通信的成員可以獲取其他成員的長期秘密數(shù)據(jù),即協(xié)議無法抵抗內(nèi)部人攻擊?;诿孛芄蚕砝碚摚O(shè)計(jì)了安全的組密鑰分發(fā)協(xié)議,能夠有效抵抗內(nèi)部人攻擊與外部人攻擊。
組密鑰分發(fā)協(xié)議;會話密鑰;秘密共享;內(nèi)部人攻擊
當(dāng)前,群組通信系統(tǒng)正在成為一種重要的通信形式,即同一個通信組中的多個成員實(shí)現(xiàn)信息的共同交流,典型的群通信應(yīng)用包括網(wǎng)絡(luò)游戲、分布式計(jì)算、視頻音頻電話會議以及網(wǎng)絡(luò)社區(qū)等。由于網(wǎng)絡(luò)的開放性使群組通信的安全性顯得非常重要,尤其是合法的群組通信成員也有可能竊取群組內(nèi)部其他成員的秘密數(shù)據(jù),使得群組通信協(xié)議不僅要防范外部攻擊者,更需要抵抗來自群組內(nèi)部的攻擊。
通常,通信組成員需要共享一個會話密鑰(也稱為組密鑰)以實(shí)現(xiàn)通信內(nèi)容的加解密運(yùn)算及驗(yàn)證成員的身份。組密鑰建立協(xié)議,是兩個或多個通信主體產(chǎn)生一個共同的密鑰的過程,是保證參與者在開放的網(wǎng)絡(luò)中實(shí)現(xiàn)安全通信的一種重要手段,組密鑰建立協(xié)議分為密鑰協(xié)商協(xié)議和密鑰分發(fā)協(xié)議。密鑰協(xié)商協(xié)議要求每一個參與者都參與到會話密鑰的生成過程,而密鑰分發(fā)協(xié)議則依靠可信任的密鑰產(chǎn)生中心(KGC)選擇并安全分發(fā)密鑰給通信成員。
1976年Diffie-Hellman給出了最早的雙方密鑰協(xié)商協(xié)議(DH協(xié)議)[1],若群組通信有M個成員,則需要協(xié)商生成C2M=M(M-1)/2個密鑰,基于DH協(xié)議思想的密鑰管理方案被廣泛研究[2-5]。1982年的Ingemarsson協(xié)議要求M個成員必須先連接成一個環(huán),為了確保安全,每位成員都要進(jìn)行M次指數(shù)運(yùn)算,而且每次密鑰建立前都要重復(fù)這樣的過程[2]。1988年E.H.Lu等人設(shè)計(jì)了基于插值多項(xiàng)式的會議密鑰分配協(xié)議[3],由于其高效安全的特點(diǎn)而被廣泛引用;1989年,Laih等人的方案實(shí)現(xiàn)了將組密鑰分發(fā)給(t-1)個成員的通信組[6];1999年,Pieprzyk等人給出了一種基于可信模型的會話密鑰協(xié)商協(xié)議[7];2003年G.Saze基于一簇向量空間秘密共享方案提出了一種密鑰預(yù)分配方案[8]。2007年Chang-Lin-Chen將Diffie-Hellman密鑰交換協(xié)議和密封鎖結(jié)合后,提出了一種會議密鑰分配協(xié)議[4],此協(xié)議應(yīng)用插值多項(xiàng)式來隱藏一些解鎖信息,但經(jīng)過分析,Chang-Lin-Chen提出的協(xié)議不能抵御被動攻擊。
2010年,以Shamir的Secret Sharing方案[9]為基礎(chǔ),Harn-Lin設(shè)計(jì)了組密鑰分發(fā)協(xié)議(HL協(xié)議)[10],受到了廣泛的關(guān)注[11-13]。在HL協(xié)議中,KGC將組密鑰廣播發(fā)送,只有被授權(quán)的成員能恢復(fù)出組密鑰k,非授權(quán)成員即使接收到廣播的信息,也無法恢復(fù)出組密鑰。2011年,Junghyun Nam等人指出了HL協(xié)議未能有效抵御內(nèi)部人發(fā)起的重放攻擊,并給出了改進(jìn)方案,記為Nam協(xié)議。另外,HL協(xié)議在文獻(xiàn)[14]中被用于設(shè)計(jì)無線傳感器網(wǎng)絡(luò)的門限密鑰共享模型。
本文分析指出,Nam協(xié)議雖然可以阻止內(nèi)部人發(fā)起的重放攻擊,但并未有效消除HL協(xié)議的安全漏洞,即內(nèi)部攻擊者仍然可以獲得目標(biāo)對象的長期秘密數(shù)據(jù)。因此無論是HL協(xié)議、Nam協(xié)議都不可避免地存在這一問題。為消除來自內(nèi)部攻擊者的安全威脅,提出了安全的組密鑰分發(fā)協(xié)議,可有效地抵抗內(nèi)部人攻擊和外部人攻擊,從而保證協(xié)議中長期秘密數(shù)據(jù)的安全。
HL群組通信密鑰傳輸協(xié)議主要分為兩個階段:預(yù)備階段、密鑰分發(fā)階段。在預(yù)備階段,KGC選擇安全的素數(shù)p,q,計(jì)算n=pq,將n公布,p,q保密,注冊用戶Ui通過安全信道與KGC共享長期秘密數(shù)據(jù)(xi,yi),(xi,yi)在后續(xù)階段被用來驗(yàn)證身份及恢復(fù)組密鑰;在密鑰分發(fā)階段,KGC按下述步驟將組密鑰分發(fā)給群組成員:
(1)群組通信發(fā)起者將{U1,U2,…,Ut}發(fā)送給KGC,KGC公布{U1,U2,…,Ut}。
(2)Ui發(fā)送Ri作為響應(yīng),(1≤i≤t),Ri∈。
(3)KGC隨機(jī)選擇組密鑰k,基于(0,k)和(xi,yi+Ri),(1≤i≤t)構(gòu)造插值多項(xiàng)式f(x);KGC計(jì)算Pi=f(i),(1≤i≤t),Auth=h(k,U1,U2,…,Ut,R1,R2,…,Rt,P1,P2,…,Pt),其中h(·)是安全hash函數(shù),KGC公布{Auth,P1,P2,…,Pt}。
(4)Ui使用秘密數(shù)據(jù)(xi,yi+Ri)和公開數(shù)據(jù)(1,P1),(2,P2),…,(t,Pt),恢復(fù)t次多項(xiàng)式f(x),計(jì)算群組通信密鑰k=f(0),并根據(jù)Auth驗(yàn)證k的正確性。
說明:
(1)HL協(xié)議除了在預(yù)備階段KGC與Ui傳遞(xi,yi)使用安全信道外,所有信息傳送均使用廣播信道。
(2)HL協(xié)議中的“+”表示Zn上的加法,f(x)∈Zn[x]。
Harn和Lin聲稱,基于Shamir的Secret Sharing協(xié)議的信息論角度的安全性以及n=pq分解的困難性,HL協(xié)議滿足各種安全要求。HL協(xié)議要求KGC是可信任的主體,注冊用戶Ui與KGC之間共享的(xi,yi)是安全的。另外,Harn-Lin也給出了HL+協(xié)議,在密鑰分發(fā)階段驗(yàn)證Ui身份,并在組密鑰分發(fā)完成后增加了確認(rèn)環(huán)節(jié),以增強(qiáng)HL協(xié)議的安全性,步驟如下:
(1)群組通信發(fā)起者發(fā)送{U1,U2,…,Ut}給KGC,KGC公布{U1,U2,…,Ut}。
(2)Ui(1≤i≤t)任選Ri,計(jì)算αi=h(xi,yi,Ri),并公布(αi,Ri)。
(3)KGC驗(yàn)證αi,若正確,則同HL協(xié)議第三步。
(4)同HL第四步。
(5)Ui(1≤i≤t)計(jì)算γi=h(xi,yi,k)并公布,KGC計(jì)算δi=h(xi,yi,k,U1,U2,…,Ut)并公布。
2011年Junghyun Nam等人指出HL及HL+協(xié)議不能抵抗來自內(nèi)部成員的重放攻擊,即不誠信的內(nèi)部成員(即內(nèi)部攻擊者)Uadv可能使用目標(biāo)對象Utar已經(jīng)使用過的(αtar,Rtar)進(jìn)行重放攻擊,獲得Utar與KGC的長期秘密數(shù)據(jù)(xtar,ytar),Uadv的攻擊步驟如下:
(1)Uadv接收Utar已經(jīng)使用過的(αtar,Rtar)并存儲。
(2)Uadv同時向KGC發(fā)起兩個群組密鑰建立申請,兩個群組均只包含Uadv,Utar,Uadv在兩次協(xié)議中使用相同的(αadv,Radv),并且使用存儲的(αtar,Rtar)冒充Utar執(zhí)行協(xié)議。在兩次申請中,KGC均按HL協(xié)議選擇k,構(gòu)造f(x),并發(fā)送相關(guān)信息。
(3)按照HL協(xié)議,Uadv可恢復(fù)KGC構(gòu)造的多項(xiàng)式f(x)=a2x2+a1x+k,f′(x)=a′2x2+a′1x+k′,令g(x)=f(x)-f′(x)=(a2-a′2)x2+(a1-a′1)x+(k-k′),顯然有g(shù)(xadv)=0,g(xtar)=0,故xadv,xtar是g(x)=0的兩個根。根據(jù)二次方程根與系數(shù)的關(guān)系,可以得到xtar=x(a2-a′2)-1(k-k′),即Uadv可以得到目標(biāo)對象Utar的秘密數(shù)據(jù)(xtar,ytar)。
為了抵抗HL及HL+協(xié)議中的內(nèi)部成員發(fā)起的重放攻擊,Nam等給出了改進(jìn)方案(Nam協(xié)議),主要包括:
(1)KGC收到群組通信密鑰建立請求后,隨機(jī)選取ro∈,廣播ro與{U1,U2,…,Ut}。
(2)Ui計(jì)算αi=h(xi,yi,Ri,r0,U1,U2,…,Ut),其中(xi,yi)是Ui與KGC共享的秘密數(shù)據(jù),Ri是Ui的響應(yīng)信息,Ui發(fā)送(αi,Ri)給KGC;KGC驗(yàn)證Ui及Ri的真實(shí)性,若驗(yàn)證出現(xiàn)問題,中止協(xié)議,否則執(zhí)行后續(xù)過程。
(3)后續(xù)步驟同HL+。
Nam協(xié)議、HL協(xié)議、HL+協(xié)議都是基于Shamir的Secret Sharing協(xié)議實(shí)現(xiàn)組密鑰的安全分發(fā),即KGC構(gòu)造通過(t+1)個點(diǎn)(0,k),(xi,yi+Ri)(1≤i≤t)的t次插值多項(xiàng)式f(x),計(jì)算并公布(i,f(i)),(1≤i≤t)。合法用戶Ui使用秘密的(xi,yi+Ri)和公開的(i,f(i)),(1≤i≤t),恢復(fù)f(x)并計(jì)算k=f(0)。
經(jīng)分析,發(fā)現(xiàn)Nam協(xié)議雖然可以阻止內(nèi)部成員的重放攻擊,但內(nèi)部攻擊者仍可以得到目標(biāo)對象與KGC共享的長期秘密數(shù)據(jù)。攻擊步驟詳細(xì)過程如下:
(1)假設(shè)Uadv向KGC發(fā)送三次群組密鑰建立請求(i=1,2,3)。
當(dāng)u2=modn且u0=-f(u1)modn時,可得xtar=u1,ytar=-u0,因此Nam協(xié)議不能抵御內(nèi)部人攻擊,又因?yàn)镹am協(xié)議是對HL協(xié)議的改進(jìn),可知上述攻擊對HL協(xié)議、HL+協(xié)議也有效,即無論是Nam協(xié)議還是HL協(xié)議、HL+協(xié)議,均不能有效抵抗群組通信內(nèi)部人的攻擊。
注:上述過程可以推廣到一般情況,其中Uadv,Utar屬于同一個包含t個成員的通信組,Uadv通過發(fā)送t+1次秘密分割請求給KGC,則可以恢復(fù)出t+1個KGC產(chǎn)生的t次多項(xiàng)式,f1(x),f2(x),…,ft+1(x),滿足ytar+=(tar)(modn),(1≤i≤t+1),與上述方法類似可以根據(jù)克拉默法則求解方程組,從而得到目標(biāo)用戶Utar的秘密數(shù)據(jù)(xtar,ytar)。
5.1 安全的組密鑰分發(fā)協(xié)議
由上述分析過程可知,Nam協(xié)議、HL協(xié)議與HL+協(xié)議均不能有效抵抗內(nèi)部人攻擊的原因在于,根據(jù)Nam協(xié)議與HL協(xié)議,在包含t個成員的通信群組中,每個成員Ui可以根據(jù)與KGC共享的秘密數(shù)據(jù)(xi,yi+Ri)以及P1,P2,…,Pt恢復(fù)相應(yīng)的多項(xiàng)式f(x),且由于Ui的響應(yīng)Ri通過廣播傳送,內(nèi)部攻擊者Uadv可以構(gòu)造以(xtar,ytar)為未知元的方程組,并求出(xtar,ytar)。
為了抵抗群組通信內(nèi)部成員的攻擊,本文給出了安全的組密鑰分發(fā)協(xié)議,分為預(yù)備階段和組密鑰分發(fā)階段。
在預(yù)備階段,KGC選擇并公布安全素數(shù)p,并通過安全信道與注冊用戶Ui傳遞(xi,yi)。
組密鑰分發(fā)階段的信息傳遞均通過廣播信道,具體步驟如下:
(1)KGC收到群組通信密鑰分發(fā)請求后,隨機(jī)選擇ro∈,廣播ro與成員列表{U1,U2,…,Ut}。
(2)Ui(i=1,2,…,t)計(jì)算αi=h(xi,yi,Ri,r0,U1,U2,…,Ut),其中(xi,yi)是Ui與KGC共享的秘密信息,Ri是Ui的響應(yīng)信息;Ui發(fā)送(αi,Ri);KGC驗(yàn)證Ui及Ri的真實(shí)性,若驗(yàn)證出現(xiàn)問題,中止協(xié)議,否則執(zhí)行后續(xù)過程。
(3)KGC隨機(jī)選擇會話密鑰k,并構(gòu)造f(x),使其通過t+1個點(diǎn),即(0,k)和(xi,yi+h(xi,yi,Ri)),(i=1,2,…,t)。KGC將i代入f(x),得Pi=f(i),(1≤i≤t),并計(jì)算Auth=h(k,U1,U2,…,Ut,P1,P2,…,Pt),其中h(·)是安全hash函數(shù),KGC廣播{Auth,P1,P2,…,Pt}。
(4)Ui根據(jù)自己的秘密數(shù)據(jù)(xi,yi+h(xi,yi,Ri))和公開的數(shù)據(jù)(1,P1),(2,P2),…,(t,Pt),恢復(fù)f(x)∈Zn[x],計(jì)算群組通信密鑰k=f(0),并根據(jù)Auth驗(yàn)證k的正確性。
(5)Ui廣播發(fā)送γi=h(xi,yi,k),KGC廣播發(fā)送δi= h(xi,yi,k,U1,U2,…,Ut)供各方確認(rèn)k的正確性。
5.2 安全性分析
定理1假設(shè)一個外部攻擊者得到了群組通信中所有廣播的消息,該外部攻擊者也無法得到通信組密鑰與合法用戶的長期秘密數(shù)據(jù)。
證明外部攻擊者,即不屬于通信群組成員的攻擊者。外部攻擊者可以從廣播信道得到(1,P1),(2,P2),…,(t,Pt),而恢復(fù)一個t次多項(xiàng)式,需要t+1對有效數(shù)據(jù)。外部攻擊者僅有t對數(shù)據(jù),無法得到f(x)的任何信息。因此外部攻擊者無法獲得會話密鑰k,更無法獲得群組成員Ui的(xi,yi)。
定理2假設(shè)安全組密鑰分發(fā)協(xié)議正常運(yùn)行,任何合法用戶Uj無法獲知其他用戶Ui與KGC之間共享的秘密數(shù)據(jù)(xi,yi)。
證明假設(shè)Uadv與攻擊目標(biāo)Utar同屬于一個通信組(該通信組有t個成員的),顯然Uadv可以恢復(fù)出KGC構(gòu)造的多項(xiàng)式f(x)并得到組密鑰,但要想得到(xtar,ytar),則需要構(gòu)造關(guān)于xtar,ytar的方程。雖然f(xtar)=ytar+ h(xtar,ytar,Rtar)成立,且已知Rtar,但由于h(xtar,ytar,Rtar)對于Uadv是不確定的,使得h(xtar,ytar,Rtar)掩蔽了ytar,Uadv無法得到關(guān)于xtar,ytar的方程。即內(nèi)部攻擊者Uadv無法得到目標(biāo)對象Utar與KGC的長期秘密(xtar,ytar)。因此改進(jìn)方案可以有效抵御內(nèi)部人攻擊。
針對HL協(xié)議及Nam協(xié)議進(jìn)行分析,構(gòu)造了以目標(biāo)成員的長期秘密數(shù)據(jù)為未知元的多元方程組,分析指出無論是HL協(xié)議還是Nam協(xié)議,均不能抵抗通信群組內(nèi)部成員的攻擊。為解決這一安全漏洞,設(shè)計(jì)了可抵抗內(nèi)部攻擊的安全組密鑰分發(fā)協(xié)議,有效地保障群組通信的內(nèi)容安全與身份驗(yàn)證。
[1]Diffie W,Hellman M E.New directions in cryptography[J]. IEEE Transactions on Information Theory,1976,IT-22:644-654.
[2]Ingemarsson,Tang D,Wong C K.A conference key distribution system[J].IEEE Transactions on Information Theory,1982,IT-28:714-720.
[3]Lu E H,Hwang W Y,Harn L,et al.A conference key distribution system based on the Lagrange interpolating polynomial[C]//The 7th Annual Joint Conference of IEEE Computer and Communication Society,NewOrleans,LA,1988:1092-1094.
[4]Chang C C,Lin C H,Chen C Y.A conference key distribution scheme using interpolating polynomials[C]//International Conference on Multimedia and Ubiquitous Engineering,Seoul,Korea,2007:963-969.
[5]Fernandes N C,Duarte O C M B.A lightweight groupkeymanagement protocol for secure ad hoc-networkrouting[J].Computer Networks,2011,55:759-778.
[6]Laih C,lee J,Harn L.A new threshold scheme and its application in designing the conference key distribution cryptosystem[J].Information Processing Letters,1989,32:95-99.
[7]Li C H,Pieprzyk J.Conference key agreement from secret sharing[C]//The 4th Australasian Conference on Information Security and Privacy,Wollongong,NSW,Australia,1999,1587:64-76.
[8]Saze G.Generation of key predistribution schemes using secret sharing scheme[J].Discrete Applied Math,2003,128:239-249.
[9]Shamir.How to share a secret[J].Comm ACM,1979,22(11):612-613.
[10]Harn L,Lin C.Authenticated group key transfer protocol based on secret sharing[J].IEEE Transactions on Computers,2010,59(6):842-846.
[11]Nam J,Kim M,Paik J,et al.Cryptanalysis of a group key transfer protocol based on secret sharing[C]//Third International Conference on Future Generation Information Technology(FGIT 2011),Jeju Island,Korea,2011,7105:309-315.
[12]Sun Yi,Wen Qiaoyan,Sun Hongxiang,et al.An authenticated group key transfer protocol based on secret sharing[C]// 2012 International Workshop on Information and Electronics Engineer,Harbin,China,2012:403-408.
[13]Nam J,Paik J,Lee B,et al.An improved protocol for server-aided authenticated group key establishment[C]// ICCSA 2011,Santander,Spain,2011,6786:437-446.
[14]柳亞男,王箭,杜賀.無線傳感器網(wǎng)絡(luò)門限密鑰共享模型[J].電子與信息學(xué)報,2011,33(8):1913-1918.
LI Yajun,LIU Yining,LIN Danzhu
School of Mathematics and Computational Science,Guilin University of Electronic Technology,Guilin,Guangxi 541004,China
Group key establishment protocol is used to establish a one-time session key among all participating entities, which ensures the message only recognizable for authorized member.Harn and Lin propose a group key transfer protocol based on Shamir’s secret sharing,which is then improved by Nam,et al.to resist the replay attack from inside adversary. In fact,both Harn and Nam are vulnerable against the insider attack unlike their claim.A modification of authenticated secure group key transfer protocol is proposed to achieve the insider attack-resistance and outsider attack-resistance.
group key transfer protocol;session key;secret sharing;insider attack
A
TP309
10.3778/j.issn.1002-8331.1210-0335
LI Yajun,LIU Yining,LIN Danzhu.Secure group key transfer protocol against insider attack.Computer Engineering and Applications,2014,50(6):68-71.
國家自然科學(xué)基金(No.61363069);廣西研究生教育創(chuàng)新計(jì)劃資助項(xiàng)目(No.YCSZ2013069)。
李亞軍(1989—),女,碩士生,研究方向:信息安全;劉憶寧(1973—),男,博士,副教授,研究方向:信息安全;林丹珠(1989—),女,碩士生,研究方向:信息安全。E-mail:ynliu@guet.edu.cn
2012-10-31
2012-12-15
1002-8331(2014)06-0068-04
CNKI網(wǎng)絡(luò)優(yōu)先出版:2013-01-11,http://www.cnki.net/kcms/detail/11.2127.TP.20130111.0953.026.html