?

基于圓錐曲線密碼的雙簇頭WSNs密鑰管理

2017-01-05 06:42朱海水孟慶玉
中國電子科學研究院學報 2016年5期
關鍵詞:鏈表公鑰密鑰

朱海水,孟慶玉

(永城職業學院,河南 永城 476600)

工程與應用 doi:10.3969/j.issn.1673-5692.2016.05.017

基于圓錐曲線密碼的雙簇頭WSNs密鑰管理

朱海水,孟慶玉

(永城職業學院,河南 永城 476600)

密鑰安全與節點能量受限是無線傳感器網絡密鑰管理中要同時考慮的問題。為有效改善節點密鑰存儲開銷和通信能耗開銷,通過結合圓錐曲線密碼和單向散列函數,給出一種基于圓錐曲線密碼的雙簇頭無線傳感器網絡密鑰管理方案。該方案中主簇頭節點負責安全收集和簇內節點的數據傳輸,副簇頭節點則負責簇內密鑰管理工作。由性能分析結果可知:該方案能保證節點的高連同率與強抗捕獲性,較低的存儲開銷與通信能耗開銷,以及良好的可擴展性,可較好地應用在實際的無線傳感器網絡環境中。

密鑰安全與節點能量受限是無線傳感器網絡密鑰管理中要同時考慮的問題。為有效改善節點密鑰存儲開銷和通信能耗開銷,通過結合圓錐曲線密碼和單向散列函數,給出一種基于圓錐曲線密碼的雙簇頭無線傳感器網絡密鑰管理方案。該方案中主簇頭節點負責安全收集和簇內節點的數據傳輸,副簇頭節點則負責簇內密鑰管理工作。由性能分析結果可知:該方案能保證節點的高連同率與強抗捕獲性,較低的存儲開銷與通信能耗開銷,以及良好的可擴展性,可較好地應用在實際的無線傳感器網絡環境中。

0 引 言

無線傳感器網絡(Wireless Sensor Networks, WSNs)需先隨機在對象區域內投撒大量的微型傳感器節點,再應用無線通信技術組成基于多跳路由的自組織網絡,同時結合微電子、計算機及傳感器技術等[1],主要作用是協作感知、采集以及處理部署區域內監測對象的數據信息,然后傳送給基站,其被廣泛應用在國防軍事、醫療衛生、交通管理和環境監測中,具有巨大的軍事及商業價值。由于無線傳感器網絡一般都部署在無人監管、敵方陣營或其它環境惡劣等不適宜人勘探的區域,所以網絡節點易遭竊聽、捕獲、篡改、重放等攻擊[2-3]。而無線傳感器網絡在能量、帶寬、通信能力、計算處理能力、存儲空間等資源受限,使得已有的成熟密碼方案無法很好地直接應用于網絡,所以密碼安全的問題特別是密鑰管理問題目前已經變成無線傳感器網絡中的熱點與難點問題[4]。在無線傳感器網絡中采用非對稱加密算法將需要大量的資源和能量開銷,目前在無線傳感器網絡中一般都是采用基于身份的公鑰系統進行密鑰管理。文獻[5]給出了一種應用于無線傳感器網絡的改進RSA算法,通過利用中國剩余定理和蒙哥馬利算法,有效減少了運算和存儲開銷并提高了節點壽命,但其資源和能量消耗仍較大。文獻[6]給出了一種基于ECC的無線傳感器網絡密鑰管理協議,由于ECC體制的密鑰短、計算速度快使得節點的資源和能量消耗有效降低,提升了網絡工作周期。而文中給出的基于圓錐曲線密碼的雙簇頭無線傳感器網絡密鑰管理方案( key management scheme of Dual Cluster Heads for wireless sensor networks based on Conic Curve Cryptography, DCHC3)在基于身份的公鑰密碼算法的基礎上,通過結合圓錐曲線和雙簇頭無線傳感器網絡拓撲結構的優點,進一步有效地降低了節點的能量和資源消耗,并且保證了網絡的高安全性。這是因為,一方面圓錐曲線在求逆、求階以及求點倍數等運算中都比較容易,且用整數的標準二進制(NAF)表示時存在快速計算群元整數倍的方法,因此在每個傳感器節點中采用圓錐曲線加密體系進行加/解密比橢圓曲線密碼體系更加高效,并且圓錐曲線加密體系具有密鑰長度更短、處理速度更快、所需存儲空間更小、抗攻擊能力更強等優點,將其應用于無線傳感器網絡中不僅能夠提供高安全性,而且可以進一步降低節點的資源和能量消耗;另一方面網絡采用雙簇頭的拓撲結構形式,能夠有效避免單個簇頭因能量消耗過快而過早失效,主簇頭(Main Cluster Head, MCH)節點負責安全收集以及簇成員節點采集數據的傳輸,副簇頭(Assistant Cluster Head, ACH)節點負責簇內節點的密鑰管理,從而可以有效均衡網絡能耗同時延長網絡壽命,達到兼顧密鑰安全與均衡能耗的目的。所給DCHC3方案能夠有效實現密鑰的生成與分發、節點的動態加入和退出、密鑰更新與回收、建立通信等,在連通率、抗捕獲性、可擴展性、能耗開銷及存儲開銷等方面有較好的性能,可很好地應用在無線傳感器網絡中。

