文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2015.10.029
中文引用格式: 張得生,劉直良. 基于圓錐曲線(xiàn)密碼的WSNs密鑰管理方案[J].電子技術(shù)應(yīng)用,2015,41(10):107-110.
英文引用格式: Zhang Desheng,Liu Zhiliang. Key management scheme for WSNs based on conic curve cryptography[J].Application of Electronic Technique,2015,41(10):107-110.
0 引言
無(wú)線(xiàn)傳感器網(wǎng)絡(luò)(Wireless Sensor Networks,WSNs)是由多種學(xué)科高度交叉的熱點(diǎn)研究領(lǐng)域,被廣泛應(yīng)用在軍事監(jiān)察、醫(yī)療護(hù)理、交通監(jiān)管和環(huán)境監(jiān)測(cè)等各類(lèi)領(lǐng)域[1]。然而,無(wú)線(xiàn)傳感器網(wǎng)絡(luò)也面臨著諸如竊聽(tīng)、注入、陷阱、欺騙、重放、拒絕服務(wù)和HELLO擴(kuò)散攻擊等多種安全風(fēng)險(xiǎn),因此如何解決安全問(wèn)題成為無(wú)線(xiàn)傳感器網(wǎng)絡(luò)研究的熱點(diǎn)和難點(diǎn)問(wèn)題[2]。由于無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的節(jié)點(diǎn)在能量、計(jì)算能力、存儲(chǔ)能力和通信帶寬等方面有限制,傳統(tǒng)的密鑰管理方案無(wú)法直接應(yīng)用在無(wú)線(xiàn)傳感器網(wǎng)絡(luò)中,使得無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的密鑰管理面臨著諸多困難和挑戰(zhàn)。適用于無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的一種比較簡(jiǎn)單的密鑰管理方案是在所有節(jié)點(diǎn)中都預(yù)先存儲(chǔ)一個(gè)對(duì)稱(chēng)密鑰進(jìn)行通信,但是如果其中某一個(gè)節(jié)點(diǎn)被攻擊成功,則全網(wǎng)絡(luò)就不再安全,而且對(duì)稱(chēng)密鑰管理方案限制了新節(jié)點(diǎn)的加入和密鑰更新等動(dòng)態(tài)性操作,因此對(duì)稱(chēng)密鑰管理方案不能滿(mǎn)足無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的動(dòng)態(tài)性和安全性需求。而非對(duì)稱(chēng)密鑰管理方案既可以保證網(wǎng)絡(luò)的安全性需求也可以很好地滿(mǎn)足動(dòng)態(tài)性需求,然而需要更多的能量和資源開(kāi)銷(xiāo)[3]。但隨著大規(guī)模集成技術(shù)的飛速發(fā)展,傳感器節(jié)點(diǎn)在能量、計(jì)算能力、存儲(chǔ)能力和通信帶寬等方面都有很大提高,可以通過(guò)有效的控制把非對(duì)稱(chēng)密碼體制中的部分方法應(yīng)用于無(wú)線(xiàn)傳感器網(wǎng)絡(luò)中來(lái)實(shí)現(xiàn)安全密鑰管理。
圓錐曲線(xiàn)密碼是一種比橢圓曲線(xiàn)密碼更加高效的非對(duì)稱(chēng)密碼體制,具有密鑰短、參數(shù)選擇靈活、實(shí)現(xiàn)速度快和安全性高等優(yōu)點(diǎn),通過(guò)將其應(yīng)用在無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的密鑰管理方案中,給出一種基于圓錐曲線(xiàn)密碼的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)密鑰管理方案(Key Management scheme based on Conic Curve cryptography for wireless sensor network,KMCC)。所給方案可以有效實(shí)現(xiàn)通信密鑰分配以及動(dòng)態(tài)添加新節(jié)點(diǎn)、密鑰更新和回收,并且在密鑰存儲(chǔ)空間、可擴(kuò)展性和抗網(wǎng)絡(luò)攻擊等方面都要比基于橢圓曲線(xiàn)密碼的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)密鑰管理方案等經(jīng)典的密鑰管理方案具有更好的性能,因此所給方案可以較好地適用于無(wú)線(xiàn)傳感器網(wǎng)絡(luò)中。
1 KMCC方案設(shè)計(jì)
1.1 網(wǎng)路模型
假設(shè)部署的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)中有且僅有一個(gè)基站,且該基站不會(huì)失效或者被攻擊。網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)都能夠感知其鄰近的節(jié)點(diǎn),同時(shí)假設(shè)在網(wǎng)絡(luò)初始化階段不存在外部入侵的問(wèn)題,即所有節(jié)點(diǎn)都具有一定抵御外部攻擊的能力,且為每個(gè)節(jié)點(diǎn)賦予唯一的身份標(biāo)識(shí)ID以抵御Sybil攻擊和Newcomer攻擊。其中,基站作為證書(shū)管理機(jī)構(gòu),用來(lái)為每個(gè)節(jié)點(diǎn)分配證書(shū),證書(shū)內(nèi)容應(yīng)包含與節(jié)點(diǎn)私鑰匹配的公鑰、節(jié)點(diǎn)身份標(biāo)識(shí)以及時(shí)間戳。證書(shū)形式為CAi=E(PKi,IDi,T),i表示某個(gè)節(jié)點(diǎn),Ci表示節(jié)點(diǎn)i的證書(shū),SKCA表示基站的私鑰,PKi表示節(jié)點(diǎn)i的公鑰,IDi表示節(jié)點(diǎn)i身份標(biāo)識(shí)號(hào),T表示證書(shū)的有效期,且節(jié)點(diǎn)i自身私鑰為SKi,同時(shí)被注入基站的公鑰PKCA。
1.2 網(wǎng)絡(luò)初始化
部署無(wú)線(xiàn)傳感器網(wǎng)絡(luò)之前,需要對(duì)整個(gè)網(wǎng)絡(luò)中的基站和所有節(jié)點(diǎn)進(jìn)行初始化設(shè)置。首先需要構(gòu)造安全圓錐曲線(xiàn)C,然后分別在其上選取階為k的基點(diǎn)P,并定義圓錐曲線(xiàn)C上的點(diǎn)加運(yùn)算和標(biāo)量乘法運(yùn)算[4]。節(jié)點(diǎn)i的配置參數(shù)則為(k,C/Fq,E,F(xiàn),G,H),k表示有限域Fq上的素?cái)?shù),C表示有限域Fq上的圓錐曲線(xiàn),E表示有限域Fq上的加法群,F(xiàn)表示圓錐曲線(xiàn)上的Frobenius映射,G表示加法群E上隨機(jī)選取的生成元,H表示單向散列函數(shù),且有SKi=KMH(IDi),KM表示系統(tǒng)的主密鑰。
1.3 通信密鑰建立
部署無(wú)線(xiàn)傳感器網(wǎng)絡(luò)完成后,需要在基站和節(jié)點(diǎn)間建立通信密鑰,具體執(zhí)行過(guò)程如下所示:
(1)首先,每個(gè)節(jié)點(diǎn)都通過(guò)廣播“Hello”消息來(lái)發(fā)現(xiàn)鄰居節(jié)點(diǎn),鄰居節(jié)點(diǎn)在收到“Hello”消息后回復(fù)確認(rèn)消息;
(2)當(dāng)一對(duì)節(jié)點(diǎn)i和節(jié)點(diǎn)j互相確認(rèn)為鄰居節(jié)點(diǎn)之后,節(jié)點(diǎn)i通過(guò)利用公鑰證書(shū)CAi將自己的公鑰PKi發(fā)送給鄰居節(jié)點(diǎn)j,節(jié)點(diǎn)i發(fā)送給節(jié)點(diǎn)j的消息為(CAi,t)=,節(jié)點(diǎn)j發(fā)送給節(jié)點(diǎn)i的消息為(CAj,t)=
,發(fā)送的消息都包括時(shí)間戳t,主要作用是為了保證節(jié)點(diǎn)j收到證書(shū)的有效性,避免節(jié)點(diǎn)i重發(fā)已過(guò)期證書(shū)或防止惡意節(jié)點(diǎn)冒充節(jié)點(diǎn)i重發(fā)過(guò)期證書(shū);
(3)節(jié)點(diǎn)i和節(jié)點(diǎn)j只有利用預(yù)注入基站公鑰PKCA才能對(duì)證書(shū)解密,以驗(yàn)證證書(shū)是由基站發(fā)放的,并獲得鄰近節(jié)點(diǎn)的身份標(biāo)識(shí)和公鑰。節(jié)點(diǎn)j利用基站公鑰PKCA來(lái)驗(yàn)證節(jié)點(diǎn)i發(fā)送的消息,節(jié)點(diǎn)j獲得節(jié)點(diǎn)i的身份標(biāo)識(shí)IDi和公鑰PKi;同樣,節(jié)點(diǎn)i也需要利用利用基站公鑰PKCA對(duì)節(jié)點(diǎn)j發(fā)送的消息進(jìn)行驗(yàn)證
,獲得節(jié)點(diǎn)i獲得節(jié)點(diǎn)j的身份標(biāo)識(shí)IDj和公鑰PKj;
(4)鄰居節(jié)點(diǎn)i和節(jié)點(diǎn)j互相獲得對(duì)方的公鑰后,利用初始化預(yù)先加載的私鑰SKi=KM H(IDi)和SKj=KM H(IDj)建立對(duì)密鑰Ki,j。節(jié)點(diǎn)i生成對(duì)密鑰Ki,j=F(SKi, H(IDj)),節(jié)點(diǎn)j生成對(duì)密鑰Kj,i=F(SKj, H(IDi)),由映射F性質(zhì)可知Ki,j=Kj,i,則建立起鄰居節(jié)點(diǎn)i和j之間對(duì)密鑰。
1.4 節(jié)點(diǎn)的加入和刪除
新節(jié)點(diǎn)加入網(wǎng)絡(luò)時(shí),需要首先對(duì)其配置身份標(biāo)識(shí),產(chǎn)生新節(jié)點(diǎn)的證書(shū)和私鑰,再與鄰近節(jié)點(diǎn)建立通信對(duì)密鑰,具體執(zhí)行過(guò)程如下:
(1)新節(jié)點(diǎn)t請(qǐng)求加入網(wǎng)絡(luò)時(shí),基站首先為該節(jié)點(diǎn)分配一個(gè)身份標(biāo)識(shí)號(hào)IDt,用以生成證書(shū)CAt=E(PKt,IDt,T)以及私鑰SKt=KMH(IDt),并同時(shí)為該節(jié)點(diǎn)預(yù)先注入基站公鑰PKCA;
(2)新節(jié)點(diǎn)t部署后,向周?chē)?jié)點(diǎn)廣播“Hello”消息尋找鄰居節(jié)點(diǎn),鄰居節(jié)點(diǎn)回復(fù)確認(rèn)消息后,然后新節(jié)點(diǎn)t與鄰居節(jié)點(diǎn)之間建立對(duì)立對(duì)密鑰Ki,t。
由于整個(gè)網(wǎng)絡(luò)中每對(duì)鄰居節(jié)點(diǎn)的密鑰與其他節(jié)點(diǎn)之間的對(duì)密鑰是相互獨(dú)立的,所以刪除被捕獲或失效的節(jié)點(diǎn)不會(huì)給其他節(jié)點(diǎn)造成危害,節(jié)點(diǎn)刪除的執(zhí)行過(guò)程如下:
(1)當(dāng)一個(gè)節(jié)點(diǎn)s能量耗盡或被捕獲后,在網(wǎng)絡(luò)中廣播該失效或被捕獲節(jié)點(diǎn)s的身份標(biāo)識(shí)IDs及該節(jié)點(diǎn)已退出的消息,從而其證書(shū)CAs失效;
(2)其余節(jié)點(diǎn)收到節(jié)點(diǎn)s的身份標(biāo)識(shí)IDs退出的消息后,若再有節(jié)點(diǎn)s發(fā)送到消息則直接丟棄。
1.5 密鑰的更新和回收
網(wǎng)絡(luò)中鄰居節(jié)點(diǎn)利用公私密鑰對(duì)更新對(duì)密鑰,假定是由節(jié)點(diǎn)i發(fā)起密鑰更新請(qǐng)求,具體執(zhí)行過(guò)程如下所示:
(1)節(jié)點(diǎn)i采用節(jié)點(diǎn)j的公鑰PKj來(lái)加密節(jié)點(diǎn)i的身份標(biāo)識(shí)IDi和一個(gè)一次性隨機(jī)數(shù)R1,然后發(fā)送給節(jié)點(diǎn)j,即節(jié)點(diǎn)i發(fā)送消息(IDi,R1)到節(jié)點(diǎn)j,其中R1唯一地標(biāo)識(shí)節(jié)點(diǎn)i更新;
(2)節(jié)點(diǎn)j采用節(jié)點(diǎn)i的公鑰PKi來(lái)加密節(jié)點(diǎn)i的一次性隨機(jī)數(shù)R1和節(jié)點(diǎn)j新產(chǎn)生的一次性隨機(jī)數(shù)R2,然后發(fā)送給節(jié)點(diǎn)i,即節(jié)點(diǎn)j發(fā)送消息E(R1,R2)到節(jié)點(diǎn)i,其中R2唯一地標(biāo)識(shí)節(jié)點(diǎn)j更新回復(fù);
(3)節(jié)點(diǎn)i收到消息(R1,R2)進(jìn)行解密后,得到隨機(jī)數(shù)R1,所以節(jié)點(diǎn)i確認(rèn)回復(fù)消息是節(jié)點(diǎn)j發(fā)送的后采用節(jié)點(diǎn)j的公鑰PKj來(lái)加密隨機(jī)數(shù)R2,并發(fā)送給節(jié)點(diǎn)j,即節(jié)點(diǎn)i發(fā)送消息
(R2)到節(jié)點(diǎn)j;
(4)節(jié)點(diǎn)j收到消息(R2)進(jìn)行解密得到隨機(jī)數(shù)R2,所以節(jié)點(diǎn)j可以確認(rèn)此次消息是節(jié)點(diǎn)i發(fā)送的;
(5)節(jié)點(diǎn)i選擇通信會(huì)話(huà)密鑰KD,并采用自己的私鑰SKi和節(jié)點(diǎn)j的公鑰PKj加密會(huì)話(huà)密鑰KD達(dá)到密鑰更新報(bào)文消息M,,然后發(fā)送給基點(diǎn)j。
(6)節(jié)點(diǎn)j收到密鑰更新報(bào)文消息M=E(E(KD)),然后采用自己的私鑰SKj和節(jié)點(diǎn)i的公鑰PKi來(lái)解密會(huì)話(huà)密鑰KD,從而鄰居節(jié)點(diǎn)間建立新的會(huì)話(huà)密鑰。
在無(wú)線(xiàn)傳感器網(wǎng)絡(luò)中,如果有節(jié)點(diǎn)發(fā)現(xiàn)某個(gè)節(jié)點(diǎn)不合法時(shí),需要向基站對(duì)該節(jié)點(diǎn)投不信任票,當(dāng)基站收到對(duì)這個(gè)節(jié)點(diǎn)的不信任投票超過(guò)一定的閾值,則基站就會(huì)通過(guò)廣播節(jié)點(diǎn)私鑰的方式對(duì)該節(jié)點(diǎn)的密鑰進(jìn)行回收,具體執(zhí)行過(guò)程如下:
(1)當(dāng)基站收到對(duì)節(jié)點(diǎn)e的不信任投票超過(guò)閾值d時(shí),則向網(wǎng)絡(luò)廣播發(fā)送密鑰回收消息(SKe,PKe);
(2)網(wǎng)絡(luò)中節(jié)點(diǎn)在收到回收消息(SKe,PKe)后,查找自己是否與不信任節(jié)點(diǎn)e是鄰居節(jié)點(diǎn),如果不是鄰居節(jié)點(diǎn)則直接丟棄該消息,如果是鄰近節(jié)點(diǎn)則今后不再接收節(jié)點(diǎn)e的消息,等到證書(shū)過(guò)期后,則鄰居節(jié)點(diǎn)之間的對(duì)密鑰自動(dòng)撤銷(xiāo)。
2 實(shí)驗(yàn)仿真與性能分析
實(shí)驗(yàn)仿真工具采用伯克利大學(xué)研制的MICA2mote,使用的是8位ATmega128L處理器,4 KB的SRAM以及128 KB的ROM,MAC層協(xié)議采用802.11標(biāo)準(zhǔn)協(xié)議,路由協(xié)議采用DSR協(xié)議,傳感器節(jié)點(diǎn)數(shù)目為500,有且僅有1個(gè)基站。主要從安全性、存儲(chǔ)開(kāi)銷(xiāo)、能耗和可擴(kuò)展性四個(gè)方面分別與E&G方案、IBC方案和基于ECC方案三種經(jīng)典密鑰管理方案進(jìn)行分析比較,以驗(yàn)證所給KMCC方案的優(yōu)越性。
2.1 安全性分析
KMCC方案的安全是建立在圓錐曲線(xiàn)上離散對(duì)數(shù)問(wèn)題難解性的基礎(chǔ)之上的。在網(wǎng)絡(luò)通信密鑰建立過(guò)程中,攻擊者無(wú)法獲得圓錐曲線(xiàn)密碼標(biāo)量乘算法的初始密鑰k,而如果通過(guò)截獲網(wǎng)絡(luò)通信密鑰協(xié)商消息來(lái)推導(dǎo)出初始密鑰是困難的。當(dāng)有新節(jié)點(diǎn)加入網(wǎng)絡(luò)時(shí),由于該節(jié)點(diǎn)沒(méi)有初始密鑰,其現(xiàn)在的密鑰分配的密鑰無(wú)法解密之前的報(bào)文消息,因而能夠保證網(wǎng)絡(luò)的后向安全性;假如攻擊者捕獲了網(wǎng)絡(luò)中的一個(gè)節(jié)點(diǎn),由于鄰居節(jié)點(diǎn)之間的對(duì)密鑰只涉及鄰居節(jié)點(diǎn)本身,與其余節(jié)點(diǎn)無(wú)關(guān),為避免攻擊者通過(guò)恢復(fù)被捕獲節(jié)點(diǎn)初始密鑰獲取通信報(bào)文消息,可以通過(guò)密鑰更新方法來(lái)更新密鑰,從而使得老的對(duì)密鑰不能解密以后的報(bào)文或生成冒充的加密報(bào)文,從而有效防止外部惡意節(jié)點(diǎn)或被捕獲節(jié)點(diǎn)的攻擊,保證網(wǎng)絡(luò)的前向安全性。攻擊者即使捕獲控制了網(wǎng)絡(luò)一個(gè)節(jié)點(diǎn),也不可能獲取其余節(jié)點(diǎn)的密鑰信息和其他相關(guān)信息,并且可以通過(guò)其余節(jié)點(diǎn)的不信任投票來(lái)刪除該節(jié)點(diǎn),所以可以減少安全威脅影響整個(gè)網(wǎng)絡(luò),所以KMCC方案具有較高的抗毀性。
由于攻擊者總是試圖在無(wú)線(xiàn)傳感器網(wǎng)絡(luò)中通過(guò)捕獲控制傳感器節(jié)點(diǎn)來(lái)獲得其余節(jié)點(diǎn)密鑰信息,所以節(jié)點(diǎn)捕獲對(duì)于無(wú)線(xiàn)傳感器網(wǎng)絡(luò)是一種需要非常重視的安全威脅。E&G方案由于節(jié)點(diǎn)需要存儲(chǔ)密鑰個(gè)數(shù)較多,如果其中一個(gè)節(jié)點(diǎn)被捕獲,則極有可能造成多個(gè)節(jié)點(diǎn)的密鑰信息泄露,網(wǎng)絡(luò)的抗毀性較差,其節(jié)點(diǎn)的密鑰被捕獲概率為1-(1-a/P)n [5]。IBC方案、基于ECC方案以及所給KMCC方案由于只存儲(chǔ)鄰近節(jié)點(diǎn)密鑰信息,所以單個(gè)節(jié)點(diǎn)被捕獲不會(huì)擴(kuò)散整個(gè)網(wǎng)絡(luò),IBC方案的節(jié)點(diǎn)密鑰被捕獲的概率為,基于ECC方案的節(jié)點(diǎn)密鑰被捕獲的概率為
,所給KMCC方案的節(jié)點(diǎn)密鑰被捕獲概率為
。其中,a表示密鑰環(huán)大小,P表示密鑰池大小,n表示被捕獲的節(jié)點(diǎn)個(gè)數(shù),m表示網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)目,e1表示基于ECC方案的密鑰回收成功概率,e2表示KMCC方案的密鑰回收成功概率。其中,節(jié)點(diǎn)數(shù)m=500。假定令a=300,P=1 000,n=200,e1=0.27,e2=0.35,則KMCC方案與E&G方案、IBC方案和基于ECC方案的密鑰抵抗被捕獲能力的比較分析如圖1所示。
2.2 能耗分析
由于無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的能量有限,所以密鑰管理方案應(yīng)盡可能節(jié)約能量消耗,密鑰管理方案的能耗主要包括運(yùn)算能耗和通信能耗。在無(wú)線(xiàn)傳感器網(wǎng)絡(luò)中,節(jié)點(diǎn)傳輸信息所需的通信能耗比執(zhí)行計(jì)算時(shí)的運(yùn)算能耗大得多,一般認(rèn)為傳輸1 bit信息100 m所需能量大約可以執(zhí)行3 000條指令。對(duì)于E&G方案,密鑰分配建立階段需需執(zhí)行單向散列函數(shù)運(yùn)算和XOR運(yùn)算,同時(shí)需要進(jìn)行節(jié)點(diǎn)間的通信,當(dāng)密鑰環(huán)超過(guò)閾值時(shí),通信能耗將會(huì)大幅增加,當(dāng)有新節(jié)點(diǎn)加入或更新密鑰時(shí),需要重新執(zhí)行密鑰分配過(guò)程,能耗幾乎相同。對(duì)于IBC方案,需要執(zhí)行單向散列函數(shù)運(yùn)算、XOR運(yùn)算和公鑰運(yùn)算,當(dāng)需要更新密鑰時(shí),只需在鄰居節(jié)點(diǎn)之間進(jìn)行計(jì)算能量和通信能量消耗。對(duì)于基于ECC方案,需要執(zhí)行單向散列函數(shù)運(yùn)算、橢圓曲線(xiàn)密碼標(biāo)量乘運(yùn)算和橢圓曲線(xiàn)點(diǎn)加運(yùn)算,對(duì)密鑰只存在于鄰居節(jié)點(diǎn)之間,所以只需考慮鄰居節(jié)點(diǎn)之間的計(jì)算和通信能量消耗。對(duì)于KMCC方案,需要執(zhí)行單向散列函數(shù)運(yùn)算、圓錐曲線(xiàn)密碼標(biāo)量乘運(yùn)算和圓錐曲線(xiàn)點(diǎn)加運(yùn)算,對(duì)密鑰只存在于鄰居節(jié)點(diǎn)之間,所以只需考慮鄰居節(jié)點(diǎn)之間的計(jì)算和通信能量消耗,但是圓錐曲線(xiàn)密碼標(biāo)量乘運(yùn)算和圓錐曲線(xiàn)點(diǎn)加運(yùn)算優(yōu)于橢圓曲線(xiàn)密碼標(biāo)量乘運(yùn)算和橢圓曲線(xiàn)點(diǎn)加運(yùn)算,所以KMCC方案比ECC方案所需能耗更少。其中,假定網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)的初始能量為0.5 J。圖2給出了隨網(wǎng)絡(luò)規(guī)模變化KMCC方案與經(jīng)典密鑰管理方案的能耗分析比較。
2.3 存儲(chǔ)開(kāi)銷(xiāo)分析
假定節(jié)點(diǎn)之間通信密鑰的長(zhǎng)度是相等的,令存儲(chǔ)參數(shù)的開(kāi)銷(xiāo)為Sc,存儲(chǔ)單個(gè)密鑰的開(kāi)銷(xiāo)為Sk,h表示平均鄰居節(jié)點(diǎn)的個(gè)數(shù),有。對(duì)于E&G方案,只需要存儲(chǔ)節(jié)點(diǎn)的通信密鑰,所以其存儲(chǔ)開(kāi)銷(xiāo)只與網(wǎng)絡(luò)規(guī)模的大小有關(guān),則其單個(gè)節(jié)點(diǎn)的存儲(chǔ)開(kāi)銷(xiāo)為m(lnm+9.21)Sk/h[8]。對(duì)于IBC方案,需要存儲(chǔ)鄰居節(jié)點(diǎn)的通信密鑰,還需存儲(chǔ)系統(tǒng)參數(shù)、系統(tǒng)公鑰、節(jié)點(diǎn)公私鑰對(duì)以及身份標(biāo)識(shí),所以其存儲(chǔ)開(kāi)銷(xiāo)與對(duì)網(wǎng)絡(luò)規(guī)模大小和參數(shù)個(gè)數(shù)有關(guān),則其單個(gè)節(jié)點(diǎn)的存儲(chǔ)開(kāi)銷(xiāo)為Sc+(h+4)Sk[9]。對(duì)于基于ECC方案,需要存儲(chǔ)鄰居節(jié)點(diǎn)之間的通信密鑰,還需要存儲(chǔ)公共參數(shù)、節(jié)點(diǎn)公私鑰對(duì)以及節(jié)點(diǎn)認(rèn)證密鑰,所以其存儲(chǔ)開(kāi)銷(xiāo)與對(duì)網(wǎng)絡(luò)規(guī)模大小和參數(shù)個(gè)數(shù)有關(guān),則其單個(gè)節(jié)點(diǎn)的存儲(chǔ)開(kāi)銷(xiāo)為Sc+(h+3)Sk[10]。對(duì)于所給KMCC方案,需要存儲(chǔ)鄰居節(jié)點(diǎn)之間的通信密鑰,還需要存儲(chǔ)節(jié)點(diǎn)公私鑰對(duì)和節(jié)點(diǎn)認(rèn)證密鑰,所以其存儲(chǔ)開(kāi)銷(xiāo)與對(duì)網(wǎng)絡(luò)規(guī)模大小和參數(shù)個(gè)數(shù)有關(guān),則其單個(gè)節(jié)點(diǎn)的存儲(chǔ)開(kāi)銷(xiāo)為Sc+(h+2)Sk。而且由于IBC方案和基于ECC方案以及所給KMCC方案都是存儲(chǔ)鄰居節(jié)點(diǎn)之間的密鑰信息,所以網(wǎng)絡(luò)規(guī)模的增加節(jié)點(diǎn)的存儲(chǔ)開(kāi)銷(xiāo)變化不大。則KMCC方案與E&G方案、IBC方案和基于ECC方案的存儲(chǔ)開(kāi)銷(xiāo)比較如圖3所示。
3 結(jié)束語(yǔ)
密鑰管理是無(wú)線(xiàn)傳感器網(wǎng)絡(luò)其他安全機(jī)制的基礎(chǔ),也是無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的研究熱點(diǎn)。通過(guò)將圓錐曲線(xiàn)密碼應(yīng)用到無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的密鑰管理中,給出了一種有效的KMCC密鑰管理方案。由于通信密鑰的生成算法是基于圓錐曲線(xiàn)上離散對(duì)數(shù)問(wèn)題的難解性之上的,可以有效防止外來(lái)節(jié)點(diǎn)的攻擊,同時(shí)新節(jié)點(diǎn)加入的密鑰生成以及密鑰更新與回收采用的是圓錐曲線(xiàn)密碼,可以有效提高密鑰安全性以防止內(nèi)部惡意節(jié)點(diǎn)的攻擊。并且所給KMCC方案的密鑰建立、更新、回收、節(jié)點(diǎn)對(duì)密鑰生成以及新節(jié)點(diǎn)密鑰建立都是發(fā)生在鄰居節(jié)點(diǎn)之間的通信,不需要進(jìn)行集中管理,所以具有良好的動(dòng)態(tài)擴(kuò)展性。通過(guò)與經(jīng)典密鑰管理方案相比,所給方案在安全性、能量消耗和存儲(chǔ)開(kāi)銷(xiāo)方面都具有較好的優(yōu)越性,因此所給方案具有較好的可行性,適用于動(dòng)態(tài)無(wú)線(xiàn)傳感器網(wǎng)絡(luò)并且可以有效保證網(wǎng)絡(luò)性能。
參考文獻(xiàn)
[1] FARRUH I,AMIR S M,SUNG W K.Energy consumption balancing(Ecb) issues and mechanisms in wireless sensor networks(WSNs):a comprehensive overview[J].Euro.Transac-tions on Telecommunications,2011,22(4):151-167.
[2] LEVI A,TASCI S E.Simple,extensible and flexible random key predistribution schemes for wireless sensor networks using reusable key pools[J].Journal of Intelligent Manufac-turing,2010,21(5):635-645.
[3] 郭萍,張宏,傅德勝,等.一種混合輕量型無(wú)線(xiàn)傳感器網(wǎng)絡(luò)公鑰密碼方案[J].計(jì)算機(jī)科學(xué),2012,39(1):69-72.
[4] 劉鐸.有限域GF(pm)上圓錐曲線(xiàn)標(biāo)量乘快速算法[J].北京交通大學(xué)學(xué)報(bào),2013,37(5):132-137.
[5] ECHENAUER L,GLIGOR V D.A key management schemefor distributed sensor network[C].Proc.of the 9th ACM .on Computer and Communications Security,2002:41-47.
[6] ZHANG Y C,LIU W,LOU W J,et al.Location based compromise- tolerant security mechanisms for wireless sensor networks[C].IEEE Journal on Selected Areas in Communications,2006,24(2):247-260.
[7] 蹇波,郭永輝,羅長(zhǎng)遠(yuǎn),等.基于ECC的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)密鑰管理協(xié)議[J].計(jì)算機(jī)工程,2010,36(3):142-144.
[8] 羅文俊,付海洋.一種基于橢圓曲線(xiàn)的WSN密鑰管理方案[J].計(jì)算機(jī)工程與應(yīng)用,2013,49(19):88-91.
[9] 劉濤,熊焰,黃文超,等.基于信譽(yù)模型的WSN密鑰管理方案[J].計(jì)算機(jī)工程,2013,39(11):123-126.
[10] 王亮,王偉欣,張林.一種新的傳感器網(wǎng)絡(luò)的密鑰協(xié)商算法[J].傳感器與微系統(tǒng),2013,32(7):129-131.