王淑華,陳振龍
(1.浙江工商大學(xué)統(tǒng)計(jì)與數(shù)學(xué)學(xué)院,杭州310018;2.紹興文理學(xué)院數(shù)理信息學(xué)院,浙江 紹興312000)
無線傳感器網(wǎng)絡(luò)WSN(Wireless Sensor Networks)集微電技術(shù)、傳感器技術(shù)、通信技術(shù)于一體,可廣泛應(yīng)用于教育、軍事、醫(yī)療、交通等諸多領(lǐng)域,擁有巨大的應(yīng)用潛力和商業(yè)價(jià)值,引起了國內(nèi)外廣泛的關(guān)注和研究[1-5]。安全問題是無線傳感器網(wǎng)絡(luò)不得不考慮的一個(gè)重要問題,本文主要探討的是無線傳感器網(wǎng)絡(luò)的密鑰協(xié)商問題。除現(xiàn)有無線傳感器網(wǎng)絡(luò)本身存在的安全問題,如由于無線鏈路媒體的開放性、終端的移動(dòng)性、動(dòng)態(tài)變化的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)、協(xié)作算法、缺乏集中監(jiān)視和管理點(diǎn)以及沒有明確的防線,使得無線傳感器網(wǎng)絡(luò)容易遭到各種各樣的攻擊,如數(shù)據(jù)竊聽、信息竄改、惡意跟蹤等。未來的無線傳感器網(wǎng)絡(luò),由于網(wǎng)絡(luò)的復(fù)雜性、管理的復(fù)雜性,使得其要面臨更復(fù)雜的安全問題。以提供安全、可靠的信息通信為目標(biāo)的密鑰協(xié)商是無線傳感器網(wǎng)絡(luò)安全研究最為重要、最為基本的內(nèi)容,有效的密鑰協(xié)商協(xié)議也是其他安全機(jī)制,如安全路由、安全定位、安全數(shù)據(jù)融合及針對特定攻擊的解決方案等的基礎(chǔ)。相對于傳統(tǒng)網(wǎng)絡(luò),無線傳感器網(wǎng)絡(luò)更易受到包括被動(dòng)竊聽、數(shù)據(jù)篡改和重發(fā)、偽造身份、拒絕服務(wù)、節(jié)點(diǎn)俘獲等安全威脅和攻擊,使得這些研究成果一般不能直接應(yīng)用于無線傳感器網(wǎng)絡(luò)。雖然無線傳感器網(wǎng)絡(luò)在現(xiàn)今信息技術(shù)領(lǐng)域是一個(gè)研究熱點(diǎn),但絕大部分研究都集中于無線傳感器網(wǎng)絡(luò)的互聯(lián)技術(shù),而對無線傳感器網(wǎng)絡(luò)的密鑰協(xié)商協(xié)議的研究較少[6-9]。因此,如何保證無線傳感器網(wǎng)絡(luò)安全是無線傳感器網(wǎng)絡(luò)研究領(lǐng)域里的一項(xiàng)極其重要內(nèi)容。為了解決無線傳感器網(wǎng)絡(luò)通信存在的安全性問題,需要設(shè)計(jì)兼具安全性和有效性,并且適用于無線傳感器網(wǎng)絡(luò)的的密鑰協(xié)商協(xié)議。
隨著量子計(jì)算與量子計(jì)算機(jī)的研究與發(fā)展,逐漸發(fā)現(xiàn)目前傳統(tǒng)的非對稱密碼體制所使用的難解問題將不再安全[10-14]。1997年,貝爾實(shí)驗(yàn)室的Shor提出了分解大整數(shù)和求解離散對數(shù)的量子算法,并在文獻(xiàn)[13]中證明了其運(yùn)算的時(shí)間復(fù)雜度是多項(xiàng)式級別的。利用量子計(jì)算機(jī)可以攻破經(jīng)典的DSA體制,RSA密碼體制,ECC體制等非對稱密碼體制。因此,研究量子計(jì)算機(jī)環(huán)境下安全的非對稱密碼體制是非常重要的,并且已經(jīng)成為當(dāng)前信息安全與密碼學(xué)界研究的重點(diǎn)方向與熱點(diǎn)。后量子時(shí)代的安全性已經(jīng)成為信息安全與密碼學(xué)家重點(diǎn)關(guān)注的問題。格公鑰密碼作為后量子計(jì)算機(jī)時(shí)代非對稱密碼體制的典型代表,在密碼學(xué)領(lǐng)域內(nèi)占居著非常重要的地位[15-21]。
無線傳感器網(wǎng)絡(luò)部署后,所有節(jié)點(diǎn)需要在密鑰協(xié)商后才能參與通信,新的節(jié)點(diǎn)要想加入網(wǎng)絡(luò)也必須通過密鑰協(xié)商才能獲得其他節(jié)點(diǎn)認(rèn)可。目前,針對無線傳感器網(wǎng)絡(luò)的密鑰協(xié)商協(xié)議可分為兩大類:基于對稱密碼體制和基于非對稱密碼體制。當(dāng)傳感器節(jié)點(diǎn)能量被耗盡或者被確認(rèn)為非法節(jié)點(diǎn),網(wǎng)絡(luò)必須及時(shí)清除淘汰該節(jié)點(diǎn),傳感器節(jié)點(diǎn)之間的密鑰協(xié)商用以保證通信傳感器節(jié)點(diǎn)的合法性,是無線傳感器網(wǎng)絡(luò)安全通信的前提?;趯ΨQ密碼體制的密鑰協(xié)商協(xié)議存儲(chǔ)消耗大,抗捕獲能力差;而基于非對稱密碼體制的密鑰協(xié)商協(xié)議計(jì)算消耗大,拓展性、健壯性差。大量已有研究工作致力于減小非對稱密碼體制的計(jì)算開銷與能耗;提出更為安全、合理的密鑰協(xié)商協(xié)議。鑒于以上問題,本文提出了一種有效的無線傳感器網(wǎng)絡(luò)密鑰協(xié)商協(xié)議。有關(guān)無線傳感器網(wǎng)絡(luò)密鑰協(xié)商協(xié)議可以參考無線傳感器網(wǎng)絡(luò)相關(guān)安全問題的綜述等[22-24]。
利用格上堅(jiān)實(shí)的安全基礎(chǔ)和更高的計(jì)算效率,本文提出一種基于格的無線傳感器網(wǎng)絡(luò)密鑰協(xié)商協(xié)議,通過概率輸出認(rèn)證信息,使輸出認(rèn)證信息的分布與認(rèn)證主體的私鑰無關(guān)。節(jié)點(diǎn)之間只在需要通信時(shí)才建立相應(yīng)配對密鑰,能相互驗(yàn)證密鑰的有效性,僅需較少步驟就能夠以很高的概率進(jìn)行密鑰協(xié)商。建立的配對密鑰是基于對稱密碼體制,這樣通信的效率會(huì)提高很多。
定義1 在m維向量空間Rm中取n(m≥n)個(gè)線性無關(guān)的向量 b1,b2,…,bn∈Rm,定義由這 n 個(gè)向量生成的格為:
式中:向量 b1,b2,…,bn稱為格的基。 若定義 m×n維矩陣 B,其列向量分別為 b1,b2,…,bn,則由矩陣B生成的格可以定義為:
式中:n稱為格的秩;m稱為格的維數(shù);m=n的格被成為滿秩格。
格上的難解問題主要有最短向量問題(SVP)、最近向量問題(CVP)、最短獨(dú)立向量問題(SM)等。另外,一般加密有關(guān)的方案安全性基于錯(cuò)誤學(xué)習(xí)(LWE)問題,簽名相關(guān)方案的安全性基于小整數(shù)解(SIS)問題。下面給出部分問題的具體定義。
定義2 最短向量問題SVP(Shortest Vector Problem)問題:給定秩為n的格L(B)?Zm的一組基B,找到一個(gè)非零向量u∈L(B),使得對格上的任意向量v∈L(B)滿足如下條件:
有些格上的最短向量不一定是唯一的,比如:如果u是一個(gè)最短向量,那么-u也同樣是一個(gè)最短向量。1981年,Boas在文獻(xiàn)[16]中證明了最短向量難解問題在?∞范式下是NP難解問題。1998年,Ajtai等人在文獻(xiàn)[17]中證明了最短向量問題在?2范式下是NP難解問題。
定義3 最近向量問題CVP(Closest Vector Problem)問題:給定秩為n的格L(B)?Zm的一組基B和一個(gè)目標(biāo)向量x∈span[L(B)],找到一個(gè)滿足如下條件的非零向量u∈L(B):
在文獻(xiàn)[20]中,Henk通過歸約的方式證明了最近向量難解問題比最短向量難解問題更難。另外,Boas在文獻(xiàn)[16]中也證明了最近向量難解問題是NP難解問題。
定義4 小整數(shù)解問題SIS(Small Integer Solution)問題:給定一個(gè)正整數(shù)q,一個(gè)隨機(jī)矩陣A∈Znq×m和一個(gè)實(shí)數(shù) β>0,定義(q,m,β)小整數(shù)解問題表述如下:找到一個(gè)非零向量v?Zm,使得Av=0(modq),并滿足‖v‖≤β。
SIS問題的難解性:對任意的m(n)=Θ(nlogn),存在一個(gè)q(n)=O(n2logn)使得對任意函數(shù)γ(n)=ω(nlogn),以不可忽略的概率解決平均情況的 SISq,n,m,β問題至少和解決最壞情況的SVPγ一樣難解[18]。
抽樣技術(shù)首先是由 Gentry,Peikert和 Vaikuntanathan在文獻(xiàn)[10]中提出的,是格非對稱密碼體制發(fā)展過程中出現(xiàn)的一種非常重要的技術(shù),許多格上的非對稱密碼體制協(xié)議都使用了抽樣技術(shù)。
定理1(陷門生成算法) 令q≥3是一個(gè)素?cái)?shù),m=「6nlogq?。存在一個(gè)概率多項(xiàng)式時(shí)間算法TrapGen(q,n)輸出矩陣對:
式中:A 的分布和 Zn×mq上的均勻分布統(tǒng)計(jì)接近,TA是 q-ary格 Λ⊥q(A)上的一組短基,同時(shí)如下兩式以壓倒性的概率成立:
2012年,Micciancio和Peikert在文獻(xiàn)[14]中提出了格上的新陷門(G-陷門):
定理2(G-陷門生成算法) 給定矩陣A∈Znq×m,T∈Zmq0×kn和 M∈Znq×n,其中 n,m,m0,k 是正整數(shù)。如果滿足如下等式:
并且‖T‖足夠小,那么T就是A對于標(biāo)簽M的G陷門。
由于Gentry等人在文獻(xiàn)[10]中的抽樣技術(shù)計(jì)算較為復(fù)雜,Lyubashevsky在文獻(xiàn)[12]中提出了一種基于格的無需原像抽樣操作的技術(shù)。
在本文提出的密鑰協(xié)商協(xié)議中,采用無線傳感器網(wǎng)絡(luò)標(biāo)準(zhǔn)模型進(jìn)行密鑰預(yù)分配管理。無線傳感器網(wǎng)絡(luò)由基站和普通節(jié)點(diǎn)兩種類型構(gòu)成,并有如下假設(shè):①傳感器節(jié)點(diǎn)的密鑰對都是由基站生成并預(yù)分配給所有傳感器節(jié)點(diǎn),傳感器節(jié)點(diǎn)之間也可以進(jìn)行通信。②每個(gè)傳感器節(jié)點(diǎn)都有自己唯一的身份標(biāo)識IDi∈{0,1}?,i∈{1,2,…,N}。 ③在本文提出協(xié)議中的基站存儲(chǔ)夠用,而且是誠信可靠的。
無線傳感器網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)如圖1所示。
在圖1中,基站具有無限能量、高計(jì)算能力以及充足的存儲(chǔ)空間等特點(diǎn),并且是誠信可靠的。傳感器節(jié)點(diǎn)C的功能是負(fù)責(zé)感知周圍環(huán)境,將采集到的數(shù)據(jù)發(fā)往基站,如果太遠(yuǎn)也可以選擇其他傳感器節(jié)點(diǎn)進(jìn)行轉(zhuǎn)發(fā)。
圖1 網(wǎng)絡(luò)模型
根據(jù)文獻(xiàn)[12]中的無需抽樣操作技術(shù)和文獻(xiàn)[25]中的消息恢復(fù)算法,本文提出了一種基于格的無線傳感器網(wǎng)絡(luò)密鑰協(xié)商協(xié)議,采用無線傳感器網(wǎng)絡(luò)基本的密鑰預(yù)分配模型,基站首先生成系統(tǒng)參數(shù)和所有傳感器節(jié)點(diǎn)的公私密鑰對,并把密鑰對分配給相應(yīng)的傳感器節(jié)點(diǎn)。傳感器節(jié)點(diǎn)之間只在需要通信時(shí)才建立相應(yīng)配對密鑰,僅需較少步驟,就能夠以很高的概率進(jìn)行密鑰協(xié)商。建立共享密鑰后相關(guān)傳感器節(jié)點(diǎn)就可以用該共享密鑰進(jìn)行安全通信,該共享密鑰是基于對稱密碼體制的。由于對稱密碼體制比非對稱密碼體制在加密運(yùn)算中效率更高,所以能有效降低傳感器節(jié)點(diǎn)的通信能耗。
系統(tǒng)參數(shù)和密鑰對的產(chǎn)生如下:
①令系統(tǒng)安全參數(shù)是1n。
②首先選擇素?cái)?shù) q,正整數(shù) d,m,k,λ,l,其中 m必須滿足如下不等式:
選擇實(shí)數(shù)σ,滿足如下不等式:
③選擇一個(gè)隨機(jī)矩陣A∈Zn×mq。
④選擇四個(gè)安全的哈希函數(shù):
⑤生成傳感器節(jié)點(diǎn)的密鑰對,首先隨機(jī)選擇矩陣Si為第i個(gè)傳感器節(jié)點(diǎn)的私鑰,則Ti=ASi為第i個(gè)傳感器節(jié)點(diǎn)的公鑰,其中Si滿足如下條件:
最后,輸出系統(tǒng)公共參數(shù):
傳感器節(jié)點(diǎn)的密鑰對:
如果有傳感器節(jié)點(diǎn)要與其他傳感器節(jié)點(diǎn)進(jìn)行通信時(shí),該傳感器節(jié)點(diǎn)首先生成相應(yīng)的密鑰協(xié)商消息,然后把生成好的密鑰協(xié)商消息發(fā)送給相應(yīng)的傳感器節(jié)點(diǎn)。當(dāng)其他傳感器節(jié)點(diǎn)收到密鑰協(xié)商消息后,先進(jìn)行驗(yàn)證,如果通過驗(yàn)證,則接收相應(yīng)的密鑰消息,否則拒絕接收或丟棄該密鑰協(xié)商消息,密鑰協(xié)商的詳細(xì)過程如下:
輸入系統(tǒng)公共參數(shù) PP={A,F(xiàn)1,F(xiàn)2,H1,H2},假設(shè)第i個(gè)傳感器節(jié)點(diǎn)需要與第j個(gè)傳感器節(jié)點(diǎn)進(jìn)行通信時(shí),第i個(gè)傳感器節(jié)點(diǎn)將隨機(jī)產(chǎn)生一個(gè)用于本次通信的臨時(shí)會(huì)話密鑰Kij:Kij∈{0,1}l,該密鑰為對稱密碼體制下的密鑰,使用對稱密碼體制進(jìn)行加解密效率更高。密鑰協(xié)商數(shù)據(jù)包生成的具體過程如下:
①選擇一個(gè)隨機(jī)的 y:y←Dmσ和時(shí)間戳 ti:ti∈{0,1}?,其中ti表示該認(rèn)證消息是第i個(gè)傳感器節(jié)點(diǎn)在t時(shí)刻生成的。
②計(jì)算uy和uK:
③計(jì)算 u′K:
④計(jì)算驗(yàn)證消息(z,c):
⑤以概率個(gè)傳感器節(jié)點(diǎn)把包含臨時(shí)會(huì)話密鑰的消息(z,c,u′K,ti)發(fā)送給第j個(gè)傳感器節(jié)點(diǎn)。
其中時(shí)間戳ti用于判斷數(shù)據(jù)包的時(shí)間有效性和是否被重復(fù)接收;(z,c)用于驗(yàn)證;u′K用于驗(yàn)證后提取臨時(shí)會(huì)話密鑰的消息。輸出(z,c),第 i
當(dāng)?shù)趈個(gè)傳感器節(jié)點(diǎn)收到第i個(gè)傳感器節(jié)點(diǎn)發(fā)送過來的消息(z,c,u′K,ti)時(shí),首先用第 i個(gè)傳感器節(jié)點(diǎn)的公鑰Ti驗(yàn)證該消息的有效性,如果驗(yàn)證通過,就提取并接收第i個(gè)傳感器節(jié)點(diǎn)發(fā)送過來的臨時(shí)會(huì)話密鑰,并用該會(huì)話密鑰與第i個(gè)傳感器節(jié)點(diǎn)進(jìn)行通信,驗(yàn)證失敗,則丟棄該數(shù)據(jù)包。具體的驗(yàn)證恢復(fù)過程描述如下:
①驗(yàn)證下面兩個(gè)式子是否都成立:
如果以上兩式都成立,則表示驗(yàn)證通過,將繼續(xù)下一步操作;否則驗(yàn)證失敗,并丟棄這個(gè)由第i個(gè)傳感器節(jié)點(diǎn)發(fā)送過來的數(shù)據(jù)包。
②計(jì)算:
③恢復(fù)消息uK:
④驗(yàn)證等式[u′K]l1=F1(uK)是否成立,如果成立,則恢復(fù)將與第i個(gè)傳感器節(jié)點(diǎn)進(jìn)行通信的臨時(shí)會(huì)話密碼 Kij:Kij=uK⊕uy;如果失敗,則丟棄該數(shù)據(jù)包,并終止操作。
其中[u′K]l1表示:u′K中從高到低的前 l1位;[u′K]l表示:u′K中從低到高的后 l位。
最后,第j個(gè)傳感器節(jié)點(diǎn)接收到第i個(gè)傳感器節(jié)點(diǎn)發(fā)送過來的臨時(shí)會(huì)話密鑰信息,如果通過驗(yàn)證就能從該數(shù)據(jù)包中恢復(fù)出與第i個(gè)傳感器節(jié)點(diǎn)進(jìn)行通信的臨時(shí)會(huì)話密鑰Kij。
如果基站發(fā)現(xiàn)有傳感器節(jié)點(diǎn)被俘獲,要及時(shí)把該節(jié)點(diǎn)的ID信息廣播出去,避免其進(jìn)行惡意攻擊。
當(dāng)?shù)趈個(gè)傳感器節(jié)點(diǎn)恢復(fù)出臨時(shí)會(huì)話密鑰Kij后就可以與第i個(gè)傳感器節(jié)點(diǎn)進(jìn)行安全通信,下面介紹兩種通信方式,可以根據(jù)具體情況選擇不同的通信方式。
①直接用恢復(fù)出的對稱密鑰進(jìn)行通信
第j個(gè)傳感器節(jié)點(diǎn):
加密消息u:
式中:u表示需要加密的消息;Kij表示:第j個(gè)傳感器節(jié)點(diǎn)和第i個(gè)傳感器節(jié)點(diǎn)的臨時(shí)會(huì)話密鑰;En(Kij,u)表示:用臨時(shí)會(huì)話密鑰Kij對需要加密的明文消息u進(jìn)行加密,使用的算法為效率較高的對稱密碼體制算法,設(shè)該算法為E-SYM;uEn表示:加密后的密文消息。接著,第j個(gè)傳感器節(jié)點(diǎn)將加密后的密文uEn發(fā)送給第i個(gè)傳感器節(jié)點(diǎn)。
當(dāng)?shù)趇個(gè)傳感器節(jié)點(diǎn)接收到由第j個(gè)傳感器節(jié)點(diǎn)發(fā)送過來的密文uEn后,將用之前生成的臨時(shí)會(huì)話密鑰Kij對uEn解密。
第i個(gè)傳感器節(jié)點(diǎn):
解密消息:
式中:De(Kij,uEn)表示:用臨時(shí)會(huì)話密鑰Kij使用對稱密碼體制算法E-SYM對密文uEn進(jìn)行解密;uDe表示解密后的密文消息。最后,第i個(gè)傳感器節(jié)點(diǎn)就獲取了由第j個(gè)傳感器節(jié)點(diǎn)發(fā)送過來的消息u:u=uDe。
②把密文嵌入到驗(yàn)證消息后進(jìn)行通信
第j個(gè)傳感器節(jié)點(diǎn):
(a)加密消息u:
(b)計(jì)算密文嵌入后的消息(zj,cj):
(c) 以概率的消息(zj,cj)。
接著,第 j個(gè)傳感器節(jié)點(diǎn)把消息(zj,cj,uEn)發(fā)送給第i個(gè)傳感器節(jié)點(diǎn)。
當(dāng)?shù)趇個(gè)傳感器節(jié)點(diǎn)接收到由第j個(gè)傳感器節(jié)點(diǎn)發(fā)送過來的包含密文的消息(zj,cj,uEn)后,將用第j個(gè)傳感器節(jié)點(diǎn)的公鑰Tj驗(yàn)證消息(zj,cj),驗(yàn)證通過后,將用之前生成的臨時(shí)會(huì)話密鑰Kij對uEn解密。
第i個(gè)傳感器節(jié)點(diǎn):
如果以上兩式都成立,則表示驗(yàn)證通過,將繼續(xù)下一步操作;否則驗(yàn)證失敗,并丟棄這個(gè)由第j個(gè)傳感器節(jié)點(diǎn)發(fā)送過來的數(shù)據(jù)包。
(b)解密消息uEn:
最后,第i個(gè)傳感器節(jié)點(diǎn)就獲取了由第j個(gè)傳感器節(jié)點(diǎn)發(fā)送過來的消息u:u=uDe。
以上所述兩種通信方式各有優(yōu)缺點(diǎn),可以根據(jù)具體情況選擇不同的通信方式。如果要加密的文明數(shù)據(jù)量很大,安全級別要求不是很高的情況下,可以使用第一種通信方式,該通信方式只要用對稱密碼體制算法E-SYM進(jìn)行加解密操作即可,該通信方式效率更高;如果要加密的數(shù)據(jù)量不是很大,安全級別要求較高的情況可采用第二種通信方式,該方式可以避免其他傳感器節(jié)點(diǎn)冒充第j個(gè)傳感器節(jié)點(diǎn)與第i個(gè)傳感器節(jié)點(diǎn)通信,該通信方式安全性更高。
另外,根據(jù)無線傳感器網(wǎng)絡(luò)的具體安全環(huán)境情況,可以適當(dāng)改變臨時(shí)會(huì)話密鑰的有效時(shí)間,減少密鑰協(xié)商的次數(shù),提高無線傳感器網(wǎng)絡(luò)通信的效率。
本文從一致性、安全性和效率3方面對新方案進(jìn)行分析。
按照上述密鑰協(xié)商協(xié)議的具體過程,本文對驗(yàn)證過程一致性和密鑰恢復(fù)一致性分別進(jìn)行闡述和分析。
①驗(yàn)證過程一致性分析:
所以:
在證明以壓倒性概率滿足‖z‖≤2σ m不等式成立之前先介紹下面兩個(gè)引理:
引理1[12]對任意實(shí)數(shù)σ>0和正整數(shù)m,有如下不等式成立:
引理2[12]對任意的向量v∈Zm,如果:
則有如下等式成立:
根據(jù)文獻(xiàn)[12]中所述的無需原像抽樣技術(shù)的原理和引理1得出,z的分布非常的接近Dmσ;由引理2可以得出z將以大于或等于1-2-m的概率滿足不等式‖z‖≤2σ m,即以壓倒性概率滿足不等式‖z‖≤2σ m。
②密鑰恢復(fù)一致性分析:
(a)分析等式[u′K]l1=F1(uK):
(b)對密鑰Kij的正確性進(jìn)行分析:
從以上分析可以得出,第i個(gè)傳感器節(jié)點(diǎn)和第j個(gè)傳感器節(jié)點(diǎn)擁有共同的對稱密碼體制算法E-SYM的密鑰Kij,并能用Kij進(jìn)行通信。
本節(jié)分析上述密鑰協(xié)商協(xié)議在參數(shù)為[q,m,(4σ+2dλ) m]的小整數(shù)解問題假設(shè)下是安全的,下面分別從密鑰協(xié)商過程和傳感器節(jié)點(diǎn)通信兩方面進(jìn)行安全分析。
①密鑰協(xié)商協(xié)議安全分析
由4.1節(jié)中的定義4可得,參數(shù)為[q,m,(4σ+2dλ)的小整數(shù)解問題具體表述如下:
給定一隨機(jī)矩陣 A∈Znq×m和一個(gè)實(shí)數(shù)(4σ+2dλ) m>0,找到一個(gè)非零向量 v?Zm,使得 Av=0(modq),并滿足‖v‖≤(4σ+2dλ) m。
首先構(gòu)造一個(gè)多項(xiàng)式時(shí)間算法ξ,并假設(shè)算法ξ以不可忽略的概率得到消息一個(gè)新的偽造認(rèn)證簽名(z?,c?),使得:
由于 Ti=ASi,則:
根據(jù)密鑰協(xié)商消息的一致性可得:‖z‖,‖z?‖≤2σ m和‖Sic‖,‖Sic?‖≤dλ m以壓倒性概率成立,則:
所以只要證明 z-Sic-z?+Sic?≠0的概率是不可忽略的就能說明該密鑰協(xié)商協(xié)議是安全可靠的。
在繼續(xù)證明之前先介紹引理3。
引理3[12]對于滿足條件m≥64+nlogq/log(2d+1)的任何矩陣 A∈Znq×m,隨機(jī)選取d}m,那么以1-2-m的概率存在另外一個(gè) s′:s′∈{-d,…,0,…,d}m,滿足 As=As′。
根據(jù)上面引理3可以得出,能比1-2-m大的概率生成一個(gè)新的傳感器節(jié)點(diǎn)私鑰S′i滿足等式ASi=AS′i。 則:
則有:
因此,本文提出的密鑰協(xié)商過程在參數(shù)為[q,m,(4σ+2dλ)的小整數(shù)解問題假設(shè)下是安全的。
②傳感器節(jié)點(diǎn)通信安全分析
如果在第i個(gè)傳感器節(jié)點(diǎn)和第j個(gè)傳感器節(jié)點(diǎn)進(jìn)行密鑰協(xié)商的過程中沒有其他惡意傳感器節(jié)點(diǎn)竊聽,那么第3節(jié)中所述的第1種直接用臨時(shí)會(huì)話密鑰Kij進(jìn)行通信的方案是安全的。
如果在第i個(gè)傳感器節(jié)點(diǎn)和第j個(gè)傳感器節(jié)點(diǎn)進(jìn)行密鑰協(xié)商的過程中有惡意傳感器節(jié)點(diǎn)e竊聽到該密鑰協(xié)商數(shù)據(jù)包,惡意傳感器節(jié)點(diǎn)e就可以通過第i個(gè)傳感器節(jié)點(diǎn)的公鑰Ti驗(yàn)證并恢復(fù)出臨時(shí)會(huì)話密鑰Kij,這種情況只能采用第2種把加密消息嵌入到驗(yàn)證消息的方案進(jìn)行通信,下面分析第2種通信方式的安全性。
惡意傳感器節(jié)點(diǎn)e可以冒充第j個(gè)傳感器節(jié)點(diǎn)對消息“u”進(jìn)行加密并生成密文“uEn”:“uEn”=En(Kij,“u”);但由于傳感器節(jié)點(diǎn) e并不知道第 j個(gè)傳感器節(jié)點(diǎn)的私鑰Sj,所以沒辦法把冒充的密文“uEn”嵌入到驗(yàn)證消息zj中:
從以上的分析中可以看出本文提出的第i個(gè)傳感器節(jié)點(diǎn)和第j個(gè)傳感器節(jié)點(diǎn)用臨時(shí)會(huì)話密鑰進(jìn)行通信的方案是安全的。
下面首先將對提出方案的安全性、計(jì)算量和量子攻擊等方面與其他相關(guān)方案進(jìn)行比較。其中文獻(xiàn)[5]涉及到的是指數(shù)級計(jì)算,在GDH(Gap Diffie-Hellman)假設(shè)下,達(dá)到了認(rèn)證安全性,雖然它們在較強(qiáng)安全模型下具有較高的安全性,但是容易遭到量子攻擊,而本文提出的方案是基于格的,所以只涉及到矩陣和向量的乘積運(yùn)算,沒有涉及到指數(shù)運(yùn)算,這樣計(jì)算簡單,效率高,由于基于格的小整數(shù)解問題能夠抵抗量子攻擊,因此本文提出的方案有較高的安全性和效率。文獻(xiàn)[15]提出的認(rèn)證密碼方案由于是基于理想格,這就導(dǎo)致其在效率方面會(huì)比本文提出的方案要稍微弱些,但在安全證明等方面會(huì)比較好些,這也是本文提出的方案需要進(jìn)一步改進(jìn)和完善的地方。文獻(xiàn)[7]使用了密鑰封裝技術(shù),這導(dǎo)致該密鑰協(xié)議具有較大的存儲(chǔ)空間和計(jì)算量,本文提出的方案沒有使用對應(yīng)的密碼方法對簽名和密鑰等封裝來進(jìn)行認(rèn)證,因此相比文獻(xiàn)[7]更具有較小的存儲(chǔ)空間和計(jì)算量。性能比較如表1所示。
表1 相關(guān)方案的性能比較
從表1中可看出,本文提出的密碼方案在安全性、計(jì)算量和存儲(chǔ)空間等方面具有一定的優(yōu)勢。
下面通過理論分析和仿真對本文提出方案的公鑰和私鑰大小和其他相關(guān)方案進(jìn)行比較。在具體的量化仿真中,n是安全參數(shù),q是模數(shù),d=「logn?,m=6nlogq,ˉm=nk,l是消息的比特長度。 其中在文獻(xiàn)[14]Micciancio方案和[19]Cash方案中,k=「logn?;在文獻(xiàn)[22]Ducas方案中,w1=2「logq?+2,k1=2「log3q?。在Cash方案中的公鑰與私鑰大小分別為:2lˉmn+2ˉmn和4ˉm2;在文獻(xiàn)Micciancio方案中的公鑰與私鑰大小分別為:(l+1)n2k+(ˉm+nk+1)n和ˉmnk;在Ducas方案中的公鑰與私鑰大小分別為:(d+3)n2k1+n和w1k1n2;本文方案中的公鑰與私鑰大小分別為:2dˉmn+4nk和ˉmnd。當(dāng)l=100,q=212時(shí),不同方案中在不同安全系數(shù)下公鑰大小的比較:
從圖2可以看出,本文提出方案的公鑰和私鑰大小占有一定的優(yōu)勢。
圖2 本文方案與相關(guān)協(xié)議的公鑰大小比較
本文提出的密鑰協(xié)商協(xié)議不需要相關(guān)傳感器節(jié)點(diǎn)再另外單獨(dú)發(fā)送密鑰數(shù)據(jù)包,因?yàn)榘荑€的信息已經(jīng)被嵌入到密鑰協(xié)商的數(shù)據(jù)包中,第j個(gè)傳感器節(jié)點(diǎn)接收到密鑰協(xié)商協(xié)議數(shù)據(jù)包就可以通過對密鑰協(xié)商數(shù)據(jù)包的驗(yàn)證,并提取出相應(yīng)的臨時(shí)會(huì)話密鑰信息。由于本文提出的密鑰協(xié)商協(xié)議不需要額外發(fā)送消息,因而能夠減少無線傳感器網(wǎng)絡(luò)的通信開銷,達(dá)到降低能耗的目的。另外用于第i個(gè)傳感器節(jié)點(diǎn)和第j個(gè)傳感器節(jié)點(diǎn)進(jìn)行臨時(shí)通信的密鑰是基于對稱密碼體制算法,所以能有效提高第i個(gè)傳感器節(jié)點(diǎn)和第j個(gè)傳感器節(jié)點(diǎn)臨時(shí)通信的效率。在計(jì)算復(fù)雜性方面,本文提出的密鑰協(xié)商協(xié)議主要操作都是些簡單的哈希操作和邏輯運(yùn)算,一般傳輸1比特的數(shù)據(jù)比32比特的計(jì)算要消耗更多的能量。
本文提出了一種有效的無線傳感器網(wǎng)絡(luò)密鑰協(xié)商協(xié)議,其核心思想是采用格上無需原像抽樣操作的算法,利用格上堅(jiān)實(shí)的安全基礎(chǔ)和更高的計(jì)算效率,使其更適應(yīng)于無線傳感器網(wǎng)絡(luò)。在本方案中,傳感器節(jié)點(diǎn)不需預(yù)先存儲(chǔ)會(huì)話密鑰信息,只在需要通信時(shí)才發(fā)起密鑰協(xié)商會(huì)話來建立配對密鑰,而通信的密鑰是基于對稱密碼體制算法,所以能有效降低傳感器節(jié)點(diǎn)之間的通信開銷。