1 網絡模型

假設網絡由N個節點組成,被隨機播撒在長為u、寬為v的矩形區域中,分成n個簇,每個簇包含主簇頭和副簇頭,且最多有M個節點。同時綜合考慮成本和安全性等因素,采用包括基站、Sink節點、普通節點等不同性能節點,如圖1所示,且具有如下性質:

(1)網絡中的節點時間均同步,且部署后位置不變;

(2)網絡中的節點均同構,且都被賦予唯一的身份標識ID;

(3)網絡中的節點都能準確獲知自身位置和當前時間,也均可定向發送消息或是傳輸數據,同時可根據消息強度大小近似地估算出節點之間的距離,并且也能根據節點之間的距離來調整其發射功率大??;

(4)網絡在初始化參數階段不會被攻擊,全部節點均能抵抗一定的外部攻擊,且在部署前后的短時間內均為安全的;

(5)網絡中僅有一個基站BS,且其位置固定,在存儲空間、計算能力、能量等方面沒有限制,可視為絕對安全可信,主要負責管理全網絡所有節點的數據傳輸以及與外網通信;

(6)網絡中Sink節點具有能量高、處理速度快、通信能力強、存儲空間大等特點,且擁有可判別其它節點狀態(如是否被捕獲、當前能量狀態等)的監測機制;

(7)網絡中普通節點的能量、計算能力、存儲空間等均受限,只負責數據采集和傳輸,且節點間一般不隨意通信;

(8)網絡中簇頭均在Sink節點中選擇,主簇頭的功能主要是收集、融合及轉發簇內節點感知的數據,以及同基站或是其它簇頭之間的通信;副簇頭的功能主要是簇內節點的管理(如發起簇頭選舉、簇內密鑰更新等),以及同基站之間的緊急通信。

圖1 網絡模型圖

2 DCHC3密鑰管理方案

2.1 初始化參數

節點被部署之前,BS可先通過密鑰生成中心PKG來完成參數的初始化,其步驟如下:

(3)根據私鑰種子矩陣XPR生成對應的公鑰種子矩陣XPK,其中yij=xijQ,1≤i≤m,1≤j≤n,(在第1節網絡模型假設的性質4和5中,由于初始化參數階段是在基站BS中完成的,而一個無線傳感器網絡中僅有一個基站,且被視為是絕對安全可信的,所以在初始化參數階段可認為是安全的。);

(5)基站存儲參數(C,Q,p,q,H1,H2,XPR,XPK),并將參數(C,Q,p,q,H2)存儲到各個傳感器節點中用于節點加/解密進行安全通信。

2.2 預分發密鑰種子對

在初始化參數之后,BS給所有節點都分配一個唯一身份標識ID∈{0,1}*,并且創建一個ID鏈表用于存儲節點的ID,然后依照ID信息生成節點種子密鑰對。

(2)在私鑰種子的矩陣XPR中選擇節點的私鑰種子SeedXID={xa11,…xaii,…xann},xaii為XPR中對應的第ai行i列的值;

(3)在公鑰種子的矩陣YPK中選擇節點的公鑰種子SeedYID={ya11,…yaij,…yann},yaii為YPK中對應的第aj行j列的值;

2.3 生成密鑰對

