王大鵬
(遼寧師范大學(xué) 計(jì)算機(jī)與信息技術(shù)學(xué)院,遼寧 大連 116081)
無(wú)線傳感器網(wǎng)絡(luò) WSN (Wireless Sensor Networks)是一種資源受限,無(wú)物理安全保障的無(wú)線網(wǎng)絡(luò)。它通常利用相互協(xié)作的多跳模式將數(shù)據(jù)傳到基站。由于節(jié)點(diǎn)成本低,部署靈活,具有廣泛的應(yīng)用前景[1],但也因?yàn)槠洳渴鹞恢玫撵`活性導(dǎo)致了許多安全威脅?;谏矸菁用躀BE(Identity-Based Encryption)[2]作為一種 WSN安全解決方案,近些年受到了廣泛關(guān)注。IBE將身份、地址等字符串作為公鑰,具有不需要證書、公鑰存儲(chǔ)空間小等優(yōu)點(diǎn),比較符合需要輕量級(jí)加密算法的WSN。但安全的密鑰托管(key-escrow)問題一直制約著 IBE在 WSN等環(huán)境中的實(shí)際應(yīng)用。因此,如何有效監(jiān)督IBE的第三方密鑰托管成為WSN加密研究的目標(biāo)之一[3-4]。
針對(duì)IBE的密鑰托管問題,H?IBL M等人[5]提出了一種無(wú)證書的基于身份認(rèn)證密鑰管理協(xié)議,密鑰參數(shù)由私鑰產(chǎn)生中心 PKG(Private Key Generation)發(fā)放,兩個(gè)用戶利用得到的密鑰參數(shù)相互簽名認(rèn)證協(xié)商會(huì)話密鑰。LAI J等人[6]基于不使用雙線性對(duì)的無(wú)證書公鑰加密,提出了一種自我產(chǎn)生證書的公鑰加密方案。很多簽名方案為了解決key-escrow問題也采用無(wú)證書協(xié)議。CHOI K Y等人[7]提出一種無(wú)證書短簽名方案,雖然利用多次哈希函數(shù)運(yùn)算獲得了較高的安全性,但計(jì)算開銷較大。SHIM K[8]指出共謀攻擊下的無(wú)證書協(xié)議需要考慮的問題,并認(rèn)為Zhang-Zhang的無(wú)證書集成簽名方案可能無(wú)法抵御包括PKG在內(nèi)的共謀偽造簽名攻擊。除無(wú)證書的認(rèn)證密鑰協(xié)商協(xié)議外,一些研究試圖通過基于證書的協(xié)議或其他方法解決key-escrow問題。LIBERT B等人[9]提出了一種具有跟蹤機(jī)制的可追責(zé)基于身份加密(A-IBE),不需要分開PKG的權(quán)力也不需要證書,節(jié)省了交互次數(shù)。
[9]的方案利用廣播加密達(dá)到抗選擇密文攻擊(CCA)安全,但在應(yīng)用于追蹤計(jì)算時(shí)開銷較大,且簽名密鑰易泄露。本文結(jié)合參考文獻(xiàn)[9]和[10]的方案,利用k重復(fù)(k-repetition)模式下的抗選擇明文攻擊安全的A-IBE和密鑰安全的一次性強(qiáng)不可偽造簽名,構(gòu)建了一種IND-ID-CCA安全的無(wú)線傳感器網(wǎng)絡(luò)A-IBE。實(shí)驗(yàn)表明,本文方案以較小開銷發(fā)現(xiàn)并追究PKG的不誠(chéng)實(shí)行為,提高了網(wǎng)絡(luò)的安全性。
定義1 雙線性組產(chǎn)生器是一個(gè)概率多項(xiàng)式時(shí)間算法 PPT(Probabilistic Polynomial Time)G,輸入為 λ∈N,輸出元組(G,GT,e,p),滿足如下條件。
(1)p 是一個(gè)素?cái)?shù),其中 2λ-1<p<2λ。
(2)G 和 GT是 p階群。
(3)e:G×G→GT滿足如下屬性。
①e(ga,hb)=e(g,h)ab, 對(duì) 于 任 意 (g,h)∈G×G, 其中,a,b∈Z;
②e 是不可退化的,例如,存在 e(g,g)≠I,其中 g∈G,I為 GT中的單位元;
③存在一個(gè)有效的計(jì)算e的算法。
Decision q-Augmented Bilinear Diffie-Hellman Exponent問題 (q-ABDHE):對(duì) 于 隨 機(jī) 元 組 (g,h,α)∈G2×,給定 (g,gα,… ,g(αq),h,h(αq+2)),要 求 從 GT的 隨 機(jī) 元 素 中 區(qū) 分出 e(g,h)h(αq+1)。
如果 d=d*,A返回 1,否則返回 0。對(duì)手 A的優(yōu)勢(shì)為:A(λ)=Pr[=1]。
如果對(duì)于任何以λ為輸入的PPT算法A的優(yōu)勢(shì)是可忽略的,那么對(duì)于G,q-ABDHE問題假設(shè)成立。
為描述方便,本文以層簇式網(wǎng)絡(luò)[12]中的簇頭為PKG與簇內(nèi)節(jié)點(diǎn)進(jìn)行密鑰協(xié)商為例。下面給出本文方案的形式化描述。
首先給出A-IBEk方案。在下面的A-IBE方案描述中,加密和解密算法參照參考文獻(xiàn)[11]中的算法。
Setup階段: 輸入安全參數(shù) λ∈N,p 為素?cái)?shù),p>2λ,PKG 運(yùn)行 G(λ),生成 p 階的雙線性組(G,GT,e,p)。 隨機(jī)選擇 h,g←RG 和 α←RZp*。 定義主密鑰 msk=α,mpk=(g,g1=gα,h)。
Key generation階段:節(jié)點(diǎn)和PKG按照下列步驟交互生成密鑰。
(1)節(jié) 點(diǎn) 選 擇 t0,θ←RZp*, 發(fā) 送 R=g-t0·(g1·g-ID)θ給 簇頭。并給出(t0,θ)的交互式證據(jù)不可區(qū)分知識(shí)證明。
加密階段:加密 m∈GT。簇頭利用 mpk和 ID,選擇s←RZp*,計(jì)算如下:
解 密 階 段 : 節(jié) 點(diǎn) 輸 入 C=(C1,C2,C3)和 dID=(d,tID),計(jì)算:m=C3·(e(C1,d)·Ct2ID)-1。
TraceD(mpk,dID,ε)階段:執(zhí)行跟蹤算法。輸入為對(duì)應(yīng)于節(jié)點(diǎn)ID的私鑰dID=(d,tID)和一個(gè)以概率ε成功解密的偽造解密器D,執(zhí)行如下步驟。
(1)設(shè)置 ctr←0,重復(fù)下列的步驟 L=8λ/ε 次:
(a)隨機(jī)選擇 s,s′←RZp*滿足 s≠s′, 設(shè) C1=(g1,g-ID)s,C2=e(g,g)s′。
(b)隨機(jī)給出信息 m∈GT,計(jì)算 C3=m·e(C1,d)·。
(c)對(duì)于 D 和(C1,C2,C3)。 如果 D 輸出 m′∈GT,滿足 m′=m,ctr自增 1。
(2)如果 ctr=0,判斷 PKG偽造 D;否則,判斷節(jié)點(diǎn)偽造D。
如果上面的A-IBE是安全的,那么可以驗(yàn)證,對(duì)于相同的輸入,A-IBEk(重復(fù) k次的A-IBE)也是安全的。
在給出A-IBEk后,假設(shè)存在一次性強(qiáng)不可偽造的簽名方案 SS=(Gen,Sign,Ver), 下面結(jié)合 A-IBEk與 SS構(gòu)建選擇密文安全的A-IBEcca。
Setup階段:mpk由基站按照A-IBE的算法生成。
Key generation階段:簇內(nèi)的 2k個(gè)公鑰 p,p,…,p,p同為 msk,私鑰 s,s,…,sk,s由簇內(nèi)節(jié)點(diǎn)的和作為輸入,利用 A-IBE 的密鑰產(chǎn)生算法與節(jié)點(diǎn)交互生成,其中a←RZ*p。設(shè)置并輸出pk,sk如下:
(1)執(zhí)行簽名方案的密鑰產(chǎn)生算法,得到簽名密鑰dsk和驗(yàn)證密鑰vk。
注意,如果c′是一個(gè)無(wú)效的密文(例如,并不是所有的ci都能解密成同樣的明文),那么當(dāng)Deck輸出⊥時(shí),Deccca輸出⊥。方案的密鑰協(xié)商過程描述如圖1所示。
圖1 k重復(fù)可追責(zé)的基于身份加密的密鑰協(xié)商流程
本文方案的 SS=(keyGen,Sign,Verify)參照參考文獻(xiàn)[13]的一次性強(qiáng)不可偽造簽名方案,描述如下。
Key generation階段:隨機(jī)選擇g,h∈G和一個(gè)隨機(jī)哈希函數(shù) Hk的密鑰 k∈K,K 為某一集合,Hk:{0,1}*→{0,1}n。 “||”為串聯(lián)運(yùn)算符。 運(yùn)行 Key generation算法得到SK,PK。簽名方案的公鑰和私鑰如下:
簽名階段:一個(gè)信息M∈{0,1}l的簽名產(chǎn)生如下。
(1)選擇一個(gè)隨機(jī)組件 s∈Zp和隨機(jī)數(shù) r∈R,R為某一集合。
(2)設(shè)置 σ2←F2(r,SK)。
(3)計(jì)算 t←Hk(M||σ2)∈{0,1}n,Hk為基于離散對(duì)數(shù)的變色龍哈希函數(shù),t為Zp中的元素。
(4)計(jì)算 m←gths∈G。
(5)計(jì)算 σ1←F1(m,r,SK),并輸出簽名 σ←(σ1,σ2,s)。
驗(yàn)證階段:輸入(PK,M,σ),信息 M 的簽名 σ=(σ1,σ2,s),驗(yàn)證如下。
(1)計(jì)算 t′←Hk(M||σ2),t′為 Zp中的元素。
(2)計(jì)算 m′←gt′hs。
(3)輸出 Verify(PK,m′,(σ1,σ2))。
上 面步驟中 ,F(xiàn)1(m,r,x)=r-1(m+xF2(r,x))modq,F(xiàn)2(r,x)=(grmodq)modq
其中,q為簽名算法安全性證明中簽名查詢次數(shù)的上限。上面簽名方案的Key generation按如下方法產(chǎn)生簽名方案的私鑰[14]:
節(jié)點(diǎn) A擁有 SA可以計(jì)算 PB=Φ(idB)。 同樣的,B擁有 SB可以計(jì)算 PA=Φ(idA)。 因此,A和 B都能計(jì)算 kA,B=e(SA,SB)=e(SB,SA)。 為了保證簽名算法的一次性,假設(shè)存在安全信道,簽名雙方通過安全信道相互發(fā)送秘密參數(shù)s。
參照參考文獻(xiàn)[9]中的敵手安全模型證明本文方案的安全性。模型定義如下。
定義3 一個(gè)A-IBE方案被看作是安全的,如果PPT算法的對(duì)手在下列3個(gè)游戲中的優(yōu)勢(shì)是可忽略的。
(1)對(duì)于任何 PPT算法A,IND-ID-CCA游戲模型如下,其中λ∈N是安全參數(shù)。
Setup:輸入 λ,挑戰(zhàn)者輸出 mpk,msk。
Phase 1:密鑰查詢。輸入為對(duì)手A提供的ID,mpk,挑戰(zhàn)者輸出私鑰dID。其中,ID≠ID*。
Phase 2:密文查詢。輸入為對(duì)手提供的(C,ID),挑戰(zhàn)者輸出明文。
挑戰(zhàn)階段:對(duì)手 A 產(chǎn)生(m0,m1,ID*),挑戰(zhàn)者隨機(jī)選擇 d∈{0,1},加密信息 md,生成密文 C*。
Phase 3:對(duì)手A執(zhí)行Phase 1和 Phase 2的查詢,滿足(C,ID)≠(C*,ID*)。
Guess:對(duì)手A給出 d的推測(cè)值。如果 d=1,則A返回1;否則返回0。A贏得游戲的優(yōu)勢(shì)為:
自適應(yīng)選擇身份模型下抗選擇明文攻擊(IND-ID-CPA)游戲模型的定義與上面的不同是對(duì)手A不執(zhí)行密文查詢。
(2)對(duì)于任何PPT算法 A,DishonestPKG-wBB游戲模型如下,其中λ∈N是安全參數(shù)。
Setup:輸入為 λ,挑戰(zhàn)者輸出為 ID,mpk。
Key generation階段:輸入 mpk,ID,對(duì)手 A參與交互輸出對(duì)應(yīng)的dID,輸出偽造解密器D。
跟蹤階段:挑戰(zhàn)者隨機(jī)生成明文,運(yùn)行trace階段的算法為:輸入明文,mpk,dID,ID,輸出密文。 令解密器 D解密trace輸出密文,并返回明文。D以ε的概率解密出正確的明文。
判定階段:如果判定用戶偽造了解密器D,trace輸出用戶,返回 1;否則,trace輸出 PKG,返回 0。
(3)對(duì)于任何 PPT算法 A,DishonestUser-ID-BB游戲模型如下,其中λ∈N是安全參數(shù)。
Setup:輸入為 λ,挑戰(zhàn)者輸出為 msk,mpk。
Key generation階段:對(duì)手 A輸入 mpk,ID*。輸出偽造 PKG生成的dID*,偽造解密器 D。
密鑰查詢:輸入為對(duì)手A提供的ID,mpk。挑戰(zhàn)者輸出dID。
跟蹤階段:輸入為mpk,dID*,ID*。挑戰(zhàn)者隨機(jī)生成明文m,運(yùn)行trace算法,輸出密文。令解密器D解密 trace輸出密文,并返回明文。D以ε的概率解密出正確的明文。
如果判定 PKG偽造了解密器 D,trace輸出 PKG,返回 1;否則返回 0。
在本文中,如果PPT的算法A以λ為輸入,在上面3個(gè)游戲中的優(yōu)勢(shì)是可忽略的。則A-IBE分別被認(rèn)為是IND-ID-CCA安全的,DishonestPKG-wBB安全的,DishonestUser-ID-BB安全的。同時(shí)具備上面3種安全屬性的A-IBE被認(rèn)為是安全的。
將本文方案與 PEACE[3]和 GDC[4]進(jìn)行比較。采用NS2仿真器,總數(shù)400個(gè)節(jié)點(diǎn)部署在350 m×350 m的檢測(cè)區(qū)域,基站位于坐標(biāo)(0,0)處,每個(gè)節(jié)點(diǎn)的通信半徑為35 m,采用層簇式路由結(jié)構(gòu)和參考文獻(xiàn)[15]中的能耗模型。仿真設(shè)備為一臺(tái)Intel I7 2.8 GHz處理器,4 GB內(nèi)存的 PC。仿真實(shí)驗(yàn)中 A-IBEk的k取3,本文密鑰大小為 160 bit,PEACE和 GDC的密鑰長(zhǎng)度為 80 bit。無(wú)線傳感器網(wǎng)絡(luò)密鑰協(xié)商的開銷主要為計(jì)算和通信兩部分。通信開銷指的是一次密鑰協(xié)商的消息傳送所消耗的能量。由于是多個(gè)方案多輪方案之間的比較且WSN的能耗集中在通信部分,所以,通信開銷的意義比較大。計(jì)算開銷是指節(jié)點(diǎn)密鑰協(xié)商的計(jì)算能耗。
PEACE的方案將密鑰參數(shù)分發(fā)的權(quán)力分為兩部分,一部分在信任的第三方,一部分在組管理器。試圖通過分散PKG權(quán)力的方法解決key-escrow問題。成員之間以及成員與組管理者之間的密鑰協(xié)商需要頻繁的簽名認(rèn)證。GDC為了解決key-escrow問題,通過安全信道發(fā)放含有簽名的證書,證書的簽名認(rèn)證了CA的同時(shí)也含有一部分密鑰協(xié)商參數(shù)。節(jié)點(diǎn)驗(yàn)證證書的簽名后,將簽名作為密鑰協(xié)商的參數(shù),同時(shí),CA將另一部分密鑰參數(shù)作為CA的公鑰分發(fā)給所有節(jié)點(diǎn)。這種方案節(jié)省了節(jié)點(diǎn)與CA交互的次數(shù),但密鑰協(xié)商仍然需要逐對(duì)進(jìn)行。
圖2描述的是網(wǎng)絡(luò)重復(fù)運(yùn)行3種方案15次,某一節(jié)點(diǎn)在不同鄰居節(jié)點(diǎn)數(shù)量下的能量消耗情況。如圖2所示,PEACE為了解決PKG問題,將密鑰協(xié)商參數(shù)分為兩部分分發(fā)。每對(duì)節(jié)點(diǎn)的通信認(rèn)證都需要單獨(dú)的密鑰對(duì)協(xié)商,因此需要的存儲(chǔ)空間及計(jì)算量較大,計(jì)算過程也較復(fù)雜。密鑰協(xié)商的頻繁認(rèn)證通信開銷和較大的計(jì)算開銷導(dǎo)致其能耗最多。GDC利用發(fā)放證書的方式分發(fā)密鑰參數(shù)的秘密部分,廣播發(fā)送密鑰的公共部分,這種密鑰協(xié)商方法雖然節(jié)省了交互的次數(shù),但節(jié)點(diǎn)之間簽名認(rèn)證密鑰協(xié)商的計(jì)算量較大且每跳都需要認(rèn)證,能耗其次。本文方案相比GDC,依靠跟蹤算法避免了節(jié)點(diǎn)間逐對(duì)協(xié)商密鑰的通信開銷。而且在密鑰協(xié)商完成后,可以利用第一次加密的組件進(jìn)行重復(fù)加密。雖然也使用每跳認(rèn)證的方式,但簽名方案的運(yùn)算量較小且第一次簽名以后可以只更新和密文相關(guān)的組件,因此能耗低于GDC。相比于PEACE,本文方案不需要為分開PKG的權(quán)限而將密鑰參數(shù)分多次傳送,因而節(jié)省了因PKG參與密鑰協(xié)商產(chǎn)生的通信開銷,能耗最少。
圖2 3種方案在不同鄰居節(jié)點(diǎn)數(shù)量下的能量消耗
圖3為PKG分別以11種不同的概率惡意分發(fā)密鑰導(dǎo)致無(wú)法協(xié)商密鑰的節(jié)點(diǎn)數(shù)。3種方案在每種概率下分別重復(fù)運(yùn)行 1 000 s。如圖 3所示,PEACE和 GDC方案無(wú)法進(jìn)行抵御惡意分發(fā)密鑰協(xié)商參數(shù)的攻擊。因?yàn)闊o(wú)法分辨惡意節(jié)點(diǎn)是普通節(jié)點(diǎn)還是PKG,所以,無(wú)法追究惡意節(jié)點(diǎn)偽造密鑰的責(zé)任,導(dǎo)致被欺騙的節(jié)點(diǎn)數(shù)量較多。由于本文方案使用跟蹤算法,在發(fā)現(xiàn)某一節(jié)點(diǎn)無(wú)法解密時(shí),啟動(dòng)跟蹤機(jī)制,不誠(chéng)實(shí)發(fā)放密鑰的PKG將會(huì)被有效地跟蹤并被孤立,因此,被欺騙的節(jié)點(diǎn)數(shù)較少。
本文針對(duì)WSN基于身份加密的密鑰托管問題,提出一種結(jié)合跟蹤算法追究PKG惡意分發(fā)密鑰行為的基于身份加密方案,并利用k重復(fù)算法和一次性強(qiáng)不可偽造簽名方案達(dá)到了自適應(yīng)選擇身份模型下的抗選擇密文攻擊安全。因?yàn)槊荑€產(chǎn)生過程中的交互隱藏了用戶密鑰,所以使用了弱黑盒跟蹤機(jī)制。與PEACE和GDC的仿真實(shí)驗(yàn)和分析,表明本文通過跟蹤算法以較小的代價(jià)有效抑制了傳感器網(wǎng)絡(luò)IBE方案的PKG不誠(chéng)實(shí)分發(fā)密鑰的惡意行為。本文方案的抗選擇密文攻擊安全是建立在一次性強(qiáng)不可偽造簽名和k重復(fù)算法基礎(chǔ)上的,但也帶來(lái)了相對(duì)較大的開銷。因此如何在保證安全性的基礎(chǔ)上,進(jìn)一步減少開銷是下一步的研究方向。
圖3 3種方案在不同概率下被欺騙的節(jié)點(diǎn)數(shù)
參考文獻(xiàn)
[1]JENNIFER Y,BISWANATH M,DIPAK G.Wireless sensor network survey[J].Computer Networks, 2008,52(12):2292-2330.
[2]BONEH D,F(xiàn)RANKLIN M.Identity based encryption from the Weil Pairing[J].SIAM Journal of Computing, 2003, 32(3): 586-615.
[3]REN K, YU S, LOU W, ZHANG Y.PEACE: A novel privacy-enhanced yetaccountable security framework for metropolitan wireless mesh networks[J].IEEE Transactions on Parallel and Distributed Systems, 2010, 21(2): 203-215.
[4]HARN L,REN J.Generalized digital certificate for user authentication and key establishment for secure communications[J].IEEE Transactions on Wireless Communications, 2011,10(7):2372-2379.
[5]H?LBL M, WELZER T, BRUME B.An improved twoparty identity-based authenticated key agreement protocol using pairings[J].Journal of Computer and System Sciences,2012, 78(1): 142-150.
[6]LAI J, KOU W, CHEN K.Self-generated-certificate public key encryption without pairing and its application[J].Information Sciences, 2011, 181(11): 2422-2435.
[7]CHOI, K Y, PARK J H, LEE D H.A new provably secure certificateless short signature scheme[J].Computers&Mathematics with Applications, 2011,61(7):1760-1788.
[8]SHIM K.On the security ofa certificatelessaggregate signature scheme[J].IEEE Communications Letters, 2011,15(10):1136-1138.
[9]LIBERT B,VERGNAUD D.Towards practical black-box accountable authority IBE:weak black-box traceability with short ciphertexts and private keys[J].IEEE Transactions on Information Theory, 2011, 57(10): 7189-7204.
[10]DOTTLING N, DOWSLEY R, MULLER-QUADE J.Nascimento,A C A.A CCA2 secure variant of the McEliece cryptosystem[J].IEEE Transactions on Information Theory,2012, 58(10): 6672-6680.
[11]GENTRY C.Practical identity-based encryption without random oracles[C].LNCS 4004:Proceedings of 24th Annual International Conference on the Theory and Applications of Cryptographic Techniques, Berlin: Springer,2006:445-464.
[12]HEINZELMAN W B, CHANDRAKASAN A P,BALAKRISHNAN H.An application-specific protocol architecture for wireless microsensor networks[J].IEEE Transactions on Wireless Communications, 2002,1 (4):660-670.
[13]BONEH D, SHEN E, WATERS B.Strongly unforgeable signatures based on computational diffie-hellman[C].LNCS 3958: Proceedings of9th InternationalConference on Theory and Practice in Public-Key Cryptography, Berlin:Springer, 2006: 229-240.
[14]OLIVEIRA L B, ARANHA D F, CONRADO P L, et al.TinyPBC:pairings for authenticated identity-based noninteractive key distribution in sensor networks[J].Computer Communications, 2011, 34(3): 485-493.
[15]CHEN Y,ZHAO Q,KRISHNAMURTHY V.Transmission scheduling for optimizing sensor network lifetime:a stochastic shortestpath approach[J].IEEE Transaction on Signal Processing, 2007, 55(5): 2294-2309.