侍偉敏
(北京工業(yè)大學(xué)計算機學(xué)院,北京 100124)
IBE身份認證技術(shù)可采用用戶的身份標識,如電話號碼、e-mail地址和身份證號碼等,這些公鑰與用戶的身份綁定,不需要公鑰證書來確認用戶身份[1-3].IBE不需要對證書進行管理.當(dāng)KGC向用戶分發(fā)私鑰時,需要在KGC和用戶之間建立安全的通道以保證用戶私鑰的安全.
目前已提出的安全私鑰分發(fā)協(xié)議,可分為三大類:1)基于多信任機構(gòu)的方式,如Boneh等[4]提出了門限共享私鑰分發(fā)協(xié)議,該方案由n個對等的可信第三方KGC共享主密鑰,用戶的私鑰以t門限的方式產(chǎn)生.Chen等[5]提出了另一種基于多信任機方式即基于多密鑰的用戶私鑰分發(fā)協(xié)議,該方案與Boneh等[4]方案不同的是n個KGC獨立產(chǎn)生主密鑰,且用戶的私鑰是這n個不同的主密鑰和產(chǎn)生.盡管以上2種方案解決了單個KGC的用戶私鑰托管問題,然而當(dāng)用戶申請私鑰時,不僅需要向多個可信機構(gòu)認證自己的身份,而且還需要與它們建立安全通道來確保私鑰的安全傳輸;2)基于用戶選擇密文方式,如Gentry[6]提出了一種基于證書即CBE(certificate-based encryption)方案、Al-Riyami等[7]又提出了一種基于公鑰即CLPKE(certificateless publice key encryption)方案,這2種方案不僅解決了用戶私鑰的私管問題而且用戶私鑰的傳輸不需要安全的通道,但是由于公鑰無法直接從用戶的身份標識中獲取,因此這兩種方案無法體現(xiàn)IBE的優(yōu)勢;3)基于盲技術(shù)方式,如Lee等[8]提出一種安全私鑰分發(fā)協(xié)議,為解決私鑰托管問題,該方案采用單個KGC為用戶產(chǎn)生私鑰且有多個KPA來保護用戶私鑰.
本文對LeeB協(xié)議進行了安全性分析并指出該協(xié)議是不安全的且不能解決IBE的私鑰托管問題,針對該協(xié)議存在的安全漏洞提出一種改進方案.
1.1.1 系統(tǒng)參數(shù)建立(KGC)
1)產(chǎn)生素數(shù)階為q的2個群(G1,+),(G2,.)以及雙曲線映射e;G1×G1→G2;
3)選擇2個hash函數(shù)H1,H2;
4)保密s0,公開{G1,G2,e,P,H1,H2,P0};
1.1.2 系統(tǒng)公鑰產(chǎn)生
KPAi(i=1,2,3,…,n)隨機產(chǎn)生主密鑰,相應(yīng)的公鑰Pi=siP.若 Y′=P0,且 KPA1,KPA2,…,KPAn依次計算Y,最終獲取系統(tǒng)公鑰Y=s0s1,…,snP.
1.1.3 用戶私鑰產(chǎn)生
1)身份標識為ID的用戶A隨機產(chǎn)生主密鑰x∈Z*q,計算X=xP;
2)用戶A發(fā)送{ID,X}給KGC,KGC需要做以下工作
①檢查用戶A的身份;
②計算用戶A的公鑰QID=H1(ID,ID0,ID1,ID2,…,IDn),其中ID,ID0,ID1,ID2,…,IDn分別表示A、KGC、KPA1、…KPAn實體的身份標識;
④簽名Q0′,即并發(fā)送}給用戶A;
4)用戶A計算自己的私鑰
LeeB私鑰分發(fā)協(xié)議中的KGC負責(zé)驗證用戶的身份及產(chǎn)生部分私鑰給用戶.用戶發(fā)送{ID,X,Q0′,Sig0(Q0′)}給KPA1,KPA1驗證Sig0(Q0′),若驗證成功計算Q1′.該過程存在一安全漏洞,即KPA1通過{ID,X,Q0′,Sig0(Q0′)}信息不能確認用戶的身份:一方面KPA1無法確認Q0′的值是否由該用戶ID生成;另一方面該協(xié)議沒有提供其他機制來確認{ID,X,Q0′,Sig0(Q0′)}是否由該用戶所發(fā).如果KCG被攻擊,惡意者便可利用此漏洞成功的獲取用戶的私鑰,其攻擊過程如下.
1)用戶A發(fā)送{ID,X}給KGC
2)惡意的KGC要想獲取用戶A的私鑰,需要做以下工作
由以上分析可知,LeeB私鑰分發(fā)協(xié)議沒有真正解決IBE中用戶私鑰的托管問題.
2.1.1 系統(tǒng)公鑰產(chǎn)生
2)x保密,公開身份密鑰對(QID,Qx).2.1.3 用戶私鑰產(chǎn)生
1)用戶A計算Tx=xP0,并發(fā)送{Tx}給KGC;
3)用戶A接收到信息{Q0}以后計算Dx=x-1P,發(fā)送信息{Dx,Q0}給KPAi(i=1,2,…,t);
4)KPAi(i=1,2,…,t)接收到信息{Dx,Q0}后驗證?,和,計算Qi=siQ0,并發(fā)送{Qi}給用戶A;
5)用戶A計算自己的私鑰SID
?range系數(shù);
②驗證私鑰的正確性通過e(SI′D,P)=e(Qx,Y);
2.2.1 安全性分析
在改進方案中,KPAs通過基于用戶A身份密鑰的短簽名Dx值來確認其身份,其中短簽名Dx的安全性是基于G1的離散對數(shù)問題,惡意的KGC不能獲取用戶A的密鑰x來偽造該用戶的簽名,由以下過程分析可知,即使KGC被攻擊者控制,也無法獲取用戶A的私鑰.
1)用戶A發(fā)送{Tx}給KGC,惡意的KGC企圖獲取用戶A的私鑰,
①計算Q0=s0Qx;
③發(fā)送{Dx*,Q0}給KPAi(i=1,2,…,t);
2)KPAi(i=1,2,…,t)接收到},驗證)成功 ,驗證即
同樣的,在KGC為用戶A頒發(fā)部分私鑰Q0的過程,通過e(Tx,QID)=e(P0,Qx)來確認用戶A的身份,其中Tx是基于用戶A身份密鑰的短簽名,同以上分析過程一樣,最終惡意的KPAs也不獲取用戶的私鑰.因此,在改進方案中,只要KGC和KPAs不同時受到攻擊者控制,攻擊者是無法獲取用戶的私鑰,從而解決了LeeB方案中用戶私鑰托管問題.
2.2.2 效率分析
改進方案不僅解決了LeeB協(xié)議的私鑰托管問題而且在效率上也有很大提高,一方面改進方案通過共享主密鑰s,為用戶產(chǎn)生部分私鑰信息.而文獻LeeB方案中需為KGC產(chǎn)生n對公私鑰,額外增加了系統(tǒng)的負擔(dān).另一方面,對比兩種方案的運算量,改進方案的運算量明顯較少,如表1所示.改進方案與LeeB方案相比盡管增加了3n次乘法運算,但
表1 效率對比Table1 Efficiency comparison
注:t≤n哈希和對運算分別減少了2n次和4n次運算量,而其中對運算最耗時,因此改進方案的實現(xiàn)效率明顯提高.
對LeeB私鑰分發(fā)協(xié)議進行了安全性分析,并針對該協(xié)議存在的安全問題提出一種改進方案.在改進方案中,基于用戶身份密鑰解決了LeeB私鑰分發(fā)協(xié)議中的用戶私鑰的托管問題,改進方案與LeeB方案相比,減少了4n次對運算和2n次哈希運算.
[1]SHAMIR A.Identity-based cryptosystem and signature schemes[C]∥Advances in Cryptology 1984.Berlin:Springer-Verlag,1984:47-53.
[2]PATERSON K G.ID-based signatures from pairings on elliptic curves[J].Electronics Letters,2003,38(18):1025-1026.
[3]BONEH D,FRANKLINM.Identity based encryption from weil pairing[C]∥Advances in Cryptology 1984.Berlin:Springer-Verlag,2001:213-229.
[4]BONEH D,FRANKLIN M.Short signature from weil pairing[C]∥Boyd CAsiacrypt2001,Berlin:Springer-Verlag,2001:514-532.
[5]CHEN L,HARRISON K,SOLDERA D,etal.Applications of multiple trustauthorities in pairing based cryptosystems[C]∥Proc of Infrastructure Security Conference.Berlin:Springer-Verlag,2002:260-275.
[6]GENTRY C.Certificate-based encryption and the certificate revocation problem[C]∥Advances in Cryptology-EUROCRYPT 2003.Berlin:Springer-Verlag,2003:272-293.
[7]AL-RIYAMI S,PATERSON K.Certificateless public key cryptography[C]∥Advances in Cryptology-Asiacrypt'2003.Berlin:Springer-Verlag,2003:452-472.
[8]LEE B,BOYD E,DAESON E,et al.Secure key issuing in ID-based cryptography[C]∥In Proceedings of the Second Australian Information Security Workshop-AISW 2004.New Zealand:Australian Computer Society,Inc,2004:69-74.