一種無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法
【專利摘要】本發(fā)明公開了一種無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法,包括:基站依據(jù)節(jié)點到基站的跳數(shù)對節(jié)點進行分組;基站隨機選擇數(shù)量相同的隨機數(shù),為每個分組生成一條單向哈希鏈,并將每條哈希鏈的定向哈希值存儲在相應分組節(jié)點上;基站將待發(fā)送的數(shù)據(jù)包進行預處理,使用哈希鏈上的定向哈希值對該條鏈上其前驅值進行加密處理;對數(shù)據(jù)包和前驅值進行組合獲得其組合后的哈希值,并加入用于表示數(shù)據(jù)包生命周期的參數(shù),構造待傳輸?shù)臄?shù)據(jù)包;傳感器節(jié)點對數(shù)據(jù)包進行驗證,根據(jù)節(jié)點的組別對數(shù)據(jù)包進行解析后驗證其合法性,若數(shù)據(jù)包為其它組的數(shù)據(jù),則直接轉發(fā)該數(shù)據(jù)包;若數(shù)據(jù)包為合法數(shù)據(jù)包則接受該數(shù)據(jù)包并更新該節(jié)點相應的數(shù)據(jù)項;否則直接刪除該數(shù)據(jù)包。
【專利說明】
一種無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法
技術領域
[0001]本發(fā)明屬于無線通信技術領域,尤其涉及一種無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法。
【背景技術】
[0002]無線傳感器網(wǎng)絡(Wireless Sensor Networks,WSN)是由一批資源受限的傳感器節(jié)點組成的多跳的自組織網(wǎng)絡,其廣泛應用于醫(yī)療健康領域、棲息地環(huán)境、溫室以及軍事等關鍵領域。傳感器節(jié)點一旦部署在相應的環(huán)境中,就很難再將這些節(jié)點收集起來。然而,在實際的應用中,經(jīng)常需要對某些重要的參數(shù)進行調(diào)整,手動地對這些傳感器節(jié)點進行相關參數(shù)的修改以及代碼的更新代價都是巨大的。因而,在WSN中,小數(shù)據(jù)分發(fā)協(xié)議的設計非常關鍵。
[0003]在WSN中已經(jīng)有不少設計優(yōu)良的小數(shù)據(jù)分發(fā)協(xié)議如DRIP、DHV、DIP等,WSN中的小數(shù)據(jù)分發(fā)協(xié)議主要分為三個部分:第一個部分是基站向網(wǎng)絡中發(fā)送所要傳輸?shù)臄?shù)據(jù)項的摘要信息,當節(jié)點收到相關的摘要信息后將會與自身的摘要信息比較,確定是否需要更新數(shù)據(jù)項。當節(jié)點收到的摘要信息和所存儲的摘要信息不同時,比較其版本號的新舊,如果版本號比現(xiàn)有的新,則發(fā)送更新的請求,如果版本號比現(xiàn)有的舊,則廣播其自身所存儲的摘要信息,如果相同則延長其自身廣播的時間間隔來延長節(jié)點的使用壽命。小數(shù)據(jù)分發(fā)的第二個階段,傳感器節(jié)點接收到相關的數(shù)據(jù)項,檢查相關的循環(huán)冗余校驗碼保證數(shù)據(jù)的正確接收。在小數(shù)據(jù)分發(fā)的第三個階段,如果正確接收到相關的數(shù)據(jù)項后,查詢其關鍵字,然后對其進行更新,直到整個網(wǎng)絡中所有的傳感器節(jié)點都保持相同的版本號。然而這些協(xié)議所關注的重點在于如何保證數(shù)據(jù)分發(fā)的正確性以及數(shù)據(jù)分發(fā)過程中的效率,未能考慮到數(shù)據(jù)在發(fā)送的過程中可能面臨的安全威脅。由于節(jié)點接收數(shù)據(jù)都是根據(jù)數(shù)據(jù)的版本號和其關鍵字來確定的,因而攻擊者很容易通過修改部分數(shù)據(jù)對網(wǎng)絡發(fā)起攻擊。如通過修改數(shù)據(jù)項的版本號,節(jié)點收到相關的數(shù)據(jù)就誤以為版本號發(fā)生了變化而更新數(shù)據(jù)項。因而,在節(jié)點接收數(shù)據(jù)時必須驗證數(shù)據(jù)的完整性,確保數(shù)據(jù)在接收的過程中沒有被篡改。因而,加強對小數(shù)據(jù)分發(fā)過程中的安全保護非常關鍵。
[0004]本發(fā)明的目的在于克服現(xiàn)有技術的缺點與不足,提供一種無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法,本發(fā)明確保了在網(wǎng)絡中出現(xiàn)部分節(jié)點妥協(xié)的情況下能夠降低對整個網(wǎng)絡中的影響,使得在網(wǎng)絡中部分節(jié)點妥協(xié)時不會造成整個網(wǎng)絡的癱瘓。其次,所提出的小數(shù)據(jù)分發(fā)安全方法采用三重認證機制,不僅能夠有效抵抗攻擊者偽造數(shù)據(jù)包,而且能夠對數(shù)據(jù)包進行快速有效的認證。最后,對傳感網(wǎng)進行分組,可以有效地管理節(jié)點,降低網(wǎng)絡中節(jié)點能量的損耗,延長網(wǎng)絡的使用壽命。
【發(fā)明內(nèi)容】
[0005]本發(fā)明提出了一種無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法,包括如下階段:
[0006]系統(tǒng)初始化階段:基站依據(jù)節(jié)點到基站的跳數(shù)對節(jié)點進行分組;根據(jù)組別的數(shù)量,基站隨機選擇數(shù)量相同的隨機數(shù),為每個分組生成一條單向哈希鏈,并將每條哈希鏈的定向哈希值存儲在相應的分組節(jié)點上;
[0007]數(shù)據(jù)包預處理階段:所述基站對待發(fā)送的數(shù)據(jù)包進行預處理,使用哈希鏈上的定向哈希值對該條鏈上其前驅值進行加密處理;將所述數(shù)據(jù)包和所述前驅值進行組合獲得其組合后的哈希值,并加入用于表示數(shù)據(jù)包生命周期的參數(shù),構造一個待傳輸?shù)臄?shù)據(jù)包;
[0008]數(shù)據(jù)包驗證階段:傳感器節(jié)點對所述數(shù)據(jù)包進行驗證,根據(jù)節(jié)點的組別對所述數(shù)據(jù)包進行解析后驗證其合法性,若所述數(shù)據(jù)包為其它組的數(shù)據(jù),則直接轉發(fā)所述數(shù)據(jù)包;若所述數(shù)據(jù)包為合法數(shù)據(jù)包則接受該數(shù)據(jù)包并更新該節(jié)點相應的數(shù)據(jù)項;若所述數(shù)據(jù)包不具合法性,則直接刪除該數(shù)據(jù)包。
[0009]本發(fā)明所述的無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法中,所述初始化階段包括以下步驟:
[0010]步驟Al:所述基站根據(jù)節(jié)點到基站的跳數(shù)將節(jié)點進行分組,將同一跳數(shù)范圍內(nèi)的節(jié)點組成一個組別,并為每組節(jié)點選取一個隨機數(shù)作為單向哈希鏈的種子數(shù)字;
[0011 ]步驟A2:所述基站利用所述種子數(shù)字為相應的分組創(chuàng)建一條單向哈希鏈,所述種子數(shù)字作為哈希鏈的初始值,其它鏈上的值由其前一個哈希鏈上的值作為輸入運用哈希函數(shù)運算產(chǎn)生,在滿足所發(fā)送的數(shù)據(jù)項個數(shù)的情況下,獲得最后一個哈希值為定向哈希值,所述定向哈希值用來驗證數(shù)據(jù)項的完整性;
[0012]步驟A3:依據(jù)節(jié)點的不同分組,將所述定向哈希值分配到相應組別的傳感器節(jié)點上;
[0013]步驟A4:使用四元組表示每一個所需要發(fā)送的數(shù)據(jù)包。
[0014]本發(fā)明所述的無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法中,步驟A4中所述四元組分別為:原始數(shù)據(jù)包、加密區(qū)數(shù)據(jù)、哈希區(qū)數(shù)據(jù)和生命周期標識;其中,所述原始數(shù)據(jù)包表示所發(fā)送需要更新的數(shù)據(jù)包,該數(shù)據(jù)包包括數(shù)據(jù)項的關鍵字、版本號和數(shù)據(jù)三個部分;所述加密區(qū)數(shù)據(jù)表示使用哈希鏈上的值進行加密后的數(shù)據(jù),所述哈希區(qū)數(shù)據(jù)表示原始數(shù)據(jù)和哈希鏈連接后的哈希值,所述生命周期標識表示數(shù)據(jù)包在發(fā)送過程中所能傳遞的跳數(shù)。
[0015]本發(fā)明所述的無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法中,所述數(shù)據(jù)包預處理階段包括以下步驟:
[0016]步驟B1:所述基站根據(jù)網(wǎng)絡中的分組構建出數(shù)據(jù)包生命周期數(shù)組,依據(jù)各個不同的數(shù)據(jù)包生命周期來構建待傳輸?shù)臄?shù)據(jù)包。
[0017]步驟B2:所述基站采用廣播模式將構建后的數(shù)據(jù)包發(fā)送到每一個傳感器節(jié)點,所述傳感器節(jié)點首先依據(jù)數(shù)據(jù)包的生命周期來確定是否是其所屬組別的數(shù)據(jù)包,然后對其所收到的數(shù)據(jù)包進行相關的驗證。
[0018]本發(fā)明所述的無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法中,步驟BI中所述基站依據(jù)不同的數(shù)據(jù)包生命周期來構建所要發(fā)送的數(shù)據(jù)包的步驟為:利用基站所產(chǎn)生的哈希鏈加密相應的哈希鏈上的值,將數(shù)據(jù)包和哈希鏈上的值連接并獲得其哈希值,將所生成的各部分的值與數(shù)據(jù)包的生命周期連接,構建出所述待傳輸?shù)臄?shù)據(jù)包。
[0019]本發(fā)明所述的無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法中,所述數(shù)據(jù)包驗證階段包括以下步驟:
[0020]步驟Cl:當數(shù)據(jù)包到達傳感器節(jié)點端后,首先驗證其數(shù)據(jù)包的生命周期;
[0021]步驟C2:驗證成功之后,用節(jié)點所存儲的確認值解密數(shù)據(jù)包相關部分,然后驗證其完整性;
[0022]步驟C3:傳感器節(jié)點對原始數(shù)據(jù)包進行驗證然后更新數(shù)據(jù)項。
[0023]本發(fā)明所述的無線傳感器網(wǎng)絡分組數(shù)據(jù)安全分發(fā)方法中,步驟Cl對所述數(shù)據(jù)包生命周期進行驗證包括如下步驟:
[0024]步驟ClI:當節(jié)點收到數(shù)據(jù)包時,其數(shù)據(jù)包的生命周期自動減I,如果生命周期為O,則執(zhí)行步驟C12,否則執(zhí)行步驟C13;
[0025]步驟C12:對數(shù)據(jù)進行相應的解析,進行步驟C2的驗證;
[0026]步驟C13:否則該數(shù)據(jù)包的生命周期自動減I然后轉發(fā)。
[0027]本發(fā)明所述的無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法中,步驟C2對所述數(shù)據(jù)包進行解密過程包括如下步驟:
[0028]步驟C21:當所述傳感器節(jié)點收到數(shù)據(jù)包時對其進行解密,使用節(jié)點端存儲的確認值進行解密;
[0029]步驟C22:驗證解密出來的確認值的哈希值是否和所存儲的確認值相等,如果相等則進行步驟C3的驗證,否則轉向步驟C23;
[0030]步驟C23:直接將所收到的數(shù)據(jù)包丟棄。
[0031]本發(fā)明所述的無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法中,步驟C3對所述數(shù)據(jù)包進行驗證包括如下步驟:
[0032]步驟C31:當?shù)玫秸_哈希鏈上的確認值時,利用其驗證原始數(shù)據(jù)包是否正確,如果原始數(shù)據(jù)包和確認值的連接的哈希值與解析的數(shù)據(jù)相等,則接收該數(shù)據(jù),并更新相應的確認值和數(shù)據(jù)項,否則執(zhí)行步驟C32;
[0033]步驟C32:直接將該數(shù)據(jù)包丟棄。
[0034]在所述數(shù)據(jù)包驗證階段中,根據(jù)所設定的三重驗證機制不僅能夠確保節(jié)點妥協(xié)情況下降低對網(wǎng)絡的威脅,同時三重驗證機制可以最大限度防止攻擊者偽造數(shù)據(jù)包對節(jié)點能量的消耗。
[0035]本發(fā)明的有益效果在于:
[0036]抵抗傳感器節(jié)點的妥協(xié):在WSN中只有部分節(jié)點妥協(xié)的情況下,仍然能夠保證網(wǎng)絡中大多數(shù)的節(jié)點不會受到影響。
[0037]數(shù)據(jù)完整性:通過對數(shù)據(jù)項進行三層認證,不僅能保證節(jié)點接收正確的數(shù)據(jù)包,而且可以高效地丟棄偽造的數(shù)據(jù)包。
[0038]高效管理網(wǎng)絡中的節(jié)點:對WSN進行分組管理,可以高效地管理網(wǎng)絡中的節(jié)點,且能夠保證網(wǎng)絡中節(jié)點的能量均衡。
[0039]基站與傳感器節(jié)點間無時間同步:基站與傳感器節(jié)點間不要求時間同步。因此,無需對數(shù)據(jù)包到達間隔時間做任何假設,當傳感器節(jié)點接收到數(shù)據(jù)包時便可即刻對所述接收到的數(shù)據(jù)包進行認證。
【附圖說明】
[0040]圖1是本發(fā)明傳感器節(jié)點的分組圖。
[0041 ]圖2是本發(fā)明的一般流程圖。
【具體實施方式】
[0042]結合以下具體實施例和附圖,對本發(fā)明作進一步的詳細說明。實施本發(fā)明的過程、條件、實驗方法等,除以下專門提及的內(nèi)容之外,均為本領域的普遍知識和公知常識,本發(fā)明沒有特別限制內(nèi)容。
[0043]本發(fā)明中有關的技術術語代表的含義如下:
[0044]Ki,j表示第i條哈希密鑰鏈的第j個數(shù)據(jù)項,其中j >0;
[0045]P1表示第i個數(shù)據(jù)項的原始數(shù)據(jù);
[0046]Ek(X)表示用對稱密鑰K給數(shù)據(jù)項X進行對稱加密;
[0047]Dk(X)表示用對稱密鑰K給數(shù)據(jù)項X進行解密;
[0048]H(.)表示單向密鑰哈希函數(shù);
[0049]H(M)表示數(shù)據(jù)項M的哈希值;
[0050]Ki, j表示第i組哈希鏈上的第j個值;
[0051]TTL表示數(shù)據(jù)包的生命周期,即數(shù)據(jù)包能夠在網(wǎng)絡中傳遞的最大跳數(shù);
[0052]I I表示連接運算。
[0053]本發(fā)明基于采用分組的策略和三重安全驗證的基礎上的輕量級的安全防護方案,對無線傳感器網(wǎng)絡中小數(shù)據(jù)分發(fā)協(xié)議(DRIP)進行安全擴充,實現(xiàn)對傳感器網(wǎng)絡中節(jié)點高效管理的同時抗節(jié)點妥協(xié)情況下攻擊者對網(wǎng)絡的危害的安全小數(shù)據(jù)分發(fā)方法。
[0054]本發(fā)明無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法(GrDrip)分為系統(tǒng)初始化,數(shù)據(jù)包預處理和數(shù)據(jù)包驗證三個階段,具體為:
[0055]系統(tǒng)初始化階段:基站依據(jù)節(jié)點到基站的跳數(shù)對節(jié)點進行分組,即同一跳數(shù)范圍內(nèi)的節(jié)點分為一個組別;根據(jù)組別的個數(shù),基站為其生成相同數(shù)量的哈希鏈,并將每條哈希鏈的定向哈希值存儲在相應的分組節(jié)點上;
[0056]數(shù)據(jù)包預處理階段:基站將待發(fā)送的數(shù)據(jù)包進行預處理,使用哈希鏈上的定向哈希值對該條鏈上其前驅的值進行加密處理;將要發(fā)送的數(shù)據(jù)包和哈希鏈的值進行組合獲得其組合后的哈希值;將所生成的數(shù)據(jù)進行組合并加入用于表示數(shù)據(jù)包生命周期的參數(shù),最后構造出一個合法的數(shù)據(jù)包;
[0057]數(shù)據(jù)包驗證階段:傳感器節(jié)點對所接收到的數(shù)據(jù)包進行驗證,根據(jù)節(jié)點的組別對數(shù)據(jù)包進行解析后驗證其合法性,如果數(shù)據(jù)包為其它組的數(shù)據(jù),則直接轉發(fā);如果為合法數(shù)據(jù)包則接受該數(shù)據(jù)包并更新該節(jié)點相應的數(shù)據(jù)項,否則直接刪除該數(shù)據(jù)包。
[0058]在系統(tǒng)初始化階段,需要生成后續(xù)數(shù)據(jù)分發(fā)過程中所需要的公共參數(shù)和變量等。首先,選擇恰當?shù)墓:瘮?shù),在本發(fā)明中選擇SHA-1(可根據(jù)實際的安全需求進行調(diào)整)。使用哈希函數(shù)對數(shù)據(jù)進行處理,可以使得本發(fā)明的驗證更加高效。在基站端選擇一組隨機數(shù),該隨機數(shù)的數(shù)目根據(jù)網(wǎng)絡中分組的數(shù)目來確定,即至少為每一組的數(shù)據(jù)分發(fā)選擇一個隨機數(shù)。然后根據(jù)哈希函數(shù)和組數(shù)生成哈希鏈。假設網(wǎng)絡中共有η組,則生成η條哈希鏈。這η條哈希鏈是利用隨機數(shù)在哈希函數(shù)作用L次生成的。即Ku = H(K1+1,丄其中0<i<L,所產(chǎn)生的最后一個值作為確認值(Commited Value)。注意在本發(fā)明中,將所生成的鏈會用于后續(xù)的加密操作,因而稱為秘鑰鏈。所生成的一組確認值對應相應的不同組的節(jié)點,將這些確認值事先分別安裝在節(jié)點端。即第i個確認值安裝在第i個組的節(jié)點中。
[0059]在完成了系統(tǒng)初始化階段后,進入數(shù)據(jù)包預處理階段。當節(jié)點部署完畢之后,如果基站有相關的參數(shù)需要進行更新,則首先對該數(shù)據(jù)項進行處理。在小數(shù)據(jù)分發(fā)過程中,所有需要更新的數(shù)據(jù)項,可以根據(jù)其不同的key來進行區(qū)分,因而可以將數(shù)據(jù)和key映射到一個數(shù)據(jù)項中。然后將這些數(shù)據(jù)項組合起來,成為一個消息數(shù)組。因而,在此本發(fā)明利用Ρο,Ρ:,P2,...,Ρη來表示需要發(fā)送的數(shù)據(jù)項。用第一條秘鑰鏈的確認值加密(采用對稱加密方案AES)該確認值的下一個值,得到的結果可用于更新加密秘鑰,即得到加密結果Εκο,KK1,O。然后將需要發(fā)送的數(shù)據(jù)PO與K1,i進行組合,對其連接后獲得其哈希值H(Po| IK1,為了能夠加強數(shù)據(jù)發(fā)送過程的安全性,本發(fā)明中加入一個參數(shù)TTL用以保證數(shù)據(jù)在發(fā)送的過程中只針對具體跳數(shù)的節(jié)點。
[0060]所要發(fā)送的數(shù)據(jù)項的構建如下:
[0061]Pi = PiI IQijI I SiJ I ITTLi
[0062]其中Qi,j = EKi,j(Ki,j+1)
[0063]Sij = H(Pi| |Ki;j+i)
[0064]根據(jù)以上方式構建好了需要發(fā)送的數(shù)據(jù)包,節(jié)點從收到第一個數(shù)據(jù)包開始進行驗證。由于本發(fā)明采用是順序驗證的方式,所基于的假設是數(shù)據(jù)包的按順抵達,因而不考慮包的非序抵達的問題。
[0065]在數(shù)據(jù)包驗證階段,節(jié)點對所接收到的數(shù)據(jù)包進行驗證。數(shù)據(jù)在到達節(jié)點端時,可以進行三個驗證,一個是秘鑰端的驗證,另一個是數(shù)據(jù)包的驗證,還有一個是數(shù)據(jù)包的生命周期驗證。在此本發(fā)明僅對第一組的節(jié)點進行說明,其他的可以按類似的方案進行。當接收到數(shù)據(jù)包Po = PoI Qo1I SojI I TTLo時,節(jié)點對其進行相應的解析,驗證數(shù)據(jù)的可靠性。
[0066]第一步驗證TTL: TTL對應相關的跳數(shù),即節(jié)點的組號。而且,在TTL的值為O時,表明該數(shù)據(jù)包的生命周期結束。因而在解析出TTL后,檢查其值看是否為O,如果不為O,則直接轉發(fā)。否則,進行下一步。
[0067]第二步驗證并更新秘鑰:用節(jié)點端存儲的確認值Ko,i解密Qo,η并且驗證H(D(Qo,O)是否和Ko,i相等。如果兩者相等,則將K1,i替換Ko,i并進行第三步。否則,直接刪除該數(shù)據(jù)。
[0068]第三步驗證并更新數(shù)據(jù)項:當?shù)玫搅薑1,i的值之后,利用So,i和K14的值來驗證所得到的數(shù)據(jù)項Po的值。具體的實現(xiàn)算法描述如下。第i個數(shù)據(jù)項到達節(jié)點端時,第j組的第k個節(jié)點SNj, k的驗證?;綛S端數(shù)據(jù)包生成,節(jié)點端進行驗證。
[0069]在數(shù)據(jù)包驗證階段中,根據(jù)所設定的三重驗證機制不僅能夠確保節(jié)點妥協(xié)情況下降低對網(wǎng)絡的威脅,同時三重驗證機制可以最大限度防止攻擊者偽造數(shù)據(jù)包對節(jié)點能量的消耗。
[0070]本發(fā)明的保護內(nèi)容不局限于以上實施例。在不背離發(fā)明構思的精神和范圍下,本領域技術人員能夠想到的變化和優(yōu)點都被包括在本發(fā)明中,并且以所附的權利要求書為保護范圍。
【主權項】
1.一種無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法,其特征在于,包括如下階段: 系統(tǒng)初始化階段:基站依據(jù)節(jié)點到基站的跳數(shù)對節(jié)點進行分組;根據(jù)組別的數(shù)量,基站隨機選擇數(shù)量相同的隨機數(shù),為每個分組生成一條單向哈希鏈,并將每條哈希鏈的定向哈希值存儲在相應的分組節(jié)點上; 數(shù)據(jù)包預處理階段:所述基站對待發(fā)送的數(shù)據(jù)包進行預處理,使用哈希鏈上的定向哈希值對該條鏈上其前驅值進行加密處理;將所述數(shù)據(jù)包和所述前驅值進行組合獲得其組合后的哈希值,并加入用于表示數(shù)據(jù)包生命周期的參數(shù),構造一個待傳輸?shù)臄?shù)據(jù)包; 數(shù)據(jù)包驗證階段:傳感器節(jié)點對所述數(shù)據(jù)包進行驗證,根據(jù)節(jié)點的組別對所述數(shù)據(jù)包進行解析后驗證其合法性,若所述數(shù)據(jù)包為其它組的數(shù)據(jù),則直接轉發(fā)所述數(shù)據(jù)包;若所述數(shù)據(jù)包為合法數(shù)據(jù)包則接受該數(shù)據(jù)包并更新該節(jié)點相應的數(shù)據(jù)項;若所述數(shù)據(jù)包不具合法性,則直接刪除該數(shù)據(jù)包。2.根據(jù)權利要求1所述的無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法,其特征在于,所述初始化階段包括以下步驟: 步驟Al:所述基站根據(jù)節(jié)點到基站的跳數(shù)將節(jié)點進行分組,將同一跳數(shù)范圍內(nèi)的節(jié)點組成一個組別,并為每組節(jié)點選取一個隨機數(shù)作為單向哈希鏈的種子數(shù)字; 步驟A2:所述基站利用所述種子數(shù)字為相應的分組創(chuàng)建一條單向哈希鏈,所述種子數(shù)字作為哈希鏈的初始值,其它鏈上的值由其前一個哈希鏈上的值作為輸入運用哈希函數(shù)運算產(chǎn)生,在滿足所發(fā)送的數(shù)據(jù)項個數(shù)的情況下,獲得最后一個哈希值為定向哈希值,所述定向哈希值用來驗證數(shù)據(jù)項的完整性; 步驟A3:依據(jù)節(jié)點的不同分組,將所述定向哈希值分配到相應組別的傳感器節(jié)點上; 步驟A4:使用四元組表示每一個所需要發(fā)送的數(shù)據(jù)包。3.根據(jù)權利要求2所述的無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法,其特征在于,步驟A4中所述四元組分別為:原始數(shù)據(jù)包、加密區(qū)數(shù)據(jù)、哈希區(qū)數(shù)據(jù)和生命周期標識;其中,所述原始數(shù)據(jù)包表示所發(fā)送需要更新的數(shù)據(jù)包,該數(shù)據(jù)包包括數(shù)據(jù)項的關鍵字、版本號和數(shù)據(jù)三個部分;所述加密區(qū)數(shù)據(jù)表示使用哈希鏈上的值進行加密后的數(shù)據(jù),所述哈希區(qū)數(shù)據(jù)表示原始數(shù)據(jù)和哈希鏈連接后的哈希值,所述生命周期標識表示數(shù)據(jù)包在發(fā)送過程中所能傳遞的跳數(shù)。4.根據(jù)權利要求1所述的無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法,其特征在于,所述數(shù)據(jù)包預處理階段包括以下步驟: 步驟B1:所述基站根據(jù)網(wǎng)絡中的分組構建出數(shù)據(jù)包生命周期數(shù)組,依據(jù)各個不同的數(shù)據(jù)包生命周期來構建待傳輸?shù)臄?shù)據(jù)包。 步驟B2:所述基站采用廣播模式將構建后的數(shù)據(jù)包發(fā)送到每一個傳感器節(jié)點,所述傳感器節(jié)點首先依據(jù)數(shù)據(jù)包的生命周期來確定是否是其所屬組別的數(shù)據(jù)包,然后對其所收到的數(shù)據(jù)包進行相關的驗證。5.根據(jù)權利要求4所述的無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法,其特征在于,步驟BI中所述基站依據(jù)不同的數(shù)據(jù)包生命周期來構建所要發(fā)送的數(shù)據(jù)包的步驟為:利用基站所產(chǎn)生的哈希鏈加密相應的哈希鏈上的值,將數(shù)據(jù)包和哈希鏈上的值連接并獲得其哈希值,將所生成的各部分的值與數(shù)據(jù)包的生命周期連接,構建出所述待傳輸?shù)臄?shù)據(jù)包。6.根據(jù)權利要求1所述的無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法,其特征在于,所述數(shù)據(jù)包驗證階段包括以下步驟: 步驟Cl:當數(shù)據(jù)包到達傳感器節(jié)點端后,首先驗證其數(shù)據(jù)包的生命周期; 步驟C2:驗證成功之后,用節(jié)點所存儲的確認值解密數(shù)據(jù)包相關部分,然后驗證其完整性; 步驟C3:傳感器節(jié)點對原始數(shù)據(jù)包進行驗證然后更新數(shù)據(jù)項。7.根據(jù)權利要求6所述的無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法,其特征在于,步驟Cl對所述數(shù)據(jù)包生命周期進行驗證包括如下步驟: 步驟Cl I:當節(jié)點收到數(shù)據(jù)包時,其數(shù)據(jù)包的生命周期自動減I,如果生命周期為O,則執(zhí)行步驟Cl 2,否則執(zhí)行步驟Cl 3; 步驟C12:對數(shù)據(jù)進行相應的解析,進行步驟C2的驗證; 步驟C13:否則該數(shù)據(jù)包的生命周期自動減I然后轉發(fā)。8.根據(jù)權利要求6所述的無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法,其特征在于,步驟C2對所述數(shù)據(jù)包進行解密過程包括如下步驟: 步驟C21:當所述傳感器節(jié)點收到數(shù)據(jù)包時對其進行解密,使用節(jié)點端存儲的確認值進行解密; 步驟C22:驗證解密出來的確認值的哈希值是否和所存儲的確認值相等,如果相等則進行步驟C3的驗證,否則轉向步驟C23 ; 步驟C23:直接將所收到的數(shù)據(jù)包丟棄。9.根據(jù)權利要求6所述的無線傳感器網(wǎng)絡分組小數(shù)據(jù)安全分發(fā)方法,其特征在于,步驟C3對所述數(shù)據(jù)包進行驗證包括如下步驟: 步驟C31:當?shù)玫秸_哈希鏈上的確認值時,利用其驗證原始數(shù)據(jù)包是否正確,如果原始數(shù)據(jù)包和確認值的連接的哈希值與解析的數(shù)據(jù)相等,則接收該數(shù)據(jù),并更新相應的確認值和數(shù)據(jù)項,否則執(zhí)行步驟C32; 步驟C32:直接將該數(shù)據(jù)包丟棄。
【文檔編號】H04W84/18GK105848150SQ201610334582
【公開日】2016年8月10日
【申請日】2016年5月19日
【發(fā)明人】何道敬, 陳得鵬
【申請人】華東師范大學