曾瑋妮,林亞平,何施茗,余建平
(1. 中國船舶重工集團公司 第716研究所,江蘇 連云港 222006;
2. 湖南大學 信息科學與工程學院,湖南 長沙 410082;
3. 湖南師范大學 數學與計算機科學學院,湖南 長沙 410082)
由于傳感器節(jié)點能量的有限,傳感器網絡(sensor network)通常在網內對所采集的數據進行聚合處理,再將聚合結果發(fā)送給基站以減少傳輸能耗[1]。當傳感器網絡應用于民用領域中的敏感性數據監(jiān)測時,感知對象通常不希望與其生活、健康等隱私信息相關的數據暴露,因此,節(jié)點所采集的數據需滿足對其他節(jié)點的隱私性(即使得該節(jié)點以外的任何節(jié)點都不能獲取其傳感數據)[2]。然而,傳統(tǒng)加密體系不能在保證數據隱私性的同時支持數據聚合;基于安全多方計算等技術的隱私保護方案由于開銷昂貴也不適用于傳感器網絡[2]。數據聚合對傳感數據的隱私性保護提出了新的挑戰(zhàn),亟待研究新的技術解決這一矛盾。
求和是一種基礎的聚合函數,因為求均值及方差等函數均可以轉化為求和函數[3]。實現(xiàn)了求和中的數據隱私保護則意味著實現(xiàn)了這一系列函數中的隱私保護。目前針對求和中的隱私保護問題已有一些研究工作[2~12]。這些工作通過隱藏傳感數據實現(xiàn)其隱私保護,這就需要從隱藏數據中恢復出聚合值。隱藏技術的不同使得聚合值的恢復方式也不盡相同,按照是否可以從網內恢復出聚合值,可以將已有機制分為以下2類。
第1類機制由基站集中管理,聚合值不能在網內恢復。早期工作有Castelluccia等提出的機制[3],該機制中各節(jié)點與基站共享秘密數 k,其發(fā)送的數據為隱藏后的數據(d+k) mod M(d為傳感數據);當基站收到隱藏數據的聚合值后,減去相應的k恢復聚合值。由于基站必須知道哪些節(jié)點參與了聚合才能恢復出聚合值,該機制存在以下不足:1)當只有部分節(jié)點參與聚合時,需要上傳ID信息。2)即使所有節(jié)點參與聚合,理論上無需上傳 ID信息,而一旦發(fā)生了分組丟失,聚合值將不能有效恢復[4]。3)如果敵方獲取了秘密數及隱藏數據的范圍,則可以猜測出相應傳感數據的范圍。針對上述問題,Castelluccia等[5]、Feng等[6]分別提出了加強機制,這些機制通過動態(tài)地生成參數 k解決了問題 3)。Feng等還通過一種折衷策略優(yōu)化了問題1),然而,依然需要額外的 ID傳輸開銷[6]。此外,文獻[7]和文獻[8]也基于類似技術提出了由基站集中管理的機制。對上述機制而言,由于節(jié)點 ID不能參與數據聚合,上傳ID以解決數據分組丟失問題的方法因通信開銷昂貴并不可行。此外,這些機制不能對基站保持傳感數據的隱私性,這一問題在基站被俘獲時尤為嚴重。
第2類機制通過節(jié)點協(xié)作分布式實現(xiàn)傳感數據的隱私保護,聚合值可以在網內恢復,避免了第一類機制存在的問題。然而,依然存在不足。這類機制有He等提出的CPDA(cluster-based private data aggregation)和 SMART(slice- mix- aggregate)[2]。CPDA采取多項式技術,各節(jié)點需要與所有簇成員進行信息交互才能實現(xiàn)隱私保護,其隱私保護力度(所能容忍的被俘獲節(jié)點數)及通信開銷均隨簇大小cm的增長而增長;SMART則通過將數據切分為J份并分發(fā)給不同鄰居節(jié)點實現(xiàn)隱私保護,其隱私保護力度和通信開銷隨著J的增長而增長。因此,不能一味通過增大cm和 J的取值來提高兩者的隱私保護力度;此外,這些機制難于同實現(xiàn)數據完整性保護的安全聚合機制兼容。為實現(xiàn)聚合值的完整性鑒別,He等對CPDA和SMART分別進行了擴展,引入監(jiān)督思想,基于冗余傳輸提出了機制 iPDA[9]和iCPDA[10],然而,新的機制引發(fā)了更高的系統(tǒng)開銷;且由于節(jié)點對間傳輸的隱私保護信息需要對其他節(jié)點保持機密性,依然不能實現(xiàn)成員節(jié)點間傳輸數據的完整性鑒別。在Conti提出的機制中,每對孿生節(jié)點共享多個雙密鑰,節(jié)點根據雙密鑰的使用情況隱藏傳感數據,其隱私保護力度同樣受限于通信開銷[4]。Huang等則基于異或及散列運算提出了與Conti的機制類似的機制[11],然而,Huang所提出的機制只適應于參與聚合的節(jié)點固定情況,而在實際應用中參與聚合的節(jié)點可能動態(tài)變化。Zeng等基于同余的代數特性構造了隱私保護函數,在此基礎上提出了隱私保護機制[12],該機制同樣難以兼容于實現(xiàn)數據完整性保護的安全聚合機制。
為有效解決數據聚合中的隱私保護問題,所提出機制應滿足以下需求:① 實現(xiàn)傳感數據的隱私性;② 保證聚合值的準確性;③ 能量有效,且當聚合節(jié)點動態(tài)變化時依然有效;④ 與其他安全數據聚合機制兼容。已有工作不能很好地滿足上述需求,難于實際使用。本文致力于研究新的數據隱藏技術,主要創(chuàng)新和貢獻如下。
1) 基于同余的代數特性定義了隱私保護元,各節(jié)點利用其隱私保護元,無需額外發(fā)送消息即可隱藏其傳感數據以實現(xiàn)隱私性保護;而簇頭一旦收到了簇內節(jié)點隱藏后的傳感數據,通過模加運算即可恢復出簇內聚合值。
2) 給出了一種使得節(jié)點可以獨立、動態(tài)地生成其隱私保護元的方法。該方法基于散列運算和取模運算,易于實現(xiàn),且無需額外通信交互。此外,該方法使節(jié)點不僅可以根據動態(tài)變化的數據聚合,參與節(jié)點動態(tài)地生成其隱私保護元,而且在參與聚合的節(jié)點相同時也可以生成不同的隱私保護元,保證了數據隱藏的安全性和靈活性。得益于動態(tài)變化的隱私保護元,節(jié)點通過異或運算即可實現(xiàn)簇內聚合值的機密性保護,且支持聚合值的完整性鑒別。
3) 基于所定義的隱私保護元及其生成方法,提出了分布式機制DAPE(data aggregation mechanism based on privacy-preserving element)。DAPE 屬于第二類機制,它不僅避免了第一類機制固有的問題,還具有更低的通信開銷。而與同類機制相比,DAPE不僅在提高隱私保護有效性的同時有著更低的通信開銷,且無需額外開銷即可與實現(xiàn)數據完整性鑒別的安全聚合機制,如文獻[13]和文獻[14]中機制兼容。
本文考慮典型的傳感器網絡,即由大量低耦合的傳感器節(jié)點(簡稱節(jié)點)自組織而成的靜態(tài)網絡。節(jié)點類型如伯克利的 MICA節(jié)點,它們通常配有8MHz的處理器,128KB的ROM,4KB的RAM。因此,雖然節(jié)點資源嚴格受限,但是擁有的空間足夠用來存放數字節(jié)的隱私保護信息,且擁有足夠的計算能力進行簡單的計算操作如散列運算。網絡部署后形成雙層簇結構[15],各簇成員知道所在簇的成員關系。
假設敵方可能俘獲任何節(jié)點,且可以獲取該節(jié)點所有的秘密信息。本文采用對偶密鑰實現(xiàn)初始化中節(jié)點對之間信息傳輸的安全性,對偶密鑰管理不是本文的研究內容,目前已有較多研究成果,在此基礎上假設節(jié)點對間對偶密鑰具有互異性[16,17]。盡管傳感數據具有不同的數據類別,由于非整型數據可以轉換為整型數據,且整型數據在存儲和傳輸上通常更為有效,同文獻[6],假設參與數據聚合的傳感數據為整型數據,且在0和上界maxd 之間變化。
本文以簇為聚合的基本單位,記簇內節(jié)點數為n,并以從1標記到n的簇內ID表示各節(jié)點。相鄰兩次數據匯報間的間隔為一個階段。在各階段,節(jié)點可能匯報數據,也可能不匯報數據,為便于描述,記簇 Ca中參與聚合的節(jié)點集合為 Ca′, Ca′大小為m(m≤n)。為實現(xiàn)傳感數據的隱私保護和聚合值的簇內恢復,定義了隱私保護元。隱私保護元的生成需要用到P-序列,首先給出其定義。
定義1 (P-序列) 任意節(jié)點b(b ∈ Ca′)的P-序列Pb是由m個整數構成的集合,按照簇內ID將其記為Pb= { pcb,c ∈ Ca′ }。Pb滿足,其中, g = dmaxn, dmax為傳感數據的上界。
各節(jié)點都對應一個秘密的 P-序列。節(jié)點的 P-序列用于生成其簇成員的隱私保護元。接下來給出隱私保護元的定義。
定義2 (隱私保護元R) 任意節(jié)點b(b ∈ Ca′)的隱私保護元,其中, pbc為節(jié)點c(c ∈ Ca′)的P-序列中下標為b的元素。
接下來給出性質1,性質1表明隱私保護元可以有效實現(xiàn)傳感數據的隱私保護及簇內聚合值的準確還原。為便于描述,記節(jié)點b的傳感數據為 db。
算例1 以 Ca′={1, 2, 3}給出性質1的算例。設g=12 626,各節(jié)點的傳感數據及P-序列如表1所示。節(jié)點1用來計算其隱私保護元的P-序列元素為表1中劃橫線的數據。
以節(jié)點 1給出隱私保護元的計算過程:R1=(3 654+2 379+4 717)mod 12 626=10 750。類似地,其他節(jié)點可以獲得其隱私保護元,如表1所示。不難驗算得(R1+R2+R3) mod 12 626=0,與性質1一致。
接下來以節(jié)點1給出傳感數據的隱藏過程:D1= ( d1+ R1)mod g = ( 110+ 1 0750)mod12626= 1 0860。類似地,其他節(jié)點可得其隱藏后的傳感數據,如表1所示。于是: D = ( D1+ D2+ D3)mod12626=(10 860 +11 569+3 180) mod 12 626=357。由于d=可見D = d ,與性質1一致。
表1 性質1的算例
DAPE利用隱私保護元實現(xiàn)傳感數據的隱私保護和聚合值的有效恢復。如圖1所示,該機制包括初始化和數據匯報2部分,其中,初始化部分僅在網絡部署后實施,數據匯報部分則反復運行。接下來給出詳細的機制實現(xiàn)。
圖1 機制DAPE框架
在初始化過程中,各節(jié)點生成并分發(fā)用于生成其P-序列的種子(P-序列的生成過程見4.2節(jié))。此后,任意節(jié)點對(b, c)將共享且僅共享 2個種子:{rb,rc};任何節(jié)點都不能獲得其他節(jié)點對間共享的cb種子。以簇 Ca進行具體的過程描述,并記b與c間的對偶密鑰為 Kb,c。
Step2 任意節(jié)點 b存儲其生成的種子{rcb及收到的種子為便于理解上述過程,以包含節(jié)點{1,2,3}的簇給出算例2如下。
算例2 取g=4 095,如圖2(a)所示,首先,各節(jié)點分別獨立產生用于生成其P-序列的2個種子。如節(jié)點1生成的種子為 { r21,r31} = { 3210,1659}。
接下來,如圖2(a)所示,各節(jié)點將其生成的種子發(fā)送給相應的簇成員。如節(jié)點1將{3 210}和{1 659}分別發(fā)送給節(jié)點2和節(jié)點3。
最后,如圖2(b)所示,各節(jié)點存儲所生成和接收的種子。如節(jié)點 1所存儲的種子為:。從圖 2(b)不難發(fā)現(xiàn),任意節(jié)點對僅共享2個種子,如節(jié)點1和節(jié)點2所共享的種子為3 210和1 989。
圖2 初始化過程的算例
首先將要用到的符號解釋如下。
Ca′:簇 Ca中參與聚合的節(jié)點集合;
rb:由節(jié)點b生成且僅與節(jié)點c共享的種子;c
rc:由節(jié)點c生成且僅與節(jié)點b共享的種子;b
pb:節(jié)點b的P-序列元素,并僅與節(jié)點c共享;c
H(?):單向散列函數,其函數值的字長不小于傳感數據的字長;
db:節(jié)點b的傳感數據;
Rb:節(jié)點b的隱私保護元;
Db:節(jié)點b隱藏后的傳感數據。
在各階段,節(jié)點隱藏其傳感數據并發(fā)送給簇頭,由簇頭恢復聚合值。以 Ca′(本文目的在于隱私保護,不再討論 Ca′的形成過程)進行描述,并僅描述m≥3的情況;如果m<3,則同SMART[2],各節(jié)點對數據進行切分和分發(fā),不再贅述。
接下來,節(jié)點b根據種子 rc(c ∈ C ′ ,c ≠ b )獲取ba節(jié)點 c的 P-序列元素 pc;進而利用{ pc(c ∈ C′,bbac≠b)}和pbb生成其隱私保護元 Rb。
最后,b利用 Rb隱藏 db:Db= ( db+ Rb)mod g ,并將{Db,b}發(fā)送給簇頭。
Step1中任意節(jié)點b產生的{ pb(c ∈ C ′)}為P-序ca列,以下進行證明。滿足隱私保護元的定義。
Step2 (簇內聚合) 簇頭在獲取了 Ca′中各節(jié)點所發(fā)送的數據,即獲取了{{Db,b}(b ∈ Ca′)}后,可恢復簇內聚合值D,過程如下:
記簇頭收到其他簇所發(fā)送的數據為D?。接下來,簇頭計算最終聚合值:Da=D+D?,并將其發(fā)送給下一跳節(jié)點。
算例 3 (數據匯報過程)如圖 3所示,以C1′={1,2,3}給出數據匯報過程的算例,并設節(jié)點1~3的傳感數據分別為137、516及338,所處階段s為1。節(jié)點根據其種子及 H (?)易于獲取相應的P-序列元素,給定這些值,如圖3 (a)所示,帶下劃線的數據為節(jié)點1所能獲取的數據。
首先以節(jié)點 1給出 R1的生成過程,如圖 3(b)所示:利用 p12和 p13獲取 p11;進而利用 p11、p12和 p13獲取 R1。類似地,節(jié)點2和3分別獲取 R2和 R3。
接下來,如圖3(c)所示,各節(jié)點利用其隱私保護元隱藏其傳感數據并發(fā)送給簇頭。例如,節(jié)點 1利用 R1隱藏其傳感數據 d1,得到 D1= 9 06;節(jié)點1僅將 { D1, 1}發(fā)送給簇頭。類似地,節(jié)點2和3分別將 { D2,2}和{D3,3}發(fā)送給簇頭。從上述過程易于發(fā)現(xiàn),由于采用了數據隱藏,敵方無法從各節(jié)點發(fā)送給簇頭的數據中推測出其傳感數據。
最后,如圖3 (c)所示,簇頭根據 D1、 D2和 D3計算得D。顯然,D = d ,這意味著簇內聚合值在簇頭處得到了準確還原。
以明文發(fā)送{Db,b}并不會影響傳感數據 db的隱私性(分析見第5.1節(jié))??紤]到有些應用場合不僅需要實現(xiàn)傳感數據的隱私性,還需要保證簇內聚合值的機密性,而敵方如果獲取了簇內各個 Db,則可以獲取簇內聚合值,采取以下方法實現(xiàn)聚合值的機密性保護。
圖3 數據匯報過程的算例(CH代表簇頭)
簇內節(jié)點共享簇密鑰 Ka,任意節(jié)點 b在獲得Db后,利用 Ka將 Db加密為 Db?Ka(? 為異或操作)并發(fā)送至簇頭。簇頭在收到了{Db?K,b}后,a首先計算 Db?Ka?Ka以獲取Db;之后按照Step 2操作即可獲取聚合值。而敵方由于不能獲取 Ka,不能還原出 Db,必不能獲取該簇的聚合值。
得益于動態(tài)變化的隱私保護元,上述方案中的 Ka可以有效對抗已知明文攻擊:假設敵方獲取了 dc,并獲取了密文 Dc?Ka,由于敵方不能獲取Rc,必不能由此獲取 K 。敵方只有俘獲了某個簇a成員才能獲得 Ka;而此時雖然敵方可以獲取各個Db,進而獲取聚合值,如5.1節(jié)所分析,敵方并不能因此獲取節(jié)點的隱私數據。值得一提的是,即使采用加密體系如 RC5加密 Db以實現(xiàn)聚合值的機密性保護,只要簇密鑰暴露了(簇內一個節(jié)點被俘獲則簇內密鑰將被暴露),聚合值一樣會暴露。也就是說,傳統(tǒng)加密體系在節(jié)點被俘獲問題上并不會比上述方案更有效。因而,選擇計算更有效的上述方案。關于被俘獲節(jié)點的檢測,可以參考文獻[18];關于節(jié)點被俘獲所引發(fā)的簇密鑰暴露問題,文獻[19]給出了新的方法,不再詳述。
最后討論聚合值的完整性鑒別。由于無論以明文還是按照上述方法發(fā)送{Db,b},簇內節(jié)點均可以獲取簇頭處理的數據,各節(jié)點都可以監(jiān)督簇頭的聚合操作。也因此,即使簇頭被俘獲了,簇頭篡改聚合值的行為將被監(jiān)測到。這意味著DAPE無需額外開銷,即可實現(xiàn)數據完整性鑒別的安全聚合機制,如文獻[13]和文獻[14]中機制兼容。不再贅述完整性鑒別的具體過程。
本節(jié)首先評估隱私保護有效性和數據聚合準確性,接下來評估系統(tǒng)開銷。DAPE中簇內參與聚合的節(jié)點數為m,為便于比較,在5.3節(jié)及5.4節(jié)的開銷評估中,將CPDA和Conti的機制的簇大小統(tǒng)一記為m。
集中式機制如FSP(fully reporting SP-based)及 D-ASP(distributed adaptive SP-based)[6]中節(jié)點利用與基站共享的秘密數實現(xiàn)隱私保護,當基站被俘獲時,其數據隱私將被暴露。對于各分布式機制而言,隱私保護有效性與被俘獲節(jié)點/節(jié)點對間通信鏈路的暴露有關。在傳感器網絡中,節(jié)點對間信息傳輸的機密性通過對偶密鑰加密實現(xiàn)。目前已有研究可以保證被俘獲節(jié)點不會對其他節(jié)點間對偶密鑰造成影響[16],因此,節(jié)點對間加密鏈路的暴露等價于節(jié)點被俘獲,也因此,接下來僅分析節(jié)點被俘獲對典型的分布式機制DAPE、CPDA[2]、SMART[2]及Conti的機制[4]所造成的影響。
DAPE中任意的節(jié)點b利用其隱私保護元 Rb對其傳感數據 db進行隱私保護,因此,敵方如果不能獲取 Rb,則不能獲取 db。1)假設敵方僥幸獲取了某個階段 s0的 db(通過攻破DAPE以外的方式),并獲取了這一階段的 Db。雖然此時敵方可以獲取s的 Rb(根據 Db= ( db+ Rb)mod g ),然而,只要0種子或階段數s的取值不重復,那么 s0所使用的 Rb并不會確切地在某個階段 s0′被重復使用,這意味著敵方不能由此獲取節(jié)點b在任何其他階段的隱私數據。而在傳感器節(jié)點生命周期內,易于做到s的取值不重復;且即使s的取值存在重復的可能性,還可以通過更新種子滿足這一條件。此外,由于 Rb在各階段都得到了更新,且由于散列函數的隨機性,各階段的 Rb不存在關聯(lián)性,敵方不能通過任何階段s0的 Rb獲取其他階段的 Rb。最后,由于 Rb并非某個散列值,而是多個散列值運算后的結果,敵方即使獲取了某個 Rb,也不能獲取生成該 Rb的相應的秘密數的散列值,避免了敵方通過強力攻擊獲取各節(jié)點的秘密種子??梢?,在這一攻擊假設下,DAPE是安全的。2) Rb是基于b與 Ca′中各節(jié)點所共享的秘密種子生成的。因此,敵方只有獲取了b的所有秘密種子才能獲取其各階段的 Rb。由于任何節(jié)點對間所共享的種子與其他節(jié)點對間所共享的種子互異,敵方只有俘獲了 Ca′中所有節(jié)點才能獲取足夠的種子信息進而獲取各階段的 Rb。于是,DAPE所能容忍的被俘獲節(jié)點數為(m-1)。
CPDA中所有參與聚合的節(jié)點成簇,任意節(jié)點b的數據隱私暴露當且僅當其所在簇成員串謀。記CPDA的簇大小為 mc,則其所能容忍的被俘獲節(jié)點數為(mc- 1 )。SMART中任意節(jié)點b的數據隱私暴露當且僅當其入度與出度節(jié)點均被俘獲。因此,SMART所能容忍的被俘獲簇節(jié)點的平均數目為3(J-1)/2。Conti的機制中的各節(jié)點與簇內成員共享A個雙密鑰,每輪數據匯報使用V(V≤A)個。記其簇大小為C,被俘獲的節(jié)點數為w,則節(jié)點的數據隱私被暴露的概率為[(2 w - 1 )(C - 1 )]V。對于Conti的機制而言,即使敵方只俘獲了2個簇節(jié)點,仍然有機會獲取節(jié)點的數據隱私。
綜上,如果m> mc,那么DAPE比CPDA可以容忍更多的被俘獲節(jié)點,即有著更強的隱私保護力度。如果m>3(J-1)/2,則DAPE比SMART有著更強的隱私保護力度。而即使m=C,DAPE的隱私保護有效性也要高于Conti的機制。
對于 DAPE、CPDA、SMART、Conti的機制及FSP、D-ASP而言,如果所有消息均發(fā)送成功了,那么基站所獲取的聚合值均為準確的聚合值(性質1保證了DAPE具有這一性能)。然而,數據分組在實際傳輸中可能被丟失或損害,將對這些機制造成不同的影響,以下進行具體分析。
對于FSP及D-ASP,由于不是所有數據后都附加了源節(jié)點ID,如果簇內發(fā)生傳輸失敗,簇頭將無法檢測到哪些分組丟失;如果簇間發(fā)生傳輸失敗,如分組丟失,由于基站同樣無法獲取丟失數據分組的信息,將無法確定使用哪些秘密數進行數據還原。因此,即使只有一個分組丟失,基站也無法還原所收到數據的聚合值。這一問題可以通過在每一個數據分組后附上源節(jié)點 ID進行解決,然而,由于節(jié)點 ID不能參與數據聚合,該方法可能引發(fā)昂貴的額外通信開銷,可行性不強。
對于DAPE,CPDA及Conti的機制而言,如果簇內發(fā)生傳輸失敗,簇頭根據成功接收的數據分組中的 ID信息即可檢測到哪些分組丟失。因此,各簇向其他簇發(fā)送的總是準確的聚合值。也因此,即使簇間存在分組丟失等失效傳輸,基站也能獲取數據的準確聚合結果。SMART可以擴充為這一類情況。而由于CPDA、SMART及Conti中節(jié)點需要發(fā)送的數據多于DAPE(詳見5.3節(jié)),在數據分組傳輸失效率相同且數據發(fā)送期限相同的前提下,DAPE將能發(fā)送更多的數據分組。也因此,就數據聚合準確度而言,DAPE最為適合信道脆弱的傳感器網絡。
本節(jié)分析和比較各機制在數據匯報階段的通信開銷。為便于描述,記傳感數據長 Lsenbit;網絡節(jié)點數為N,節(jié)點的全局ID長;DAPE 的簇節(jié)點數為 n,記簇內 ID 長 lcluD-ASP中的 li stb列表(節(jié)點 ID構成)長 L{ID}bit。為便于分析和比較,同文獻[6]中,假定網絡部署后形成多個單跳簇。必須要說明的是,即使是多跳簇,也不會影響DAPE在通信上的優(yōu)勢,因為如同下文分析的,DAPE中各節(jié)點僅需發(fā)送一個數據分組,且分組長小于其他機制。由于DAPE、CPDA、SMART及Conti的機制的簇間通信開銷與沒有提供隱私保護的機制一樣,額外的通信開銷僅在簇內通信中產生,接下來僅分析其簇內通信開銷。
DAPE中任意節(jié)點b的通信開銷源于將{Db,b}發(fā)送給簇頭,其中, Db的數據范圍為[0,g - 1 ]。由于,于是,,則bit。值得注意的是,雖然DAPE的隱私保護有效性與m(m≤n)成正比,而m隨n的增長而增長,這意味著 n越大則隱私保護有效性越高,由于lclu=■lo g n■,通信開銷隨n的增長是緩慢增長的??梢姡珼APE的隱私保護有效性并沒有受限于通信開銷。
SMART中節(jié)點將其傳感數據分為J塊(每個塊數據的長 Lsenbit),并將其中的(J-1)塊分別發(fā)送給(J-1)個鄰居節(jié)點。此外,該節(jié)點將所收到的數據及所保留的塊數據進行聚合并發(fā)送給下一跳節(jié)點,該數據長為 ( Lsen+ lclu)bit。因此,各節(jié)點至少需要發(fā)送J個消息分組,總的通信開銷大于 ( J Lsen+ lclu)bit。
Conti的機制中的任意節(jié)點b在匯報其傳感數據前需要發(fā)送2條以確定雙密鑰的使用情況,如果孿生節(jié)點所共享的雙密鑰互異,則該信息的平均長度為 ( A m 4)Lsenbit(A 為節(jié)點所擁有的雙密鑰數目, A ≥ 2 );否則,大于這一長度。之后,節(jié)點 b利用其相應的雙密鑰隱藏其傳感數據,最終將隱藏結果{db+H(s eed,ki)}發(fā)送給簇頭。因此,各節(jié)點的通信開銷不小于[1 + (A m 2)]Lsenbit。
FSP中任意節(jié)點 b的通信開銷源將 { D ?b, A ?b}發(fā)送給簇頭。 D?b和 A?b的數據范圍均為[0,q - 1 ]。由于D-ASP中任意節(jié)點b發(fā)送給簇頭的消息為{ D?b, A ?b, l i stb( ID list)},因此,總的通信開銷為 2 × max{ Lsen, (lglo+ 1 )}+ L{ID}bit。
表2 各機制中任意節(jié)點的簇內通信開銷
表2總結了上述機制的通信開銷。由于 J ≥ 3 ,lglo>lclu,m≥3,A≥2,易知DAPE的通信開銷比其他分布式機制要低。 2 max{Lsen, (lglo+1)} < (Lsen+2lclu)成立的條件是Lsen<2lclu,而即使lclu=5(可支持大小為32的簇),要想滿足Lsen<2lclu,需滿足dmax<1 024或N<512,可見Lsen<2lclu的成立受限于實際情況。也就是說,一般情況下,DAPE在通信上比FSP更為有效,則顯然DAPE比D-ASP在通信上更為有效。
DAPE的通信開銷與 Lsen及 lclu有關。為了直觀地展示DAPE在不同的 Lsen及n取值下相對其他機制的通信有效性,以單跳簇給出算例4如下。
算例4 (節(jié)點的通信開銷):CPDA和SMART的通信開銷分別隨m和J的增長而線性增長,機制的提出者將m和J的取值推薦為3(此時兩者能容忍 2個被俘獲節(jié)點),按照推薦值計算兩者開銷。Conti的通信開銷與A( A ≥ 2 )及m相關,取A=2且同樣取m=3進行計算。DAPE的通信開銷與m無關,表3給出了各機制在 Lsen及n變化時開銷的變化情況,此時全局ID隨簇內節(jié)點數的變化而變化。
從表3可以直觀看出,DAPE的通信開銷是輕量的,其隨簇大小n的增長而緩慢增長,這是由于其隨 Lsen的增長而線性增長,然而,其隨 Lsen增長而增長的速度小于其他機制。雖然其他機制中參數的選取均為最小值,DAPE仍然比其他機制具有更低的通信開銷,特別是與分布式機制相比,通信上的優(yōu)勢更為明顯。值得一提的是,DAPE的通信開銷與m無關,即使m=n,其通信開銷也是一樣的,而其他機制如果取m=n,通信開銷將迅速增長。此外,如果增大A,Conti的機制在隱私保護有效性增強的同時,開銷同樣會迅速增大??梢姡珼APE比已有分布式機制有著更高的隱私保護有效性,且通信也更為有效。
表3 各節(jié)點簇內通信開銷的算例(單位bit)
5.4.1 存儲開銷
DAPE中節(jié)點需要存儲2(n-1)個種子,開銷為2(n - 1 )(Lsen+ lclu)bit。CPDA 中的種子是臨時生成的;SMART利用數據切分技術實現(xiàn)隱私保護,因此,兩者無需額外的存儲開銷,然而,以高的通信開銷為代價。Conti的機制中各節(jié)點需要存儲K個密鑰,存儲開銷為KLsenbit。FSP及D-ASP中節(jié)點需要存儲2個種子,開銷為 2 max{Lsen, (lglo+ 1 )}bit。
綜上,DAPE的存儲開銷低于Conti的機制,高于其他機制。由于n為簇大小,DAPE的存儲開銷仍然是合適的。例如:1)取 Lsen= 1 1bit(傳感數據范圍為0~2 047),n=8(clu3l = bit),則存儲開銷為25byte。2)仍然取sen11L = bit,則即使n=20(此時clul 為5bit),存儲開銷為76 B。3)仍然取n=20,取sen16L = bit(此時傳感數據范圍為0~16 383),存儲開銷為100byte。節(jié)點數目為20的簇已經是較大的簇了,且0~16 383可以包含常見的傳感數據范圍,而此時的存儲開銷僅為100byte,可見DAPE的存儲開銷是適合的。
表4 存儲開銷和數據匯報階段的計算開銷
5.4.2 計算開銷
DAPE分為初始化和數據匯報2部分:1)初始化中各節(jié)點將種子加密發(fā)送給簇成員,并解密收到種子,總的計算開銷為2(n-1)次加/解密??梢?,初始化的計算開銷是合適的。2)在數據匯報部分,各節(jié)點通過散列運算獲取2(m-1)個P-序列元素值;并利用其隱私保護元隱藏傳感數據,總的計算開銷為2(m-1)次散列運算及復雜度為2()om 的四則運算。簇頭對所收到的數據進行復雜度為 ()om的四則運算。如果需要實現(xiàn)聚合值的機密性,則普通節(jié)點及簇頭只需分別增加1次及(m-1)次異或運算即可。
CPDA中節(jié)點分別加密發(fā)送給簇成員的數據,解密收到的數據并進行四則運算,最終值加密發(fā)送給簇頭,總的計算開銷為2m次加/解密及復雜度為2()om 的四則運算;簇頭在解密收到的成員數據后,通過高斯消去法還原聚合值,其計算開銷為m次加/解密、1次矩陣求逆。
SMART中節(jié)點將其傳感數據切分為J份并將其中的(J-1)份加密發(fā)送給鄰居節(jié)點,還需要將收到的數據解密求和,其計算開銷為2J次加/解密及復雜度為2()oJ的四則運算。
Conti的機制中節(jié)點對A個雙密鑰進行2次散列運算,再利用運算值進行傳感數據的隱藏保護,因此,其計算開銷為2A次散列運算,復雜度為 ()oA的四則運算,4次加/解密。此外,簇頭需要解密所收到的數據并求和,計算開銷為 m次加/解密及復雜度為 ()om的四則運算。
FSP及D-ASP中節(jié)點首先對其秘密數進行散列運算;之后,利用運算值進行傳感數據的隱藏保護,各節(jié)點的計算開銷為1次散列運算、復雜度為 ()om的四則運算;簇頭的計算開銷為復雜度為 ()om的四則運算。
表4總結了各機制的存儲開銷和數據匯報階段的計算開銷,其中,DAPE的計算開銷是按照實現(xiàn)了聚合值的機密性保護評估的。從表4可以看出,DAPE的存儲開銷低于Conti的機制,高于其他機制;計算開銷高于FSP及D-ASP,低于其他機制。然而,如同前文分析的,DAPE的存儲和計算開銷仍然是輕量的,適合于傳感器網絡。
本文提出了一種對聚合中的傳感數據提供隱私保護的機制 DAPE。基于構造的隱私保護元,DAPE中節(jié)點無需額外的信息交互即可實現(xiàn)其傳感數據的隱私保護,且簇內聚合值可以在簇內得到有效還原。因此,與可以在網內實現(xiàn)聚合值還原的其他機制相比,DAPE在提高隱私保護有效性的同時在通信上更為有效,且還可以兼容于實現(xiàn)數據完整性鑒別的安全聚合機制;與需要由基站恢復聚合值的機制相比,DAPE能夠更好地適應脆弱的無線通信信道,且在通信方面更為有效。雖然DAPE的存儲和計算開銷高于部分已有機制,由于存儲開銷僅與簇節(jié)點數n正相關,而節(jié)點的計算開銷主要源于(m-1)次散列運算(mn≤),因此,DAPE的存儲和計算開銷仍然是輕量的??梢?,DAPE更適用于資源有限且應用相關的傳感器網絡。
[1] TANG X, XU J. Extending network lifetime for precision constrained data aggregation in wireless sensor networks[A]. Proceedings INFOCOM 2006: 25th IEEE International Conference on Computer Communications[C]. Piscataway, USA, 2006. 131-146.
[2] HE W, LIU X, NGUYEN H, et al. PDA: privacy-preserving data aggregation in wireless sensor networks[A]. Proceedings INFOCOM 2007: 26th IEEE International Conference on Computer Communications[C]. Piscataway, USA, 2006. 165-168.
[3] CASTELLUCCIA C, MYKLETUN E, TSUDIK G. Efficient aggregation of encrypted data in wireless sensor networks[A]. MobiQuitous 2005: Second Annual International Conference on Mobile and Ubiquitous Systems Networking and Services[C]. San Diego, California,USA, 2005. 109-117.
[4] CONTI M, ZHANG L, ROY S, et al. Privacy-preserving robust data aggregation in wireless sensor networks[J]. Security and Communication Networks, 2009,2(2):195-213.
[5] CASTELLUCCIA C, CHAN A, MYKLETUN E, et al. Efficient and provably secure aggregation of encrypted data in wireless sensor networks[J]. ACM Transactions on Sensor Networks, 2009,5(3):1-36.
[6] FENG T, WANG C, ZHANG W, et al. Confidentiality protection schemes for data aggregation in sensor networks[A]. Proceedings INFOCOM 2008: 27th IEEE International Conference on Computer Communications[C]. Piscataway, USA, 2008. 131-146.
[7] WESTHOFF D, GIRAO J, ACHARYA M. Concealed data aggregation for reverse multicast traffic in sensor networks: encryption, key distribution, and routing adaptation[J]. IEEE Transactions on Mobile Computing, 2006,5(10):1417-1431.
[8] BISTA R, CHONJU C, SONG M, et al. Preserving privacy and assuring integrity in data aggregation for wireless sensor networks[A]. 2010 IEEE International Conference on Networked Embedded Systems for Enterprise Applications, NESEA 2010[C]. Soochow, China, 2010. 128-237.
[9] HE W, LIU X, NGUYEN H, et al. Abdelzaher. iPDA: an integrity-protecting private data aggregation scheme for wireless sensor networks[A]. Proceedings IEEE Military Communications Conference MILCOM[C]. Washington, DC, USA, 2008. 1-7.
[10] HE W, LIU X, NGUYEN H, et al. A cluster-based protocol to enforce integrity and preserve privacy in data aggregation[A]. Proceedings of the 29th IEEE International Conference on Distributed Computing Systems Workshops[C]. Anchorage, Alaska, 2009. 14-19.
[11] HUANG S, SHIEH S, TYGAR J. Secure encrypted-data aggregation for wireless sensor networks[J]. Wireless Networks, 2010,16(4): 915-927.
[12] ZENG W, LIN Y, WANG L. Privacy-preserving data aggregation based on the p-function set in wireless sensor networks[A]. Proceedings of the 2010 IEEE 10th International Conference on Computer and Information Technology (CIT 2010)[C]. Bradford, United Kingdom,2010. 2831-2836.
[13] BEKARA C, LAURENT-MAKNAVICIUS M. A secure aggregation protocol for cluster-based wireless sensor networks with no requirements for trusted aggregator nodes[A]. NGMAST 2007 - The 2007 International Conference on Next Generation Mobile Applications,Services and Technologies, Proceedingss[C]. Piscataway, USA, 2007. 1-10.
[14] SUAT O, CAM H. Integration of false data detection with data aggregation and confidential transmission inwireless sensor networks[J].IEEE/ACM Transactions on Networking, 2010,18(3):736-749.
[15] GUAN X, GUAN L, WANG X. A novel energy efficient clustering technique based on virtual hexagon for wireless sensor networks[J].International Journal of Innovative Computing, Information and Control, 2011, 7(4):1891-1904.
[16] ZHANG W, TRAN M, ZHU S, et al. A random perturbation-based scheme for pairwise key establishment in sensor networks[A]. Mobi-Hoc'07: Proceedings of the Eighth ACM International Symposium on Mobile Ad Hoc Networking and Computing[C]. New York, USA,2007. 90-99.
[17] ALI F, MEHDI B, HOSSEIN S, et al. A high performance and intrinsically secure key establishment protocol for wireless sensor networks[J]. Computer Networks, 2011,55(8):1849-1863.
[18] MUKHERJEE P, SEN S. Comparing reputation schemes for detecting malicious nodes in sensor networks[J]. Computer Journal, 2011,54(3):482-489.
[19] WEN M, ZHENG Y, YE W, et al. A key management protocol with robust continuity for sensor networks[J]. Computer Standards & Interfaces, 2009,31(4): 642-647.