文小華,王相金,沈忠華
(杭州師范大學(xué)理學(xué)院,浙江杭州 310036)
基于雙線性對和智能卡的遠(yuǎn)程用戶認(rèn)證方案
文小華,王相金,沈忠華*
(杭州師范大學(xué)理學(xué)院,浙江杭州 310036)
文章提出了一種使用雙線性對和智能卡的遠(yuǎn)程用戶認(rèn)證方案.在方案中,如果登錄請求為有效時,則遠(yuǎn)程系統(tǒng)接受請求,并允許用戶登入系統(tǒng).該方案利用了橢圓曲線上離散對數(shù)的困難性,使得計算成本更低,安全性更高.另外,該方案主要在注冊階段和登錄階段加強(qiáng)了安全性,能夠抵御重放攻擊、內(nèi)部攻擊、假冒服務(wù)器攻擊,同時提供了靈活的密碼修改方式,并實(shí)現(xiàn)了雙向認(rèn)證.
認(rèn)證方案;智能卡;雙線性對;遠(yuǎn)程用戶;雙向認(rèn)證
隨著計算機(jī)網(wǎng)絡(luò)的普及和電子商務(wù)、網(wǎng)絡(luò)辦公自動化的迅猛發(fā)展,越來越多的資源和應(yīng)用都是通過網(wǎng)絡(luò)遠(yuǎn)程獲取的,如何確保特定的資源只能被特定的合法用戶訪問,即如何在不安全的信道中對遠(yuǎn)程用戶的身份進(jìn)行合法鑒別已是一個十分重要的問題.為此人們提出了很多技術(shù)方案,其中基于智能卡和用戶口令的解決方案以其方便性和實(shí)用性得到了廣泛的應(yīng)用.
1981年,Lamport[1]首次提出了一個基于智能卡遠(yuǎn)程用戶認(rèn)證方案,Hwang-Li[2]指出了Lamport方案中的不足,并提出了一個新的使用智能卡的遠(yuǎn)程用戶認(rèn)證方案.但在Hwang-Li新方案中仍有不少安全漏洞,Shen-Lin-Hwang[3]和Chang-Hwang[4]分別對該方案進(jìn)行了不同的攻擊,并提出了改進(jìn)的方案.隨后,沈忠華和于秀源[5-6]通過對以上方案漏洞的分析,借鑒Hwang-Li方案的認(rèn)證模式,利用二元一次不定方程解的不定性[7]和離散對數(shù)問題的難解性,提出了一個新的遠(yuǎn)程用戶認(rèn)證方案.
2006年,Das[8]提出了一種使用雙線性對的遠(yuǎn)程用戶認(rèn)證方案.Chou[9]給出了一種有效的攻擊方法,使得在公開信道上截取到合法用戶登錄信息的攻擊者,均可偽造出新的合法登錄信息,并針對此缺點(diǎn)給出了一種改進(jìn)方案.但Goriparthi[10]指出其改進(jìn)方案仍不安全,并給出了偽造攻擊和重放攻擊.
該文在沈忠華方案和Das方案的基礎(chǔ)上,利用二元一次不定方程解的不定性和橢圓曲線上的雙線性對,提出了一個基于雙線對和智能卡的遠(yuǎn)程用戶認(rèn)證方案.該方案密鑰量小,計算效率高,而且在注冊階段和登入階段加強(qiáng)了安全性,能夠抵御重放攻擊、口令猜測攻擊、假冒服務(wù)器攻擊,同時提供了靈活的密碼修改方式,并實(shí)現(xiàn)了雙向認(rèn)證.
設(shè)G1是橢圓曲線群上階為素數(shù)q的加法循環(huán)群,G2是與G1同階的乘法循環(huán)群,P是G1的生成元,稱e:G1×G1→G2是一個雙線性映射,如果它滿足以下性質(zhì):
1)對稱性:給定元素P,Q,R∈G1,a,b∈Z*q,有:
2)非退化性:存在元素Q,R∈G1,使得e(Q,R)≠1.
3)可計算性:對任意的Q,R∈G1存在一個有效的算法計算e(Q,R).
1)離散對數(shù)問題(DLP):給定兩元素Q,R∈G1,求出整數(shù)a∈Z*q使得Q=aR是困難的;2)計算Diffie-Hemllen(Computational Diffie-Hellman,CDH)問題:給定P,aP,bP,求abP是困難的;3)雙線性Diffie-Hellman(Bilinear Diffie-Hellman,BDH)問題:P,aP,bP,cP,求e(P,P)abc是困難的.
引理[11]存在整數(shù)x,y,使得gcd(a,b)=ax+by成立.
該方案也包括初始階段、注冊階段、登錄階段和認(rèn)證階段.方案的設(shè)計主要在注冊階段和登錄階段加強(qiáng)了安全性.在注冊時,由用戶自主地選擇口令,口令的設(shè)計基于橢圓曲線上離散對數(shù)問題的難解性,并且由認(rèn)證服務(wù)中心(authentication server,以下簡稱AS)的系統(tǒng)管理者選用身份檢測函數(shù),防止不法用戶的偽造.在登錄階段又結(jié)合二元一次不定方程解的不定性提高了安全性.在認(rèn)證階段利用雙線性對的原理進(jìn)行認(rèn)證.這樣可以有效地抵御各種攻擊,包括服務(wù)中心(系統(tǒng)管理者)內(nèi)部人員的攻擊.
由AS做如下工作:I1):選擇群G1和G2,其中,G1是橢圓曲線上以P為生成元構(gòu)成的加法群,其階為素數(shù)q,G2是與G1同階的乘法群;I2):定義一個雙線性映射:e:G1×G1→G2和一個單向的哈希函數(shù)H:G1→zq;I3):選擇一個xs∈zq,作為AS的系統(tǒng)密鑰,被秘密保存;I4):選擇函數(shù)RK(·),RK(·)為一個合法身份的檢測函數(shù),由AS秘密掌握控制;I5):公開系統(tǒng)參數(shù)<G1,G2,e(·),P,q,H(·)>.
R1):用戶選擇自己的身份ID和口令pw,pw∈Zq,然后用戶計算Y=pw×P,然后將(ID,Y)發(fā)送給AS;R2):AS收到用戶發(fā)送來的(ID,Y)以后,為用戶選擇唯一的身份標(biāo)識符r,并進(jìn)行如下計算:選擇一個隨機(jī)數(shù)k∈Zq,計算:Z=k×P,β=(xs·k)×Y,CID=RK(ID⊕r);R3):AS將帶有信息(CID,β,q,H(·),Z)的智能卡發(fā)送給用戶.
假定在時刻T1用戶向AS提出登錄要求,通過讀卡系統(tǒng),用戶首先將自己的身份ID和自己設(shè)置的口令pw輸入智能卡,然后智能卡進(jìn)行如下計算:
L1):計算:Y=pw×P;L2):計算:sp=H(β);L3):利用Euclid算法求出a和b滿足apw+bsp=gcd(pw,sp);L4):計算d=gcd(pw,sp)modq;L5):計算:N1=(a×pw)Z,N2=b×Z,M=d×β;L6):將登錄信息L=(ID,CID,N1,N2,Y,M,sp,T1)發(fā)送給AS;
2.4.1 認(rèn)證中心驗(yàn)證用戶的有效性
假定AS在T2時刻收到用戶的登錄信息L=(ID,CID,N1,N2,Y,M,SP,T1),則通過以下步驟進(jìn)行驗(yàn)證:V1):驗(yàn)證用戶U身份ID的結(jié)構(gòu)形式是否正確,如不符合系統(tǒng)認(rèn)可的形式,則拒絕登錄;V2):通過來驗(yàn)證用戶U身份ID的合法性,如果該式子不成立,則拒絕登錄;V3):驗(yàn)證T2-T1≤ΔT是否成立,這里ΔT表示因消息傳輸而耽擱的合理時間間隔.如果不成立,則拒絕登錄;V4):驗(yàn)證是否相等,如果不相等,拒絕登錄;V5):AS計算:選擇一個隨機(jī)數(shù)ε,N3=(xs·ε)×N2,N4=ε×P,然后將(N3,N4,Y,T2),發(fā)送給用戶的智能卡.
2.4.2 智能卡驗(yàn)證AS的有效性
若智能卡T3時刻收到AS發(fā)來的請求信息(N3,N4,Y,T2),然后智能卡進(jìn)行如下的工作:
V6):驗(yàn)證T3-T2≤ΔT是否成立,這里ΔT表示因消息傳輸而耽擱的合理時間間隔.如果不成立,則退出登錄;V7):驗(yàn)證e(N3,Y)=e(N4,β)b是否相等,如果不相等,退出登錄.
用戶在一次成功登入到系統(tǒng)后可以進(jìn)行密碼修改:
1)用戶選擇新的口令pw′,pw′∈Zq,然后用戶計算Y=pw′×P,然后將(ID,Y′)發(fā)送給AS.此項工作可通過AS注冊系統(tǒng)預(yù)設(shè)的計算模型進(jìn)行;2)AS收到用戶發(fā)送來的(ID,Y)以后,進(jìn)行如下計算:選擇一個隨機(jī)數(shù)k′∈Zq,計算:Z=k′×P,β′=(xs·k′)×Y;3)AS將帶有信息(CID,β′,q,H(·),Z′)發(fā)送給智能卡并覆蓋原有的信息.
1)驗(yàn)證階段v4中等式的證明如下:
2)驗(yàn)證階段V7中等式的證明如下:
1)由于在雙向認(rèn)證階段,認(rèn)證雙方都要檢查對方認(rèn)證請求信息時間的有效性,即消息傳輸?shù)R時間是否在合理的ΔT內(nèi),因而,攻擊者不可能重傳截獲的登入請求信息通過認(rèn)證,故可以有效抵抗重放攻擊;
2)在不知道用戶真實(shí)身份ID的前提下,攻擊者無法偽造,從而不能成功登錄.假如攻擊者在注冊階段獲知了AS發(fā)送給用戶的注冊信息(CID,β,q,H(·),Z),則由于CID=RK(ID⊕r),而作為身份驗(yàn)證函數(shù)RK(·)是由AS秘密掌握的,并且r是AS為用戶U選擇惟一的身份標(biāo)識號,這些除了AS,別人無從得知.因此攻擊者無法通過身份的驗(yàn)證;
3)假設(shè)攻擊者在L6階段截獲L=(ID,CID,N1,N2,Y,M,SP,T1)登錄信息,從式子N1=(a×pw)Z,N2=b×Z求出a和b,由于橢圓曲線上離散對數(shù)的困難性,攻擊者無法求出a和b.因而在等式apw+bsp=gcd(pw,sp)中只知道一個sp的情況下是無法求出pw的;
4)假如一個合法用戶的智能卡被敵手盜用,由于不知道正確口令,登錄時只能輸入錯誤口令pw′.智能卡計算Y′=pw′×P,顯然,故不能通過驗(yàn)證;
5)假定攻擊者截獲L=(ID,CID,N1,N2,Y,M,SP,T1)登錄信息,也不能通過解求出xs,因?yàn)檫@是一個DLP問題.假定截獲注冊信息(CID,β,q,H(·),Z)與(ID,Y),通過等式Z=k′×P和β=(xs·k)×Y也求不出xs,由于這是一個橢圓曲線上的離散對數(shù)問題,故攻擊者無法以AS的名義偽造智能卡;
6)由于AS秘密掌握了系統(tǒng)密鑰xs和身份檢查函數(shù)RK(·),因此,即使是已成功登錄的合法用戶也無法以AS的名義給別人發(fā)放智能卡;
7)可抵抗內(nèi)部攻擊:在該方案中,在注冊時只把(ID,Y)發(fā)送給了AS,故AS并不知道用戶的密碼pw,因而無法冒充用戶并以口令為pw登錄服務(wù)器;
8)可抵抗假冒AS的攻擊,由于該方案是一個雙向認(rèn)證方案,攻擊者不可能假冒服務(wù)器,誘騙用戶輸入敏感信息.
文章提出一種基于雙線性對和智能卡的遠(yuǎn)程用戶認(rèn)證方案,其困難性是依據(jù)橢圓曲線上的離散對數(shù)難解性.由于使用橢圓曲線上的雙線性對,使得密鑰量減少、計算效率提高.在注冊階段用戶自主選擇口令,認(rèn)證中心不保存用戶密碼,增加了身份檢測函數(shù),在登入階段利用二元一次不定方程解的不定性和橢圓曲線上離散對數(shù)問題的難解性設(shè)計了登錄過程,增強(qiáng)了安全性.該方案可以有效防止內(nèi)部人員的攻擊、假冒服務(wù)器攻擊、重放攻擊、口令猜測等攻擊.相比以往的方案,該方案安全性更好,計算效率更高,并且合法登錄的用戶可以自主修改密碼,實(shí)現(xiàn)了雙向認(rèn)證.
[1]Lamport L.Password authentication with insecure communication[J].Communication of the ACM,1981,24(11):770-772.
[2]Hwang M S,Li Hua.A newremote user authentication scheme using smart cards[J].IEEE Trans Consumer Electronic,2000,46(1):28-30.
[3]Shen J J,Lin C W,Hwang M S.A modified remote user authentication scheme using smart cards[J].IEEE Trans Consumer Electronic,2003,49(2):414-416.
[4]Chang C C,Hwang K F.Some forgery attack on a remote user authentication scheme using smart cards[J].Informatics,2003,14(3):289-294.
[5]Shen Zhonghua.A new modified remote user authentication scheme using smart cards[J].Appl Math J Chinese Univ Ser B,2008,23(3):371-376.
[6]沈忠華,于秀源.一個新的智能卡遠(yuǎn)程用戶認(rèn)證方案[J].浙江大學(xué)學(xué)報:理學(xué)版,2008,32(5):145-149.
[7]于秀源.復(fù)合加密的公鑰密碼系統(tǒng)[M]//密碼學(xué)進(jìn)展.北京:科學(xué)出版社,1992:55-58.
[8]Das M,Saxena A,Gulati V,etal.A novel remote user authentication scheme using bilinear pairings[J].Computers &Security,2006,25(3):184-189.
[9]Chou J S Y.Chen,Lin J Y.Improvement of Dasetal.'s remote user authentication scheme[EB/OL].(2005-12-05)[2011-01-20].http://eprint.iacr.org/2005/450.pdf.
[10]Goriparthi T,Das M L,Negi A,etal.Cryptanalysis of recently proposed remote user authentication schemes[EB/OL].(2006-03-06)[2010-10-25].http://eprint.iacr.org/2006/028.pdf.
[11]華羅庚.數(shù)論導(dǎo)引[M].北京:科學(xué)出版社,1956.
A Remote User Authentication Scheme Based on Bilinear Pairings and Smart Card
WEN Xiao-h(huán)ua,WANG Xiang-jin,SHEN Zhong-h(huán)ua
(College of Science,Hangzhou Normal University,Hangzhou 310036,China)
The paper presened a remote user authentication scheme based on bilinear pairings and smart card.In this scheme,the remote system receives user login request and allows login to the remote system if the login request is valid.This scheme uses elliptic curve discrete logarithm problem to lower the computation cost and highten the security.In addition,the scheme enhances the security in registration phase and login phase.The scheme can withstand replay attack,forgery attack and insider attack.The password can be changed by the user at any time.The scheme achieves mutual authentication.
authentication scheme;smart card;bilinear pairings;remote user;mutual authentication
TP309 MSC2010:94A60
A
1674-232X(2011)05-0403-04
10.3969/j.issn.1674-232X.2011.05.004
2011-02-23
浙江省自然科學(xué)基金項目(Y6110782);浙江省教育廳科研基金項目(Y201016497);杭州市高校重點(diǎn)實(shí)驗(yàn)室科技創(chuàng)新項目(20100331T11);杭州師范大學(xué)科研項目(2010QN26).
文小華(1984—),男,湖北松滋人,應(yīng)用數(shù)學(xué)專業(yè)碩士研究生,主要從事數(shù)論與密碼學(xué)研究.
*通信作者:沈忠華(1973—),男,浙江杭州人,副教授,主要從事數(shù)論與密碼學(xué)、信息安全技術(shù)、電子商務(wù)等研究.E-mail:ahtshen@126.com