基站根據節點的位置及Sink節點的數目等情況,將監測區域劃分成若干個簇,然后在各簇中的Sink節點中選舉簇頭,并將簇頭的ID存儲到簇頭鏈表中,同時使用自身的私鑰加密簇頭的ID之后在整個網絡中進行廣播。簇中的全部Sink節點在收到BS的廣播消息之后,利用基站公鑰解密該廣播消息并驗證其自身是否被選為簇頭,如果是則修改自身的類型標識,否則不需修改。則某節點A生成其自身公私密鑰對的步驟如下:

(1)A使用GPS模塊獲取自身的位置信息LA與當前時間TA,同時生成密鑰參數KPA={TPA‖LA‖TA},TPA為A的類型標識,包含主簇頭、副簇頭、Sink節點以及簇成員節點;

(2)計算密鑰參數散列值H2(KPA)=kpA1…kpAi…kpAn,其中kpAi是H2(KPA)的第i比特;

2.4 節點加/解密

假設普通節點A需要與MCH按圓錐曲線密碼進行安全通信,發送信息為MS,則:

(1)A將信息MS編碼成圓錐曲線C上一個明文點P,然后計算H1(IDMCH‖IDA)=h;

(2)A將明文點P加密成圓錐曲線C上加密點C=P+h·PKMCH,并發送給MCH;

(4)MCH解碼P后獲得MS,并向A回復消息收到的通知。

2.5 建簇與節點注冊

(1)ACH首先廣播消息PublicACH-1={TK1,IDACH,PKACH,T1},其中TK1是ACH的聲明信息,IDACH為ACH的身份標識,PKACH為ACH的公鑰,T1表示當前時刻;

(2)A比較所接收的廣播消息強度,并選擇響應消息強度最大的副簇頭節點,并發送申請加入該簇的消息RequestA=PKACH(TK2‖TPA‖IDA‖PKA‖STA‖T2);

(3)ACH收到A的入簇申請后,首先檢驗是否滿足條件T2-T1<ΔT,其中ΔT是ACH接受范圍的延時時長。如果滿足上述條件,則將A的信息存儲到節點注冊信息鏈表中,并把A的信任度級別設為最高;如果不滿足上述條件,則向A發送歡迎入簇的消息,同時降低A的信任度級別。A收到ACH的消息之后即可再次申請入簇,ACH若接受其此次申請,則將A的信息存儲到節點注冊信息鏈表中,否則忽略該申請并將A加入黑名單,同時在簇內廣播A的ID,簇內其余節點將不再同A進行通信;

(4)ACH在收到某個Sink節點申請成為主簇頭的消息之后,則會隨即向BS發送驗證申請RequestACH-1=PKBS(TK3‖IDACH‖PKACH‖IDACH‖PKMCH‖T3);

(5)BS解密ACH發送的驗證申請,并在簇頭鏈表中找到TK3中簇對應的預分配主副簇頭的ID。若驗證成功,BS則將主副簇頭的公鑰存儲到簇頭鏈表中,同時向ACH回復驗證的結果ResultBS-1=PKACH(TK4‖IDBS‖T4);否則,忽略ACH的驗證申請,同時向ACH發送警告消息;

(6)ACH解密BS發的信息后先驗證基站的ID和TK4,若驗證通過則在簇內廣播信息PublicACH-2={TK5,IDMCH,PKMCH,T5};若BS驗證結果表明該Sink節點并不是預先設置的主簇頭,則ACH把該Sink節點加到黑名單中并廣播其ID信息,而簇內其余節點也不會再與該Sink節點進行通信,同時ACH將重新進行主簇頭的選舉;

(7)ACH把簇中的節點注冊信息鏈表加密后分別發給MCH與BS,此時則完成了節點注冊與建簇。然后ACH將休眠,但會不定期地監測簇內各節點的狀態,并更新節點的狀態。

2.6 簇頭更新

(1)網絡經過一段的時間運行之后,BS依照同各個簇頭的通信狀態來判斷各簇頭當前運行的狀態,如果發現簇頭異常,BS則向該簇ACH發送簇頭更新消息OrderBS=PKACH(TK6‖IDBS‖T6);

(2)ACH解密后首先驗證IDBS,然后根據TK6啟動簇頭更新,通過比較簇內所有Sink節點的位置、信任度及剩余能量等信息,在綜合分析后選舉出新的主副簇頭,同時向BS發送結果ResultACH=PKBS(TK7‖IDACH‖IDNew-ACH‖IDNew-MCH‖T7);

