國佃利
(中國電子信息產(chǎn)業(yè)集團(tuán)有限公司第六研究所,北京 100083)
隨著信息技術(shù)的快速發(fā)展,移動(dòng)設(shè)備(手機(jī)、掌上電腦、筆記本電腦)廣泛應(yīng)用到各種網(wǎng)絡(luò)服務(wù)(電子銀行、電子商務(wù)、電子政務(wù))中,大量的敏感數(shù)據(jù)在公共信道中進(jìn)行傳輸,由于網(wǎng)絡(luò)的開放性,涉及用戶財(cái)產(chǎn)及隱私的數(shù)據(jù)面臨巨大的安全風(fēng)險(xiǎn)。身份認(rèn)證機(jī)制能夠保護(hù)數(shù)據(jù)完整性、機(jī)密性和可用性。此外,它可以鑒別用戶是否具有對(duì)系統(tǒng)資源訪問和使用的權(quán)限,進(jìn)而防止非授權(quán)用戶非法獲取網(wǎng)絡(luò)資源,保障系統(tǒng)和數(shù)據(jù)安全。近幾年,網(wǎng)絡(luò)信息泄露時(shí)間頻發(fā),人們極其關(guān)注個(gè)人的隱私保護(hù)?;趧?dòng)態(tài)身份的認(rèn)證與密鑰協(xié)商方案通過更新登錄請(qǐng)求中的用戶身份保護(hù)了用戶隱私,并實(shí)現(xiàn)了服務(wù)器與匿名用戶間的身份認(rèn)證與密鑰協(xié)商[1-3]。
基于混沌映射的加密機(jī)制通過切比雪夫多項(xiàng)式創(chuàng)新性地實(shí)現(xiàn)了密鑰交換協(xié)議[4-5],且無需處理耗時(shí)的模指數(shù)運(yùn)算或橢圓曲線中標(biāo)量乘法運(yùn)算,運(yùn)算效率比其他基于因式分解和離散對(duì)數(shù)問題的傳統(tǒng)公鑰系統(tǒng)都要高,引起了研究人員的廣泛關(guān)注。因此許多基于切比雪夫混沌映射的身份認(rèn)證與密鑰協(xié)商方案廣泛地應(yīng)用于網(wǎng)絡(luò)安全管理協(xié)議中。盡管基于切比雪夫混沌映射的密鑰交換協(xié)議在效率上存在較大優(yōu)勢(shì),但是由于其自身固有的運(yùn)算機(jī)制,該協(xié)議存在一個(gè)比較嚴(yán)重的安全問題,敵手通過一個(gè)給定的密文即可恢復(fù)出明文消息[6]。因此,大多數(shù)基于混沌映射的身份認(rèn)證與密鑰協(xié)商方案均存在較為嚴(yán)重的安全風(fēng)險(xiǎn)[7-9]。
本文分析了基于切比雪夫混沌映射的密鑰交換協(xié)議及其存在的安全問題,隨后利用每個(gè)用戶獨(dú)有的秘密值代替了統(tǒng)一的密鑰來計(jì)算工作密鑰,因此避免了由切比雪夫混沌密碼系統(tǒng)固有缺陷帶來的安全問題。隨后提出了一個(gè)新的基于混沌映射的身份認(rèn)證與密鑰協(xié)商方案,實(shí)現(xiàn)了用戶匿名性與不可追蹤性。與最近的相關(guān)方案相比,該方案無論在效率還是安全性方面均具備優(yōu)勢(shì)。此外,通過BAN-logic證明了該方案能夠滿足用戶與服務(wù)器間的認(rèn)證性[10]。
令n為一個(gè)整數(shù),x∈[-1,1]是一個(gè)變量。n階的切比雪夫多項(xiàng)式Tn(x)定義為Tn(x)= cos(n×arccosx)。切比雪夫多項(xiàng)式Tn(x)=cos(n×arccosx)的遞推公式如下所示:
T0(x)=1,
T1(x)=x,
T2(x)=2x2-1,
…,
Tn+1(x)=2xTn(x)-Tn-1(x),n≥1。
切比雪夫多項(xiàng)式滿足半群性質(zhì),因此對(duì)于p,q∈N,Tp(Tq(x))=Tq(Tp(x))。
Tp(Tq(x))=cos(p×arccos(cos(q×arccosx)))
=cos(pq×arccosx)
=Tpq(x)
=Tq(Tp(x))
下面介紹攻擊者如何利用一個(gè)給定的密文恢復(fù)出消息[6]。Alice利用(x,Ts(x))作為自己的公鑰,s作為自己的私鑰。之后Bob將利用Alice的公鑰消息M進(jìn)行加密,并且發(fā)送給她。首先Bob選取隨機(jī)數(shù)r,并計(jì)算Tr(x),Tr·s(x)=Tr(Ts(x)),C=M·Tr·s(x)。最后Bob將密文(Tr(x),C)發(fā)送給Alice。
然而,如果獲取了公鑰(x,Ts(x))和密文(Tr(x),C),敵手可以通過以下步驟恢復(fù)出消息M。
(1)計(jì)算r′∈P使得Tr′(x)=Tr(x),其中
(2)比較Tr′s(x)=Tr′(Ts(x))。
顯然該攻擊是可行的:
Tr·s(x)=Ts·r(x)=Ts(Tr(x))
=Ts(Tr′(x))=Ts·r′(x)
=Tr′·s(x)。
基于切比雪夫混沌映射提出了一個(gè)新的適用于移動(dòng)網(wǎng)絡(luò)下的動(dòng)態(tài)身份認(rèn)證與密鑰協(xié)商方案。該方案包括四個(gè)主要部分:注冊(cè)階段、登錄階段、驗(yàn)證階段、口令更新階段。
(1)用戶ui選取自己的身份IDi與口令pwi,并生成隨機(jī)數(shù)k。接著計(jì)算hpwi=h(pwi∥k),隨后將身份IDi與隱藏口令pwi的秘密值hpwi通過安全信道發(fā)送至服務(wù)器S進(jìn)行注冊(cè)。
(2)服務(wù)器S接收到用戶ui的注冊(cè)請(qǐng)求{IDi,hpwi}后,S計(jì)算Hi=h(s∥IDi),fi=h(hpwi∥IDi)和gi=Efi(Hi∥Ts(sin(Hi))),并將已經(jīng)計(jì)算好的gi通過安全信道發(fā)送給用戶ui。
(3)用戶ui將隨機(jī)數(shù)k與gi存儲(chǔ)到自己的移動(dòng)設(shè)備中。
用戶ui輸入自己的身份身份IDi與口令pwi,隨后移動(dòng)設(shè)備生成隨機(jī)數(shù)a,并獲取時(shí)間戳t1,計(jì)算hpwi=h(pwi∥k),fi=h(hpwi∥IDi),(Hi∥Ts(sin(Hi)))=Dfi(gi),C=Ta(sin(Hi)),Key=Ta(Ts(sin(Hi))),KIDi=Key⊕IDi,V=h(t1∥Key)。隨后移動(dòng)設(shè)備將登錄請(qǐng)求{C,KIDi,V,t1}發(fā)送到服務(wù)器S。
(1) 服務(wù)器接收到用戶ui的登錄請(qǐng)求{C,KIDi,V,t1}后,S首先驗(yàn)證時(shí)間戳t1是否有效,如果該時(shí)間戳已過期,S直接終止該會(huì)話;否則,繼續(xù)執(zhí)行步驟(2)。
(2)S計(jì)算Key=Ts(C)=Ts(Ta(sin(Hi))),IDi=KIDi⊕Key,V′=h(t1∥Key),并驗(yàn)證V′是否與登錄請(qǐng)求中的V相等。如果相等,那么登錄用戶ui是一個(gè)合法的授權(quán)用戶;否則,認(rèn)定該登錄請(qǐng)求是非法的。服務(wù)器S繼續(xù)計(jì)算會(huì)話密鑰λ=h(Key∥t1∥t2)與驗(yàn)證信息w=h(Key∥C∥Hi∥t1∥t2),其中t2是一個(gè)新的時(shí)間戳。隨后將回復(fù)信息{w,t2}發(fā)送給Ua。
(3)收到回復(fù)信息后,用戶ui同樣驗(yàn)證時(shí)間戳t2的有效性。如果驗(yàn)證失敗,ui結(jié)束此次回話;否則,認(rèn)定該消息是合法的。ui繼續(xù)計(jì)算w′=h(Key∥IDi∥Hi∥t2)并驗(yàn)證w′?=w。如果等式成立,用戶ui鑒定服務(wù)器S是可信的,并完成相互認(rèn)證;否則,ui放棄此次登錄。
BAN-logic[10]是目前使用最廣泛的一種形式化分析密碼協(xié)議的方法,其通過形式化的方法分析認(rèn)證方案,并證明任一協(xié)議參與方能夠鑒別其他參與方的合法性。在這一部分,通過BAN-logic證明用戶與服務(wù)器間滿足相互認(rèn)證性質(zhì)。以下是BAN-logic形式化分析方法中用到的符號(hào):
(2)#(X):消息X在有效期內(nèi);
(6)(X,Y):消息X或Y是消息(X,Y)中的一部分;
(7)
(8){X}Y:消息X在密鑰Y作用下利用對(duì)稱密碼進(jìn)行加密;
BAN-logic主要的邏輯推理假定:
以下是BAN-logic證明方案安全性的目標(biāo):
以下是該方案中信息交互的理想化形式:
Message 1:ui→S:(C,KIDi,t1,
Message 2:S→Ui:(t2,
由于系統(tǒng)處理的是射頻信號(hào),故需要注意布線時(shí)的阻抗問題,本設(shè)計(jì)采用T-G-G-B(頂層-地-地-底層)的層疊結(jié)構(gòu),通過調(diào)整線寬及層間距達(dá)到阻抗匹配。對(duì)于高速信號(hào)走線,由于趨膚效應(yīng)造成走線周圍具有電磁場(chǎng),容易造成相鄰線材的耦合干擾。為使走線間耦合干擾達(dá)到可以忽略,布線時(shí)需要滿足3W原則(走線中心間隔滿足3倍線寬)。
為了進(jìn)一步分析該方案,做出以下假設(shè):
A.3:ui|≡#(t2)
A.4:S|≡#(t1)
A.5:S|≡u(píng)i?(t1,Key)
A.6:ui|≡S?(Key,IDi,t1,t2)
A.7:S|≡t2
A.8:ui|≡t1
基于以上假設(shè)和規(guī)則,運(yùn)用BAN-logic證明方案的具體過程如下:
根據(jù)消息1得到:
S?(C,KIDi,t1,
根據(jù)消息判定規(guī)則得到:
S?
根據(jù)假設(shè)A.2 和消息本義規(guī)則得到:
S|≡u(píng)i|~(t1,Key)。
根據(jù)假設(shè)A.4和消息有效性規(guī)則得到:
S|≡#(t1,Key)。
根據(jù)S|≡u(píng)i|~(t1,Key)和消息驗(yàn)證規(guī)則得到:
S|≡u(píng)i|≡(t1,Key)。
根據(jù)假設(shè)A.5和消息判定規(guī)得到:
S|≡(t1,Key)。
根據(jù)消息判定規(guī)則得到:
S|≡Key,S|≡t1。
根據(jù)λ=h(Key,t1,t2)和假設(shè) A.7得到:
根據(jù)Message 2得到:
ui?(t2,
根據(jù)消息判定規(guī)則得到:
ui?
根據(jù)假設(shè)A.1 和消息本義規(guī)則得到:
ui|≡S|:(Key,IDi,t1,t2)。
根據(jù)假設(shè)A.3 和消息有效性規(guī)則得到:
ui|≡#(Key,IDi,t1,t2)。
根據(jù)ui|≡S|:(Key,IDi,t1,t2)和消息驗(yàn)證規(guī)則得到:
ui|≡S|≡(Key,IDi,t1,t2)。
根據(jù)假設(shè)A.6 和消息判定規(guī)則得到:
ui|≡(Key,IDi,t1,t2)。
根據(jù)消息判定規(guī)則得到:
ui|≡Key,ui|≡t2。
根據(jù)λ=h(Key,t1,t2)和假設(shè)A.8得到:
在安全性與效率上比較了新提出的方案與之前相關(guān)方案[7-9]。在安全屬性上的比對(duì)結(jié)果與在效率上比對(duì)結(jié)果如表2和表3所示。為了方便表達(dá),定義下列符號(hào)為:Th:計(jì)算一次單向哈希函數(shù)所需的時(shí)間;Tsym:計(jì)算一次對(duì)稱加密所需要的時(shí)間;Te:計(jì)算一次模指數(shù)運(yùn)算所需要的時(shí)間;Tc:計(jì)算一次切比雪夫多項(xiàng)式所需要的時(shí)間。
表2 安全性比較
表3 效率比較
在表2中,改進(jìn)方案可以滿足所有的安全屬性,而其他方案或多或少存在一些問題。通過表3,改進(jìn)方案要比其他方案效率更好,并且能夠提供更好的安全性。
本文首先分析了基于切比雪夫混沌映射的密鑰協(xié)商方案及其存在的固有的安全風(fēng)險(xiǎn),通過一個(gè)唯一的密鑰代替了一個(gè)統(tǒng)一的密鑰創(chuàng)新性地解決了上述安全問題。隨后提出了一個(gè)安全性更好的身份認(rèn)證與密鑰協(xié)商方案。特別指出的是,本文利用BAN-logic證明了該方案能夠?qū)崿F(xiàn)參與方間的相互認(rèn)證。與之前相關(guān)方案對(duì)比,此方案更適用于移動(dòng)網(wǎng)絡(luò)環(huán)境中。