曾小飛 盧建朱 王潔
摘要:針對無線傳感器網(wǎng)絡(luò)(WSN)中基于數(shù)字簽名的公鑰加密體制的廣播認(rèn)證需要耗費(fèi)大量的能量,以及傳感器節(jié)點(diǎn)資源有限的問題,為了減少傳感器節(jié)點(diǎn)的能量耗費(fèi)和加快傳感器節(jié)點(diǎn)的認(rèn)證,提出一種傳感器節(jié)點(diǎn)相互協(xié)作的廣播認(rèn)證方案。首先,用戶向無線傳感器網(wǎng)絡(luò)的組網(wǎng)絡(luò)廣播其簽名信息,但不廣播簽名信息中點(diǎn)的縱坐標(biāo);然后,組網(wǎng)絡(luò)中的高能量節(jié)點(diǎn)依據(jù)點(diǎn)的橫坐標(biāo)和橢圓曲線方程計(jì)算得出縱坐標(biāo),并將其廣播給組內(nèi)的一般節(jié)點(diǎn),同時利用vBNN-IBS數(shù)字簽名對用戶廣播的簽名信息進(jìn)行認(rèn)證,并轉(zhuǎn)播有效的簽名信息;最后,組網(wǎng)絡(luò)內(nèi)的一般節(jié)點(diǎn)收到縱坐標(biāo)后,利用橢圓曲線方程驗(yàn)證其有效性和正確性,同時執(zhí)行和高能節(jié)點(diǎn)相同的簽名認(rèn)證過程,并轉(zhuǎn)播有效的簽名信息。此外,該方案通過整合立即撤銷和自動撤銷以最大限度地減小授權(quán)撤銷列表(ARL)的長度。仿真實(shí)驗(yàn)表明,當(dāng)認(rèn)證節(jié)點(diǎn)收到來自鄰居節(jié)點(diǎn)的數(shù)據(jù)包達(dá)到一定數(shù)目時,該方案的能量耗費(fèi)和認(rèn)證總時間比
利用WSN中傳感器節(jié)點(diǎn)間的相互協(xié)作來加速
vBNN-IBS的簽名方案分別減少了41%和66%。
關(guān)鍵詞:無線傳感器網(wǎng)絡(luò);數(shù)字簽名;公鑰加密體制;廣播認(rèn)證;用戶撤銷
中圖分類號:TP309.7
文獻(xiàn)標(biāo)志碼:A
0引言
廣播是無線傳感器網(wǎng)絡(luò)(Wireless Sensor Network,WSN)中數(shù)據(jù)分發(fā)和收集的主要方式, 不但用于基站向網(wǎng)絡(luò)中發(fā)布查詢、配置命令和管理信息,也用于傳感器節(jié)點(diǎn)和其鄰居之間的通信。為了獲得WSN中的有用信息,用戶也可動態(tài)地向WSN中廣播一些命令或需求信息[1]。由于無線鏈路的開放性,如果不對其廣播信息實(shí)施安全機(jī)制,攻擊者很容易冒充授權(quán)用戶、基站或合法的傳感器節(jié)點(diǎn)對網(wǎng)絡(luò)進(jìn)行攻擊。廣播認(rèn)證是保證廣播信息的完整性和廣播源的真實(shí)性的重要手段,是WSN的基本安全服務(wù)之一[2]。
當(dāng)廣播認(rèn)證的問題一開始出現(xiàn)時,人們首先想到的是使用基于對稱加密的μTESLA(an extension to Timed Efficient Stream Loss-tolerant Authentication)方案,但是μTESLA方案會導(dǎo)致拒絕服務(wù)攻擊(Denial of Service, DoS)攻擊[3]。由于廣播信息的接收者往往是互不信任的,因此廣播認(rèn)證要求一種非對稱的機(jī)制。WSN廣播認(rèn)證目前主要存在兩種方式:基于消息認(rèn)證碼(Message Authentication Code, MAC)方式和基于數(shù)字簽名認(rèn)證的方式?;谙⒄J(rèn)證碼的認(rèn)證方案主要是μTESLA[4]及其改進(jìn)方案。Perrig[5]等通過時間劃分,將每個小的時隙與一個由密鑰種子生成的反向散列鏈上的密鑰對應(yīng),并通過延遲公布密鑰的方法實(shí)現(xiàn)了認(rèn)證的非對稱性。但由于密鑰的延遲發(fā)布,敵手易發(fā)動泛洪攻擊和蟲洞攻擊[6]。
基于數(shù)字簽名的公鑰方案一度被認(rèn)為不適用于傳感器網(wǎng)絡(luò),但研究表明:即使是軟件實(shí)現(xiàn)的公鑰方案也可用于傳感器網(wǎng)絡(luò)[7]。由于橢圓曲線上的數(shù)字簽名系統(tǒng)為160b的密鑰提供了與1024b密鑰的RSA(Rivest-Shamir-Adleman)方案相同的安全性,且不需要延遲發(fā)布密鑰,提供了比μTESLA 等方案更好的安全性及靈活性,為WSN中的廣播認(rèn)證提供了一種重要的認(rèn)證方式[8]。由于傳感器節(jié)點(diǎn)資源有限,開銷是一個不容忽視的問題。因此,在基于數(shù)字簽名的廣播認(rèn)證方案中以低能耗的方式對虛假數(shù)據(jù)進(jìn)行認(rèn)證過濾尤為重要[6]。
近兩年,有研究者提出可以通過傳感器節(jié)點(diǎn)的相互協(xié)作來加快簽名認(rèn)證[9]。受此啟發(fā),Benzaid等[10]利用WSN中傳感器節(jié)點(diǎn)間的相互協(xié)作來加速vBNN-IBS(a variant of Bellare-Namprempre-Neben-Identity-Based Signature)簽名方案的廣播認(rèn)證(以下簡稱Benzaid方案),以減少傳感器節(jié)點(diǎn)的能耗。具體地,傳感器節(jié)點(diǎn)通過接收β個鄰居節(jié)點(diǎn)傳送過來的中間計(jì)算結(jié)果實(shí)現(xiàn)簽名認(rèn)證,以加速節(jié)點(diǎn)的廣播認(rèn)證和減少認(rèn)證節(jié)點(diǎn)的能耗。該方法僅當(dāng)β個鄰居節(jié)點(diǎn)傳送過來的中間計(jì)算結(jié)果完全相同時,認(rèn)證節(jié)點(diǎn)執(zhí)行點(diǎn)乘運(yùn)算的次數(shù)從3降為1(簡記為情形Ⅰ);否則,該節(jié)點(diǎn)仍需要3次點(diǎn)乘運(yùn)算執(zhí)行通常的簽名認(rèn)證(簡記為情形Ⅱ)。
后一種情形(情形Ⅱ)不僅沒有減少認(rèn)證節(jié)點(diǎn)的計(jì)算成本、認(rèn)證時間,反而使認(rèn)證節(jié)點(diǎn)在等待β個數(shù)據(jù)包和鄰居節(jié)點(diǎn)傳送中間計(jì)算結(jié)果時增加了其認(rèn)證時間、通信成本和能量耗費(fèi)。對于前一種情形(情形Ⅰ),通過分析發(fā)現(xiàn),當(dāng)要求的鄰居節(jié)點(diǎn)數(shù)目β較大時,也不能實(shí)現(xiàn)節(jié)能,而且認(rèn)證延時增加;而較小的β值又可能導(dǎo)致攻擊者的假數(shù)據(jù)信息不能及時有效地識別過濾。為此,本文設(shè)計(jì)了一種新的節(jié)點(diǎn)協(xié)作機(jī)制,以節(jié)約傳感器節(jié)點(diǎn)的能量和快速實(shí)現(xiàn)基于數(shù)字簽名的廣播認(rèn)證。
為減少通信成本和縮短認(rèn)證延時,本文提出一種數(shù)字簽名的有效認(rèn)證機(jī)制,以實(shí)現(xiàn)WSN中的廣播認(rèn)證。為了節(jié)約通信成本,在簽名中點(diǎn)的y坐標(biāo)不與簽名一起發(fā)送,認(rèn)證節(jié)點(diǎn)通過與鄰居的高能量節(jié)點(diǎn)合作獲取對應(yīng)點(diǎn)的y坐標(biāo),其中高能量節(jié)點(diǎn)根據(jù)點(diǎn)的x坐標(biāo)和橢圓曲線表達(dá)式執(zhí)行一個平方根計(jì)算得到其y坐標(biāo)。認(rèn)證節(jié)點(diǎn)利用點(diǎn)的x坐標(biāo)和橢圓曲線表達(dá)式可檢查高能節(jié)點(diǎn)中間計(jì)算結(jié)果的有效性,然后根據(jù)恢復(fù)的點(diǎn)執(zhí)行通常的簽名認(rèn)證。進(jìn)一步地,通過整合即時撤銷和自動撤銷,減小授權(quán)撤銷列表(Authorization Revocation List, ARL)的長度,加快用戶授權(quán)撤銷的檢查,提升簽名認(rèn)證速度。與改進(jìn)vBNN-IBS簽名方案相比,本文所提出的機(jī)制減小了廣播認(rèn)證的延時,加快了無線傳感器網(wǎng)絡(luò)的廣播認(rèn)證,降低了網(wǎng)絡(luò)節(jié)點(diǎn)的能量耗費(fèi)。
1本文設(shè)計(jì)方案
依據(jù)vBNN-IBS簽名方案的有效性和傳感器節(jié)點(diǎn)資源有限的特性,本章設(shè)計(jì)了一個傳感器節(jié)點(diǎn)相互協(xié)作的廣播認(rèn)證方案。系統(tǒng)包含向無線傳感器網(wǎng)絡(luò)發(fā)布信息的用戶,驗(yàn)證用戶發(fā)布信息的無線傳感器網(wǎng)絡(luò)中的傳感器節(jié)點(diǎn)、管理用戶及其無線傳感器網(wǎng)絡(luò)的系統(tǒng)管理者。該方案由系統(tǒng)初始化、用戶授權(quán)、用戶簽名的生成、簽名認(rèn)證和用戶授權(quán)撤銷五部分組成。相關(guān)的具體操作將在下面描述。
1.1系統(tǒng)初始化
令q是一個整數(shù),p是一個大素?cái)?shù)。假設(shè)G是定義在數(shù)域Fq中橢圓曲線Ep(a,b)上的加法群,P是G的n階生成元。系統(tǒng)為基站分配一個私鑰/公鑰對(x,P0),其中x∈Zn,P0=xP;然后選取兩個安全的Hash函數(shù)H1:{0,1}*G*1→Zn和H2:{0,1}*→Zn;最后系統(tǒng)廣播公共參數(shù)(q,p,n,Ep(a,b),P,P0,H1,H2)。
1.2用戶授權(quán)
對于有需要生成相關(guān)簽名信息的用戶,系統(tǒng)運(yùn)行私鑰生成器(Private Key Generator, PKG)為其簽發(fā)一個私鑰/公鑰對(R,s,tU),其中:R=rP,s=r+cx,c=H1(IDU‖tU‖R),r是Zn中的一個隨機(jī)整數(shù),IDU是用戶U的身份標(biāo)識符,tU是系統(tǒng)發(fā)布簽名密鑰的時間。系統(tǒng)可通過一個安全渠道(如密鑰信道)將簽名密鑰(R,s,tU)發(fā)送給用戶U。
系統(tǒng)維護(hù)管理一個授權(quán)撤銷列表ARL,初始設(shè)置為空集。如果一個用戶的身份標(biāo)識符在ARL中,則其簽名密鑰的授權(quán)被撤銷。
1.3用戶簽名的生成
假設(shè)用戶U現(xiàn)需要向無線傳感器網(wǎng)絡(luò)廣播消息m=m′‖IDU‖tt,其中:m′是用戶U的簽名信息,tt是用戶U當(dāng)前的時間戳。用戶U利用簽名密鑰(R,s,tU)生成對應(yīng)信息m的簽名,具體操作如下:
在簽名的協(xié)作認(rèn)證中,首先檢測用戶IDU是否包含在撤銷列表ARL中。為此,傳感器節(jié)點(diǎn)需要遍歷ARL。冗長的ARL將降低簽名認(rèn)證的效率,減少ARL的長度是提高數(shù)字簽名認(rèn)證效率的一個重要因素。
1.5用戶授權(quán)撤銷
假設(shè)每個授權(quán)的最長有效期為Δ。對于持有授權(quán)簽名密鑰(R,s,tU)的用戶U,有效期為[tU,tU+Δ)時間段,在時刻tU+Δ將自動地撤銷該授權(quán)。若該用戶申請保留授權(quán),系統(tǒng)在時刻tU+Δ之前,生成一個在時刻tU+Δ啟用的新授權(quán)簽名密鑰(R′,s′,tU+Δ)。
對于持有授權(quán)簽名密鑰(R,s,tU)的用戶U,在時間段[tU,tU+Δ)其簽名密鑰泄露或被確認(rèn)為惡意用戶,系統(tǒng)將撤銷該授權(quán)。為此,系統(tǒng)將用戶的IDU和授權(quán)時間tU放入ARL中,實(shí)現(xiàn)用戶授權(quán)的即時撤銷。然后,系統(tǒng)自動清除ARL中滿足t-tU′≥Δ的授權(quán)數(shù)據(jù)(IDU′,tU′),向WSN所有傳感器節(jié)點(diǎn)廣播更新的ARL,其中t是系統(tǒng)的當(dāng)前時間。
通過授權(quán)到期的自動撤銷和對ARL中到期撤銷數(shù)據(jù)的清除操作,極大地減少了ARL的長度,可節(jié)約傳感器節(jié)點(diǎn)的遍歷時間。進(jìn)一步地,Δ越小,相應(yīng)的ARL的長度越短,但系統(tǒng)需要頻繁地更新申請保留授權(quán)的更新,所以選擇合適的Δ,需要平衡系統(tǒng)的有效性與傳感器節(jié)點(diǎn)遍歷ARL的有效性,它是對這兩者的折中。
2安全性分析
本文方案的安全性是基于安全的Hash函數(shù)和vBNN-IBS簽名方案的有效性。下面將從三方面對本文方案進(jìn)行安全性分析:本文簽名方案的安全性、攻擊者私自修改帶時間戳的用戶授權(quán)的安全性和廣播信息認(rèn)證的安全性。
2.1本文簽名方案的安全性分析
定理1
若BNN-IBS簽名方案是可對抗偽造攻擊的,則vBNN-IBS簽名方案也可對抗偽造攻擊[7]。
定理2
若vBNN-IBS簽名方案是可對抗偽造攻擊的,則本文簽名方案也可對抗偽造攻擊。
由定理1得定理2,下面用反證法證明定理2,具體如下:
3性能分析
本文方案與文獻(xiàn)[10]都是基于橢圓曲線上的vBNN-IBS簽名方案。在vBNN-IBS簽名認(rèn)證中,傳感器節(jié)點(diǎn)的能量主要耗費(fèi)在信息的接受和發(fā)送、簽名驗(yàn)證中的相關(guān)計(jì)算以及對授權(quán)撤銷列表ARL的遍歷。本章將從計(jì)算成本和通信成本兩方面對本文方案的性能進(jìn)行分析,并與Benzaid方案[10]作比較。
3.1計(jì)算成本分析
假設(shè)TP是橢圓曲線上一個加法群G上的點(diǎn)乘運(yùn)算消耗的時間;TS是加法群G上兩個點(diǎn)的加法運(yùn)算消耗的時間;Ty是計(jì)算橢圓曲線上一個點(diǎn)的橫坐標(biāo)對應(yīng)的縱坐標(biāo)消耗的時間;Th是執(zhí)行一次哈希運(yùn)算消耗的時間;Tb是授權(quán)撤銷列表ARL執(zhí)行一次掃描和比較操作消耗的時間;L表示當(dāng)前授權(quán)撤銷列表ARL的長度。表1給出了本文方案與Benzaid方案關(guān)于高能節(jié)點(diǎn)和一般節(jié)點(diǎn)的計(jì)算成本比較。
本文方案和Benzaid方案高能節(jié)點(diǎn)的能量耗費(fèi)對比如圖2所示;本文方案和Benzaid方案一般節(jié)點(diǎn)的能量耗費(fèi)對比如圖3所示;本文方案和Benzaid方案高能節(jié)點(diǎn)的認(rèn)證總時間對比如圖4所示;本文方案和Benzaid方案一般節(jié)點(diǎn)的認(rèn)證總時間對比如圖5所示。
綜上所述,從理論分析和實(shí)驗(yàn)仿真可知,與Benzaid方案相比,本文方案減小了廣播認(rèn)證的延時,加快了無線傳感器網(wǎng)絡(luò)的廣播認(rèn)證,降低了傳感器節(jié)點(diǎn)的能量耗費(fèi)。
5結(jié)語
本文提出了一種關(guān)于無線傳感器網(wǎng)絡(luò)中廣播簽名的有效認(rèn)證機(jī)制,其安全性是基于單向的哈希函數(shù)和基于橢圓曲線上離散對數(shù)難問題的vBNN-IBS簽名方案。本文所提出的方案通過設(shè)置組網(wǎng)絡(luò)和高能節(jié)點(diǎn),通過高能節(jié)點(diǎn)和一般節(jié)點(diǎn)的相互協(xié)作,可及時有效地認(rèn)證所接收的廣播簽名信息。和Benzaid方案相比,能較好地在復(fù)雜多變的攻擊環(huán)境中正確有效地認(rèn)證網(wǎng)絡(luò)中的廣播簽名,同時減少了高能節(jié)點(diǎn)和一般節(jié)點(diǎn)的能量耗費(fèi),減小了廣播認(rèn)證延時,從而達(dá)到更快速的廣播認(rèn)證。此外,本文方案使用帶時間戳的用戶授權(quán),使用戶授權(quán)到期自動取消,提高了系統(tǒng)地實(shí)用性。在廣播簽名的認(rèn)證中,關(guān)于傳感器節(jié)點(diǎn)的相互協(xié)作與隱私保護(hù)將是我們需要深入探討的一個方面。
參考文獻(xiàn):
[1]陶硯蘊(yùn),徐萃華,林家駿.無線傳感器網(wǎng)絡(luò)的安全性研究[J].計(jì)算機(jī)安全,2007(4):8-13. (TAO Y Y, XU C H, LIN J J. Research on security of wireless sensor networks[J]. Network and Computer Security, 2007(4): 8-13.