(3)BS解密ResultACH并同時驗證選舉出的新的主副簇頭信息。如若驗證成功則向ACH回復驗證的結果ResultBS-2=PKACH(TK8‖IDBS‖T8),同時更新該簇所存儲的簇頭鏈表,如若沒有驗證成功,BS則將直接指定簇頭;

(4)ACH接收到BS發送的驗證結果之后,即可在簇內廣播簇頭更新結果的消息PublicACH-3={TK9,IDACH,IDNew-ACH,IDNew-MCH,T9},簇內各節點在接收到ACH廣播的簇頭更新的消息之后,首先要檢驗消息的魯棒性,驗證之后則存儲兩個新簇頭的ID,然后新的副簇頭便可啟動密鑰更新。如果BS檢測到副簇頭存在異常,則令主簇頭代替副簇頭并立即啟動簇頭更新,如果主副簇頭都失效,此時BS需重新指定副簇頭,并再次啟動簇頭選舉及節點注冊。

2.7 更新簇內密鑰

ACH根據監測結果對簇內狀態進行判段,如果檢測到簇內的節點狀態變化比較大,則能判定該網絡已經不再是安全的,此時則需要啟動簇內密鑰更新。

(1)ACH要先完成其自身的密鑰更新,再向簇內其余節點發送更新密鑰的指令OrderACH={TK10,IDACH,PKNew-ACH,T10},該指令應包含ACH的新公鑰PKNew-ACH;

(2)節點A接收更新密鑰的指令OrderACH后,先將密鑰參數KPA={TPA‖LA‖TA}中的TA替換,再按公私鑰對生成流程獲取新的公私鑰對,然后回復ACH并發送密鑰更新完畢信息ResultA=PKACH(TK11‖IDA‖PKA‖STA‖T11);

(3)ACH驗證A的ID和T11-T10<ΔT,其中ΔT是ACH可以接受的密鑰更新的延時時長。如果通過驗證,ACH在節點注冊信息鏈表中更新A的公鑰及狀態。如果沒有通過驗證,則A可能已被捕獲并將其加入黑名單,同時在簇內廣播A的ID,簇內節點不再與A通信;

(5)ACH將節點注冊信息鏈表和黑名單鏈表加密后分別發送給MCH和BS,然后ACH進入休眠但保持對簇內各節點的監測。

2.8 新節點加入/舊節點退出

網絡中距離基站越近的節點,因其需轉發的數據量相對比較多,使得易造成某些節點能耗過快甚至是過早死亡的情況,從而會出現因節點失效而退出網絡的情形。所以BS需要不定期地向簇內加入新的節點以維持網絡的正常運行。

(1)如果新節點B加入網絡,BS首先需為其分配一個唯一的身份標識IDB,然后初始化對應的系統參數,將公私鑰種子對(PRB,PKB)、節點驗證信息TKB及該簇副簇頭IDACH等信息存入節點中。B在生成公私鑰對(PRB,PKB)后,等待該簇的ACH探測,ACH探測到B后即向其發送HelloACH=(TK13,IDACH,PKACH,T13);

(2)B收到ACH發送的HelloACH消息之后,需先檢驗IDACH是否真實,接著B使用ACH的公鑰來加密自身的節點信息,然后隨即向ACH發送其申請入簇的消息RequestB=PKACH(TK14‖TPB‖IDB‖PKB‖STB‖T14);

(3)ACH收到B的入簇申請信息RequestB后,即向BS發送驗證B的申請消息RequestACH-2=PKBS(TK15‖IDACH‖IDB‖TKB‖T15);

(4)BS解密RequestACH-2并驗證ACH和B的身份標識IDACH和IDB及信息TKB。若驗證都通過則BS更新節點注冊信息鏈表,并回復ACH驗證結果ResultBS-3=PKACH(TK16‖IDBS‖T16);

(5)ACH在解密ResultBS-3完成之后,則把B添加到節點注冊信息鏈表中,同時記錄對應的節點狀態相關信息,并給B發送歡迎入簇的消息WelcomeACH=PKB(TK17‖IDACH‖T17),同時啟動簇內節點密鑰更新,然后ACH將更新后的簇內節點注冊信息鏈表進行加密之后發給MCH以及BS,從而完成了新節點的加入。若是新加入節點的類型是Sink節點,ACH此時則需要發起新一輪的簇頭更新;

(6)網絡工作一段時間過后,其中有一些工作頻率比較高的節點就很可能會遭受能量耗盡、剩余能量低于閾值或者被捕獲等有關情況,這類節點將會因無法進行正常工作而被退出網絡。若是普通傳感器節點,ACH會先將該節點添加到黑名單中,同時刪除該節點在注冊信息鏈表中的相應信息并廣播其ID,而且還要重新啟動簇內節點的密鑰更新程序,簇內其余節點也將會不再與之通信。如果是MCH,ACH也是直接將其加入黑名單,簇內普通節點不再與其進行通信同時啟動簇頭更新。若是BS監測出ACH存在異常狀況,則將直接在該簇內廣播廢除當前ACH的消息,并由MCH啟動簇頭更新。

2.9 簇內及簇間通信

簇內的各節點均存儲本簇MCH與ACH的公鑰,而簇頭中存儲了所有節點的注冊信息鏈表,因而簇頭與節點之間能夠使用對方的公鑰加密用以實現簇內的安全通信以及數據傳輸。盡管簇內成員節點間不能隨意進行相互通信,但在特殊情況下節點可向ACH發送與鄰近Sink節點建立通信的申請。

(2)ACH先驗證IDC和IDD,再用C的公鑰加密D的公鑰發給C,即PKC(TK19‖IDACH‖IDD‖PKD‖T19),同理用D的公鑰加密C的公鑰發給D,即PKD(TK20‖IDACH‖IDC‖PKC‖T20)。節點C、D分別對接收的消息解密后,即可使用對方的公鑰來進行安全通信,但在簇內節點的密鑰更新后需重新申請;

網絡中只有在不同的主簇頭之間才能進行數據傳輸,尤其是距離BS比較遠的簇,主簇頭在收集以及融合全簇各節點所感知的數據信息之后,需經過多跳路由才能傳輸到達BS。

(3)假設離BS較遠的MCH1探測到MCH2處在最優路徑上,則MCH1向BS發送與MCH2建立安全通信的申請消息RequestMCH1=PKBS(TK21‖IDMCH1‖IDMCH2‖T21);

(4)BS解密RequestMCH1并驗證兩主簇頭的IDMCH1和IDMCH2。若驗證通過,則BS分別發送同意MCH1和MCH2建立安全通信的消息,即BS→MCH1:PKMCH1(TK22‖IDACH‖IDMCH2‖PKMCH2‖T22)以及BS→MCH2:PKMCH2(TK23‖IDACH‖IDMCH1‖PKMCH1‖T23)。若驗證未通過,則BS降低MCH1的信任度并拒絕其申請,同時向ACH1發送驗證結果消息。如若已建立了安全通信的其中一方中簇內的簇頭重新選舉或是密鑰更新時,則BS在簇頭鏈表中添加該簇新選舉的簇頭信息,并加密其信息發送到安全通信另一方的主簇頭,而且此時需要保持通信連接的持續。

3 性能分析

為驗證所給DCHC3方案,以下從抗捕獲性、可擴展性、連通性、存儲開銷和能耗開銷五個方面分別與E&G方案[8]和TIDS方案[9]進行性能分析比較。

3.1 抗捕獲性

3.2 可擴展性

無線傳感器網絡運行一段時間過后,一些工作頻率較高的節點很容易能量耗盡或是被捕獲,此時失效的節點將會退出網絡,為了保證網絡正常工作和穩定則需要有新節點的加入到網絡中,所以無線傳感器網絡的密鑰管理方案要能支持節點的動態加入或退出。所給DCHC3的方案中網絡各簇均為雙簇頭的拓撲結構,其中副簇頭的主要工作是負責在單簇頭結構中的簇頭對其各成員節點的管理。如果網絡中發生節點失效或是被捕獲等情況,副簇頭會對該節點進行檢測并且隔離,同時添加到黑名單中,而且要在簇內廣播該節點的ID,在此后的簇內通信過程中,簇內其余成員節點將不再與該節點通信,最后副簇頭啟動密鑰更新,從而確保了各節點的后向安全性。如果檢測簇頭存在異常情況(如能量耗盡或被捕獲),此時則需在簇內啟動簇頭選舉程序,重新選舉出該簇的新簇頭,同時需要BS將會對最終結果進行判定,從而確保了各簇簇頭選舉的合法性以及安全性。此外,BS也可根據網絡當前狀態,對那些節點失效較多或是節點數目較少的簇動態地加入新的節點,以確保網絡能夠正常穩定地運行。如果副簇頭接到新節點的入簇申請,則向BS發送對新節點的驗證申請,并啟動簇內的節點密鑰更新,從而確保了節點的前向安全性。同時,DCHC3方案采用了圓錐曲線密碼體制,普通節點中僅存儲自身的公私鑰對以及兩個簇頭的公鑰,因此在網絡某個簇中無論是新節點的加入或是舊節點的退出,均不會對其它簇內節點存儲的密鑰數產生影響,可見所給方案具有良好的節點可擴展性。

3.3 連通性

安全連通率的主要是指在網絡某個簇中各個傳感器節點之間至少可以互相建立起一個通信密鑰的概率大小,它是密鑰管理方案中的一個非常重要的評價指標之一[10]。其中,E&G方案的連通率近似為:

由上式可以看出,E&G方案的連通率小于1,為了提高E&G方案中節點之間可以共享的密鑰的概率,需要把k/N的比值變大。也就是說,隨著密鑰池內生成的密鑰總數量N增加或是保持不變,單個節點中所要預存的密鑰數k將總是增大的。DCHC3采用的是圓錐曲線密碼,節點間建立共享密鑰只需要知道對方的身份ID以及公鑰即可,經過簇頭協調之后則可實現簇內所有節點均能全部互相連通,從而可使其安全連通率達到1,能夠較好地提升整個網絡運行效率。下面圖2給出了在不同密鑰總數下,隨著預存儲密鑰數增加所給DCHC3與E&G、TIDS的連通率比較。

圖2 密鑰管理方案的安全連通率比較

3.4 存儲開銷

假定網中每個簇內最多包含M個節點,DCHC3方案在密鑰對生成之前,基站的PKG預先完成了大部分的計算工作[11],所以各階段需存儲的密鑰信息就變少了。其中,簇頭需存儲簇內所有成員節點的ID及公鑰,而簇成員節點僅需存儲其自身的ID、公私鑰對以及種子密鑰對,因此預存密鑰信息的總數為R=2(M-1)+2·3M=8M-2,平均單個節點要存儲8個密鑰信息,同時也不會因為簇中節點數目的變化而改變所需存儲的密鑰個數。對于E&G方案,假如一個節點所需預存的密鑰個數是k,則各簇存儲的密鑰數為kM個;對于TIDS方案,每個簇存儲的密鑰數為10M個,則E&G方案、TIDS方案與DCHC3方案密鑰數量比為η=kM∶10M∶8M-2≈k∶10∶8,也即是說隨網絡規模的增大,為確保有較高的連通率,密鑰池將會增大,而各節點存儲的密鑰數k同時將變大,則這三種方案所需存儲密鑰數的比值η也將會增大。橢圓曲線密碼算法160比特安全強度的密鑰與1024比特的RSA公鑰算法以及64比特的對稱算法相當,而圓錐曲線加密算法比橢圓曲線密碼算法可以節約近1/4的計算量[12],則三種方案的實際密鑰總存儲空間比為ρ=64k∶10·1024∶8·160·3/4=k∶160:15。所以相較于E&G和TIDS,DCHC3在密鑰信息存儲開銷上具有優勢。下面圖3給出在不同密鑰總數下,隨著單個節點預存儲密鑰數增加,DCHC3與E&G、TIDS的存儲開銷比較。

圖3 密鑰管理方案的密鑰存儲開銷比較

3.5 通信能耗

圖4 密鑰管理方案的通信能耗比較

已有的各類密鑰管理方案中,密鑰更新過程所產生的通信消耗一般與網絡規模有關。如果網絡中存在w個節點具有PKG功能(其中門限閾值為q,且q

4 結 語

所給DCHC3方案的預分配密鑰種子對始終保持不變,且密鑰生成的過程主要是在基站中進行,使得密鑰生成時所需的能耗大幅降低。而密鑰更新僅需節點自身更新當前時間,不需與簇頭通信即可完成,降低了所需的通信能耗。由于單個節點不需預先存儲簇中所有節點的公鑰,而是僅需在通信前向副簇頭申請通信,再由副簇頭統一負責協調,分發需要通信的節點之間的身份標識和公鑰給對方,減輕了節點的存儲開銷。而應用圓錐曲線密碼同時也能改進傳統的對稱密鑰預分發密鑰管理方案連通性差、存儲空間大及擴展性差等缺陷。雙簇頭的網絡拓撲結構能減少簇頭的能耗,增加簇頭生命周期。如果某個簇頭失效或是被捕獲,另一個簇頭則會啟動簇頭選舉及密鑰更新,既能夠使簇內數據傳輸更加有效,也能夠使簇頭在被俘之后簇內其余節點也可免遭安全風險。同時,副簇頭還具有對節點的狀態進行監測的功能,能夠及時獲知節點當前的狀態,從而可以更好地完成對簇頭的更新,使得網絡各簇能夠更加安全穩定,并且可以使網絡的工作壽命更長久。

[1] 郭萍, 張宏, 傅德勝, 等.一種混合輕量型無線傳感器網絡公鑰密碼方案[J].計算機科學,2012,39(1):69-72.

[2] 葉苗, 王宇平.一種新的容忍惡意節點攻擊的無線傳感器網絡安全定位方法[J].計算機學報,2013,36(3):532-545.

[3] Doraipandian M, Rajapackiyam E, Neelamegam P, et al.An efficient and hybrid key management scheme for three tier wireless sensor networks using LU matrix[J].Communications in Computer and Information Science, 2011, 192(3):111-121.

[4] 宓小土, 高峰, 章白瑜, 等.無線傳感器網絡安全性問題[J].解放軍理工大學學報(自然科學版),2011,12(1):42-47.

[5] 杜治國, 胡大輝.改進的RSA算法在無線傳感器網絡中的應用[J].計算機應用,2012,32(6):1609-1612.

[6] 危蓉, 趙德正.基于身份的無線傳感器網絡層簇式密鑰管理方案[J].武漢大學學報(工學版),2015,48 (4):580-583.

[7] 溫濤, 張永, 郭權,等.WSN中基于圓錐曲線組合密鑰的對等認證[J].東北大學學報(自然科學版),2011,32(3):348-351.

[8] ZHANG Jun-qi, Varadharajan V.Wireless sensor network key management survey and taxonomy[J].Journal of Network and Computer Applications,2010,33(2):63-65.

[9] 柳亞男, 王箭, 杜賀.無線傳感器網絡門限密鑰共享模型[J].電子與信息學報,2011,33 (8):1913-1918.

[10]Eschenauer L, Gligor V.A key management scheme for distributed sensor networks[C]//Proceedings of the 9th ACM Conference on Computer and Communications Security.New York:ACM Press,2002,41-47.

[11]Deng H, Agrawal D P.TIDS:Threshold and identity-based security scheme for wireless ad hoc networks[J].Ad Hoc Networks,2004,2(3):291-307.

[12]孫琦, 朱文余, 王標.環Zn上圓錐曲線和公鑰密碼協議[J].四川大學學報(自然科學版),2005,42 (3):471-478.

朱海水(1980—),男,河南人,講師,主要研究方向為計算機應用;

E-mail:89717384@qq.com

孟慶玉(1980—),男,河南人,講師,主要研究方向為多媒體技術。

Key Management Scheme of Dual Cluster Heads for WSNs Based on Conic Curve Cryptography

ZHU Hai-shui,MENG Qing-yu

(Yongcheng Vocational Collage, Henan Yongcheng 476600, China)

The security of key and the limited energy of nodes should be considered in key management of wireless sensor networks simultaneity.In order to improve the consumption of key storage and communication energy, a key management scheme of dual cluster heads for WSNs based on conic curve cryptography was proposed by combining conic curve cryptography and Hash functions.The main cluster heads were responsible for safely collecting and transmitting the data information, and the assistant cluster heads take charge of the key management of the nodes.Performance analysis results demonstrate that the novel scheme could ensure the high connectivity rates, the strong anti-capture ability, the low key storage consumption, the low communication energy consumption and the fine extendibility.Thus the novel scheme could be used the actual environment of wireless sensor networks.

wireless sensor network; key management; conic curve cryptography; dual cluster heads

2016-05-01

2016-08-30

河南省科技廳發展計劃(142102110088)

:A

1673-5692(2016)05-554-08

猜你喜歡
鏈表公鑰密鑰
幻中邂逅之金色密鑰
幻中邂逅之金色密鑰
案例教學法在公鑰密碼體制難點教學中的應用——以ssh服務中雙向認證為例
密碼系統中密鑰的狀態與保護*
如何用鏈表實現一元多項式相加
跟麥咭學編程
TPM 2.0密鑰遷移協議研究
神奇的公鑰密碼
國密SM2密碼算法的C語言實現
基于MTF規則的非阻塞自組織鏈表
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合