胡震海,王立松
(南京航空航天大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,江蘇 南京 210016)
無線傳感器網(wǎng)絡(luò)作為物聯(lián)網(wǎng)的重要組成部分,被廣泛應(yīng)用于醫(yī)療衛(wèi)生、智能家居、國防軍事等領(lǐng)域。無線傳感器一般具有廉價(jià)、體積小、質(zhì)量小、能量有限、無線通信、較弱的計(jì)算能力和簡易的操作系統(tǒng)等特點(diǎn)[1]。無線傳感器能夠被靈活地布置,通過無線傳輸方式交換數(shù)據(jù)形成一個(gè)能夠存儲(chǔ)、計(jì)算、傳輸部署區(qū)域感知數(shù)據(jù)的多跳自組織網(wǎng)絡(luò)。無線傳感器的便捷部署,節(jié)省了人力物力,具有廣泛的應(yīng)用前景。
無線傳感器網(wǎng)絡(luò)中,用戶經(jīng)常提交空間范圍聚集查詢以獲取網(wǎng)絡(luò)中某區(qū)域的統(tǒng)計(jì)信息。相比較傳統(tǒng)的數(shù)據(jù)收集方式,數(shù)據(jù)聚集的收集方式節(jié)省了能量開銷。
一方面?zhèn)鞲衅鞴?jié)點(diǎn)大都采用電池供電,常被部署于環(huán)境惡劣和無人值守的地方,部署后更換難度比較大。鑒于傳感器節(jié)點(diǎn)的更換難度以及有限能量,我們在采用傳感器節(jié)點(diǎn)存儲(chǔ)與傳輸感知數(shù)據(jù)的同時(shí),應(yīng)盡量延長傳感器節(jié)點(diǎn)的生命周期。另一方面由于傳感器容易被監(jiān)聽,故在實(shí)際應(yīng)用部署中可能會(huì)面臨隱私數(shù)據(jù)泄露和篡改問題。例如,在軍事領(lǐng)域中,傳感器網(wǎng)絡(luò)被部署獲取偵查區(qū)域數(shù)據(jù),監(jiān)測數(shù)據(jù)被監(jiān)聽或篡改會(huì)帶來意想不到的后果;智能家居中,傳感器被部署于居民住宅內(nèi),用以統(tǒng)計(jì)區(qū)域內(nèi)居民水煤電的用量情況,借以幫助市政單位做出決策。所以,應(yīng)用無線傳感器獲取數(shù)據(jù)時(shí),能量高效且考慮隱私的空間范圍聚集查詢成為廣泛應(yīng)用中關(guān)鍵的一環(huán)。
現(xiàn)有的無線傳感器網(wǎng)絡(luò)聚集查詢隱私保護(hù)方法大都基于預(yù)先構(gòu)造好的拓?fù)浣Y(jié)構(gòu)和全網(wǎng)絡(luò)的所有節(jié)點(diǎn)來處理,且常采用加密的形式對感知數(shù)據(jù)進(jìn)行保護(hù)。拓?fù)浣Y(jié)構(gòu)的維護(hù)以及加密的方式都增加了傳感器節(jié)點(diǎn)的能耗。
針對以上問題,本文提出一種抗竊聽攻擊的傳感器網(wǎng)絡(luò)空間范圍聚集查詢處理PCPDA(Part of the area based on Cluster Privacy-preserving Data Aggregation)算法,對無線傳感器網(wǎng)絡(luò)中部分區(qū)域采用空間范圍聚集查詢方式收集感知數(shù)據(jù)?;緦⒉樵兿l(fā)送至指定區(qū)域,指定區(qū)域內(nèi)采用邊查詢邊聚集的方式,動(dòng)態(tài)地按照既定路線廣播查詢消息,收集感知數(shù)據(jù),最后將聚集消息返回給基站。這種基于路線的收集方式,不依賴于預(yù)先構(gòu)造好的拓?fù)浣Y(jié)構(gòu),且在未采用任何加密措施的情況下,保護(hù)了傳感器節(jié)點(diǎn)原始數(shù)據(jù)的隱私性。
傳感器網(wǎng)絡(luò)中的隱私保護(hù)既需要通過隱私保護(hù)策略來防止數(shù)據(jù)泄露和篡改,同時(shí)也需要通過數(shù)據(jù)管理技術(shù)來完成數(shù)據(jù)聚集、數(shù)據(jù)查詢,并且需要進(jìn)行性能優(yōu)化以減少能量損耗。傳感器網(wǎng)絡(luò)中的隱私保護(hù)策略主要包括數(shù)據(jù)擾動(dòng)技術(shù)、數(shù)據(jù)加密技術(shù)和數(shù)據(jù)匿名化技術(shù),數(shù)據(jù)管理技術(shù)主要從數(shù)據(jù)存儲(chǔ)、路由建立、查詢策略等方面進(jìn)行性能優(yōu)化[2]。故我們需要在保證傳感器網(wǎng)絡(luò)的隱私數(shù)據(jù)不被泄露的情況下完成數(shù)據(jù)聚集。
傳感器網(wǎng)絡(luò)在完成數(shù)據(jù)聚集情況下的隱私保護(hù)加密策略主要包括端到端加密策略和逐跳加密策略。
(1)逐跳加密:He等人[3]提出2種協(xié)議CPDA(Cluster-based Private Data Aggregation)和SMART(Slice-Mix-AggRegaTe),CPDA中無線傳感器網(wǎng)絡(luò)組織成簇結(jié)構(gòu),簇內(nèi)節(jié)點(diǎn)通過在感知數(shù)據(jù)中添加私有隨機(jī)數(shù)來保證感知數(shù)據(jù)的隱私性,簇頭節(jié)點(diǎn)利用多項(xiàng)式的代數(shù)性質(zhì)來計(jì)算所需的聚合值。SMART中采用數(shù)據(jù)分片技術(shù),將分片后j-1份數(shù)據(jù)片通過逐跳加密機(jī)制傳輸給相鄰的j-1個(gè)節(jié)點(diǎn),節(jié)點(diǎn)對所收到的分片數(shù)據(jù)進(jìn)行聚合,并根據(jù)所構(gòu)造的TAG樹,將聚合結(jié)果傳輸給下一個(gè)節(jié)點(diǎn),直至Sink節(jié)點(diǎn)。
SMART采用文獻(xiàn)[4]中提出的隨機(jī)密鑰分配策略,該密鑰策略主要由3部分組成:①密鑰預(yù)分配:密鑰池中有K個(gè)密鑰,傳感器網(wǎng)絡(luò)中的每個(gè)傳感器節(jié)點(diǎn)從池中隨機(jī)選取k個(gè)密鑰。②發(fā)現(xiàn)共享密鑰:每個(gè)節(jié)點(diǎn)找出它們鄰居中擁有相同密鑰的節(jié)點(diǎn),如果2個(gè)節(jié)點(diǎn)擁有相同密鑰,則建立安全鏈接。③建立路徑密鑰:沒有相同密鑰的鄰居節(jié)點(diǎn),可以通過多跳方式建立安全鏈接。
基于SMART的隱私保護(hù)加密過程分為3個(gè)步驟:分片、混合和聚集。①分片:節(jié)點(diǎn)隨機(jī)選取自身相鄰或h跳范圍內(nèi)的節(jié)點(diǎn),目標(biāo)節(jié)點(diǎn)將自身數(shù)據(jù)分割成j份,自身保留1份數(shù)據(jù),將其余j-1份數(shù)據(jù)通過安全通道隨機(jī)分發(fā)到h跳范圍內(nèi)的節(jié)點(diǎn)。②混合:節(jié)點(diǎn)接收加密的數(shù)據(jù)分片后,使用發(fā)送節(jié)點(diǎn)的公鑰解密,接收節(jié)點(diǎn)等待一段時(shí)間,確保其余的分片數(shù)據(jù)到達(dá),然后將接收到的分片數(shù)據(jù)相加。③聚集:節(jié)點(diǎn)數(shù)據(jù)混合后沿著拓?fù)錁鋵?shù)據(jù)聚集到Sink節(jié)點(diǎn)。
在SMART的基礎(chǔ)上,文獻(xiàn)[5]提出了一種改進(jìn)的傳感器網(wǎng)絡(luò)隱私保護(hù)協(xié)議PECDA(Privacy-preserving and Energy efficient Continuous Data Aggregation)。PECDA不需要對查詢區(qū)域內(nèi)所有節(jié)點(diǎn)進(jìn)行分片,對于所構(gòu)造的拓?fù)錁?,在?shù)據(jù)分片階段只需對葉子節(jié)點(diǎn)進(jìn)行分片。由于葉子節(jié)點(diǎn)只包括自身的感知數(shù)據(jù),為避免其感知數(shù)據(jù)泄露給父親節(jié)點(diǎn),數(shù)據(jù)分片階段只需對葉子節(jié)點(diǎn)進(jìn)行分片,葉子節(jié)點(diǎn)將分片后的j-1份數(shù)據(jù)通過安全鏈接傳輸給鄰居節(jié)點(diǎn)。
文獻(xiàn)[6]中提出的DADPP(Data Aggregation Different Privacy-levels dim Protection),根據(jù)不同的隱私級別,將同一簇內(nèi)的所有節(jié)點(diǎn)劃分為多個(gè)組,各組內(nèi)的節(jié)點(diǎn)有相同的隱私級別。 每個(gè)組分別對原始數(shù)據(jù)進(jìn)行預(yù)處理,然后發(fā)給簇頭節(jié)點(diǎn),簇頭節(jié)點(diǎn)聚集所有組預(yù)處理后數(shù)據(jù),最后匯聚至基站。文獻(xiàn)[7]提出的iPDA(integrity-protecting Private Data Aggregation)利用SMART中切分重組的思想來保護(hù)數(shù)據(jù)的隱私,并通過構(gòu)造不相交的聚合路徑/樹來收集感知數(shù)據(jù),利用冗余數(shù)據(jù)進(jìn)行完整性驗(yàn)證。文獻(xiàn)[8]提出的ESPART(Energy-Saving Private-preserving AggRegaTion)對SMART進(jìn)行了改進(jìn),一方面基于所構(gòu)造的樹結(jié)構(gòu)本身降低通信量從而節(jié)省能量,另一方面隨機(jī)分配節(jié)點(diǎn)時(shí)間片,降低信息傳輸過程中的碰撞率,同時(shí)限制串通數(shù)據(jù)范圍,降低了數(shù)據(jù)丟失對聚集精準(zhǔn)度的影響。文獻(xiàn)[9]在文獻(xiàn)[3]的基礎(chǔ)上提出一種適應(yīng)性較強(qiáng)的數(shù)據(jù)融合方法LSDA(Lightweight Secure Data Aggregation),該方法采用分片重組技術(shù),根據(jù)網(wǎng)絡(luò)通信量調(diào)整簇內(nèi)節(jié)點(diǎn)分片大小。文獻(xiàn)[10]提出一種低能耗隱私數(shù)據(jù)安全融合方法LCSDA(Low energy-Consuming Secure Data Aggregation),該方法根據(jù)最短路徑原則為簇內(nèi)節(jié)點(diǎn)選取鄰居節(jié)點(diǎn),并借助prim算法建立簇內(nèi)數(shù)據(jù)的融合路徑。
(2)端到端加密:文獻(xiàn)[11]提出一種簡單的求和同態(tài)加密策略,采用該策略實(shí)現(xiàn)端到端加密機(jī)制的SUM聚集。該策略包含加密函數(shù)Enc()和解密函數(shù)Dec(),其中:Enc(m,k,M)=m+kmodM,Dec(c,k,M)=c-kmodM。節(jié)點(diǎn)Si與Sink節(jié)點(diǎn)共享密鑰ki,k是ki由計(jì)算得到的,M是系統(tǒng)參數(shù),用m1、m2表示傳感器節(jié)點(diǎn)S1和S2的原始感知數(shù)據(jù)。文獻(xiàn)[12]提出的SP(Secret Perturbation)模式系列與方案AHE(Add Homomorphism)思路類似,其中BSP(Basic Secret Perturbation-based)模式通過添加輔助數(shù)據(jù)項(xiàng),不僅實(shí)現(xiàn)了AHE功能,還能夠應(yīng)對重放攻擊;FSP(Fully-reporting SP-based)模式中,Sink節(jié)點(diǎn)減去所有節(jié)點(diǎn)的秘密擾動(dòng)數(shù)據(jù)和可得到正確的聚集結(jié)果;O-ASP(Optimal Adaptive SP-based)模式和D-ASP(Distributed Adaptive SP-based)通過對FSP的優(yōu)化減少了數(shù)據(jù)傳輸?shù)耐ㄐ帕?。文獻(xiàn)[13]提出SIES(Secure In-network processing of Exact Sum)方案,通過加同態(tài)加密技術(shù)和數(shù)據(jù)共享[14]等技術(shù)實(shí)現(xiàn)密文數(shù)據(jù)的聚集操作,SIES通過SECOA(SECure Outsourced Aggregation)[15]來驗(yàn)證聚集結(jié)果的完整性。壓縮數(shù)據(jù)收集是基于壓縮感知理論的一項(xiàng)重要突破,由于其開銷低的特性,已經(jīng)在傳感器網(wǎng)絡(luò)中被用作數(shù)據(jù)收集的方法。在存在開放無線介質(zhì)情況下,壓縮數(shù)據(jù)收集易受到各種攻擊的影響,文獻(xiàn)[16]提出一種高效的具有隱私保護(hù)能力的壓縮數(shù)據(jù)收集方案,該方案在壓縮數(shù)據(jù)收集過程中,采用同態(tài)加密的方式避免流量跟蹤和保證消息的機(jī)密性。無線傳感器網(wǎng)絡(luò)常通過端到端或逐跳的方式驗(yàn)證數(shù)據(jù),檢測虛假數(shù)據(jù)的注入。前者,檢測工作發(fā)生在消息聚集后,且只能在Sink節(jié)點(diǎn)進(jìn)行。端到端的檢測方式效率不高,容易致使大量合法數(shù)據(jù)丟失。對此,文獻(xiàn)[17]提出一種基于端到端同態(tài)加密形式的隱私保護(hù)策略,并且通過逐跳的方式進(jìn)行數(shù)據(jù)安全檢測,以此降低對Sink節(jié)點(diǎn)的依賴。
現(xiàn)有基于數(shù)據(jù)聚集情況下的隱私保護(hù)策略,采用數(shù)據(jù)加密技術(shù),并且都是基于全網(wǎng)絡(luò)節(jié)點(diǎn)下的靜態(tài)查詢。針對以上問題,本文提出一種抗竊聽攻擊的傳感器網(wǎng)絡(luò)空間范圍聚集查詢處理算法,該算法不依賴于某種加密策略,采用邊查詢邊聚集的方法,動(dòng)態(tài)地收集感知數(shù)據(jù),能夠在完成數(shù)據(jù)聚集情況下保證節(jié)點(diǎn)原始數(shù)據(jù)的隱私性。
PCPDA利用窗體查詢收集部分區(qū)域節(jié)點(diǎn)的感知數(shù)據(jù)并保證節(jié)點(diǎn)原始數(shù)據(jù)的隱私性。查詢窗體內(nèi),采用基于分簇的動(dòng)態(tài)查詢方法,窗體內(nèi)以邊查詢邊聚集的方式進(jìn)行。
為了避免現(xiàn)有算法的一些問題,本文提出一種抗竊聽攻擊的傳感器網(wǎng)絡(luò)空間范圍聚集查詢處理算法,該算法可分為3個(gè)階段:
(1)查詢發(fā)起節(jié)點(diǎn)(Sink節(jié)點(diǎn))利用位置路由協(xié)議[18]將查詢消息發(fā)送至查詢區(qū)域。
(2)查詢區(qū)域內(nèi)采用分簇的方法,簇內(nèi)每個(gè)節(jié)點(diǎn)獲得的感知數(shù)據(jù)皆為其遍歷過的所有節(jié)點(diǎn)的感知數(shù)據(jù)的和,所以攻擊者無法獲得節(jié)點(diǎn)的原始感知數(shù)據(jù)。
(3)感知消息聚集后,利用位置路由協(xié)議發(fā)送回Sink節(jié)點(diǎn),當(dāng)Sink節(jié)點(diǎn)接收到聚集數(shù)據(jù)后,得到的便是聚集區(qū)域的感知數(shù)據(jù)之和。
為了不失一般性,如圖1所示基于一般的網(wǎng)絡(luò)分布情況,采用PCPDA收集查詢區(qū)域的感知數(shù)據(jù)。以Sink節(jié)點(diǎn)為查詢起始節(jié)點(diǎn),用Ci(i=0,1,2…)表示簇頭節(jié)點(diǎn),用a,b,c…表示數(shù)據(jù)節(jié)點(diǎn),其收集過程如下所示:
(1)Sink節(jié)點(diǎn)發(fā)出查詢消息和隨機(jī)數(shù)num,利用位置路由協(xié)議將查詢消息和num發(fā)送至查詢區(qū)域的一個(gè)數(shù)據(jù)節(jié)點(diǎn)a。
(2)a收到查詢消息和num后,根據(jù)其維護(hù)的鄰居信息選取第1個(gè)網(wǎng)格內(nèi)的簇頭節(jié)點(diǎn)C0,用于收集該簇內(nèi)數(shù)據(jù)節(jié)點(diǎn)的感知數(shù)據(jù)。
定義1NA(m)為節(jié)點(diǎn)m的后繼子區(qū)域(借助網(wǎng)格描述),NC(m)為NA(m)后繼子區(qū)域的簇頭節(jié)點(diǎn),NA(m)中除了NC(m)其余為數(shù)據(jù)節(jié)點(diǎn)。后繼子區(qū)域需滿足如下約束:后繼子區(qū)域的所有節(jié)點(diǎn)均是節(jié)點(diǎn)m的鄰居節(jié)點(diǎn),子區(qū)域內(nèi)所有節(jié)點(diǎn)能夠互相通信。
(3)數(shù)據(jù)節(jié)點(diǎn)a將查詢消息發(fā)送至C0,由于無線廣播特性,網(wǎng)格內(nèi)所有節(jié)點(diǎn)均能收到查詢消息。網(wǎng)格中所有節(jié)點(diǎn)都收到查詢信息后,按照路線行進(jìn)方向排序數(shù)據(jù)節(jié)點(diǎn),數(shù)據(jù)節(jié)點(diǎn)的聚集方式采用依次疊加的方法。如圖1所示第1個(gè)網(wǎng)格內(nèi),節(jié)點(diǎn)a將感知數(shù)據(jù)與num相加后的結(jié)果Da發(fā)送給節(jié)點(diǎn)b。Da到達(dá)節(jié)點(diǎn)b后,與感知數(shù)據(jù)Db相加,然后將相加后的結(jié)果發(fā)送給節(jié)點(diǎn)c,以此類推,直至將子區(qū)域內(nèi)所有數(shù)據(jù)節(jié)點(diǎn)的聚集結(jié)果發(fā)送給簇頭節(jié)點(diǎn)。
(4)簇頭節(jié)點(diǎn)C0收集完子區(qū)域的感知數(shù)據(jù)后,將會(huì)計(jì)算下1個(gè)簇頭節(jié)點(diǎn)C1和子區(qū)域,將查詢消息發(fā)送至子區(qū)域NA(C0),將子區(qū)域NA(a)的聚集結(jié)果發(fā)送至NA(C0)中的第1個(gè)節(jié)點(diǎn)m(按照路線行進(jìn)方向排序后)。節(jié)點(diǎn)m與NA(C0)查詢結(jié)果融合后,與步驟(3)類似,簇頭節(jié)點(diǎn)C1將收集NA(C0)區(qū)域內(nèi)所有數(shù)據(jù)節(jié)點(diǎn)的感知數(shù)據(jù)。C1收集完NA(C0)區(qū)域內(nèi)所有節(jié)點(diǎn)感知數(shù)據(jù)后,將會(huì)繼續(xù)計(jì)算下1個(gè)簇頭節(jié)點(diǎn)和子區(qū)域。
(5)按照步驟(3)繼續(xù)收集區(qū)域未遍歷節(jié)點(diǎn)的感知數(shù)據(jù),直至遍歷完查詢區(qū)域內(nèi)所有節(jié)點(diǎn),獲得整個(gè)查詢區(qū)域的查詢結(jié)果。
(6)查詢區(qū)域內(nèi)的最后1個(gè)簇頭節(jié)點(diǎn)Cn利用位置路由協(xié)議將查詢結(jié)果發(fā)送回Sink節(jié)點(diǎn)。
Figure 1 Execution procedure of the PCPDA algorithm圖1 PCPDA算法執(zhí)行示意圖
窗體查詢區(qū)域內(nèi)的傳感器網(wǎng)絡(luò)表示為SN={C1,C2,…,Cn},假設(shè)節(jié)點(diǎn)的通信半徑用R來表示。
(1)基于網(wǎng)格(子區(qū)域)查詢結(jié)果收集策略。
為了能夠遍歷整個(gè)查詢區(qū)域,采用劃分網(wǎng)格(子區(qū)域)的思想,將整個(gè)區(qū)域劃分成多個(gè)網(wǎng)格(子區(qū)域),依靠網(wǎng)格的依次遞進(jìn),使得查詢消息發(fā)送至整個(gè)查詢區(qū)域中的所有節(jié)點(diǎn),借此來收集部分區(qū)域的感知數(shù)據(jù)。由于無線通信的廣播特性,網(wǎng)格中的所有節(jié)點(diǎn)均能收到消息。采用按序聚集感知數(shù)據(jù)策略,將當(dāng)前網(wǎng)格中所有的節(jié)點(diǎn)按照當(dāng)前前進(jìn)方向矢量排序。
(2)網(wǎng)格大小。
當(dāng)查詢消息傳至當(dāng)前網(wǎng)格的最后1個(gè)節(jié)點(diǎn),需確定下1個(gè)網(wǎng)格時(shí),約定下1個(gè)網(wǎng)格的所有節(jié)點(diǎn)需滿足在當(dāng)前節(jié)點(diǎn)的通信范圍內(nèi)。由于無線通信的廣播特性,網(wǎng)格中節(jié)點(diǎn)接收到查詢消息后,按照排序后的順序依次聚集節(jié)點(diǎn)的感知數(shù)據(jù)。
(3)簇頭的選取。
由算法執(zhí)行過程可知,簇頭節(jié)點(diǎn)Ci會(huì)將已遍歷過節(jié)點(diǎn)的聚集結(jié)果和查詢消息發(fā)送給Ci+1,因此簇頭的選取是算法執(zhí)行過程的關(guān)鍵一步。由算法執(zhí)行的約束條件可知,NA(Ci)中所有數(shù)據(jù)節(jié)點(diǎn)需在Ci通信范圍內(nèi),所以NA(Ci)的數(shù)據(jù)節(jié)點(diǎn)均在Ci維護(hù)的鄰居信息中,將NA(Ci)中的數(shù)據(jù)節(jié)點(diǎn)根據(jù)路線行進(jìn)方向進(jìn)行排序,選取排序后的末尾節(jié)點(diǎn)作為Ci+1。
(4)如何處理空洞。
如圖2所示,查詢節(jié)點(diǎn)收集完網(wǎng)格EFGH中數(shù)據(jù)節(jié)點(diǎn)的感知數(shù)據(jù)后,需將查詢消息和部分查詢結(jié)果發(fā)送至下1個(gè)查詢節(jié)點(diǎn)。由于網(wǎng)格EFGH下方的區(qū)域GHKI不存在節(jié)點(diǎn)的鄰居節(jié)點(diǎn),區(qū)域GHKI成為空洞區(qū)域,導(dǎo)致查詢處理過程中斷。為了避免該問題,利用位置路由協(xié)議繞過該空洞區(qū)域,即節(jié)點(diǎn)e以矩形區(qū)域IKLM的中心為目的位置(其中KM之間的距離為R),利用位置路由協(xié)議將查詢消息和部分查詢結(jié)果發(fā)送至該矩形區(qū)域中的1個(gè)節(jié)點(diǎn)。圖2中,節(jié)點(diǎn)e通過f、g到達(dá)區(qū)域IMLK中的節(jié)點(diǎn),然后從該節(jié)點(diǎn)開始繼續(xù)后續(xù)的查詢處理過程。若矩形區(qū)域IMLK中不存在節(jié)點(diǎn)或位置路由協(xié)議無法將查詢消息和部分查詢結(jié)果發(fā)送至區(qū)域IMLK中的節(jié)點(diǎn),則采用上述方法類似的思想,以IMLK下方的區(qū)域LMNQ的中心為目的位置(其中LN之間的距離為R),利用位置路由協(xié)議將消息發(fā)送至該區(qū)域中的1個(gè)節(jié)點(diǎn)。
Figure 2 Bypassing the void region圖2 繞過路由空洞
本節(jié)從理論上對PCPDA、SMART和PECDA進(jìn)行能耗分析。為了表述方便,對下文要用到的符號及其含義進(jìn)行說明,如表1所示。
Table 1 Meaning table of variables表1 基本符號及其含義
采用PCPDA收集查詢區(qū)域SRS中的所有節(jié)點(diǎn)的感知數(shù)據(jù)。整個(gè)查詢過程的能耗可分為2個(gè)部分:(1)查詢消息的發(fā)送,即子區(qū)域SRi中的簇頭節(jié)點(diǎn)SRCi將查詢消息廣播至子區(qū)域SRi+1內(nèi)所有節(jié)點(diǎn)(其中i為1~n-1),用Equery表示;(2)感知數(shù)據(jù)聚集階段的能耗,用Edata表示。
SMART與PECDA的能耗主要包括數(shù)據(jù)分片傳輸安全通道的建立、查詢消息的分發(fā)和感知數(shù)據(jù)聚集3階段。這里主要針對SMART和PECDA中查詢消息發(fā)送與數(shù)據(jù)的聚集過程與PCPDA進(jìn)行對比分析。假設(shè)SMART與PECDA中葉子節(jié)點(diǎn)所占比例為p,同PCPDA用Equery表示查詢階段消耗的能量,Edata表示數(shù)據(jù)聚集階段消耗的能量。
為了便于分析,用E(PCPDA)、E(SMART)和E(PECDA)表示3種算法總的能耗,Equery(PCPDA)、Equery(SMART)和Equery(PECDA)分別表示3種算法查詢階段的能耗,Edata(PCPDA)、Edata(SMART)和Edata(PECDA)分別表示3種算法聚集階段的能耗。
定理1E(PCPDA) 證明 PCPDA中: (1) Dist(SRCi-1,n)≤R,?n∈Num(SRi),1≤i≤n (2) Dist(n,SRCi)≤R,?n∈Num(SRi),1≤i≤n (3) 式(1)~式(3)為子區(qū)域的約束條件。 E(PCPDA)=Equery+Edata (4) 其中, Equery=Sq*E*n (5) (6) SMART中: E(SMART)=Equery+Edata (7) 其中, Equery=Sq*E*N (8) (9) PECDA中: E(PECDA)=Equery+Edata (10) 其中, Equery=Sq*E*N (11) (12) 由式(5)、式(8)、式(11)可推出: Equery(PCPDA) (13) 由式(6)、式(9)、式(12)可推出: Edata(PCPDA) (14) 由式(13)、式(14)可得結(jié)論。 □ 文獻(xiàn)[4]給出了密鑰分配的2個(gè)重要性能:任意2個(gè)鄰居之間至少有1個(gè)相同密鑰的概率為Pconnect,第3方節(jié)點(diǎn)擁有相同密鑰的概率為Poverhear: (15) Poverhear=k/K (16) 本節(jié)通過仿真對算法進(jìn)行分析,在文獻(xiàn)[19]的仿真器上實(shí)現(xiàn)了PCPDA與現(xiàn)有算法里的SMART和PECDA,其中硬件環(huán)境為2.6 GHz CPU,8 GB內(nèi)存,軟件環(huán)境為Ubuntu操作系統(tǒng)、eclipse開發(fā)環(huán)境。傳感器節(jié)點(diǎn)分別以均勻分布和非均勻分布的方式部署在矩形監(jiān)視區(qū)域中。 仿真參數(shù)選擇如下:根據(jù)文獻(xiàn)[20],無線通信發(fā)送和接收1 byte的能量消耗公式為:Et=α+γ*dm,Er=β,其中,α和β為捕獲通信電子消耗的能量,γ為功率放大器消耗的能量,m為路徑損耗指數(shù),d為傳輸距離。采用文獻(xiàn)[21]中的參數(shù):γ=10 pJ/bit/m2,α=45 nJ/bit,β=135 nJ/bit,m=2。其他參數(shù)如表2所示。 Table 2 Simulation parameters表2 仿真參數(shù) 時(shí)間延時(shí)是性能評估的一個(gè)重要指標(biāo)?;贙IPDA(K-Indistinguishable Privacy-preserving Data Aggregation)[22],比較了現(xiàn)有算法和PCPDA的時(shí)鐘周期數(shù)。由圖3可知,現(xiàn)有算法的時(shí)間延時(shí)高于PCPDA的。因?yàn)镾MART中需要對查詢區(qū)域內(nèi)所有節(jié)點(diǎn)進(jìn)行分片、混合和聚集,PECDA僅需對葉子節(jié)點(diǎn)進(jìn)行分片、混合和聚集,相比SMART,PECDA一定程度上降低了時(shí)間開銷。PCPDA查詢過程中由于無需對節(jié)點(diǎn)感知數(shù)據(jù)分片后再聚集,縮短了查詢過程中的時(shí)間延時(shí),提升了效率。 Figure 3 Influence of the number of network nodes on the time delay圖3 網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)對時(shí)間延時(shí)的影響 Figure 4 Influence of the number of network nodes on communication overhead圖4 網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)對通信開銷的影響 圖5和圖6分別展示了網(wǎng)絡(luò)節(jié)點(diǎn)密度、查詢區(qū)域大小條件下能量的損耗。 Figure 5 Influence of the number of network nodes on energy loss圖5 網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)對能量損耗的影響 Figure 6 Influence of query region size on energy loss圖6 查詢區(qū)域大小對能量損耗的影響 可見,算法PCPDA的能耗小于SMART和PECDA的。主要差異來源于SMART和PECDA中需要建立安全通道,對節(jié)點(diǎn)感知數(shù)據(jù)進(jìn)行分片分發(fā)。隨著查詢區(qū)域變大,查詢區(qū)域內(nèi)的節(jié)點(diǎn)數(shù)變大,PCPDA、SMART、PECDA因分發(fā)查詢消息和聚集感知數(shù)據(jù),因此3種算法的總能耗隨著查詢區(qū)域的增大而變大。圖7和圖8分別展示了感知數(shù)據(jù)大小、查詢消息大小對3種算法能耗的影響。由式(13)、式(14)可知,算法PCPDA在查詢階段、聚集階段的能耗皆小于SMART和PECDA的。由圖7和圖8可知,3種算法的能耗隨著查詢消息的增大而增大,隨著感知數(shù)據(jù)的增大而增大。 Figure 7 Influence of the sensing data size on energy loss圖7 感知數(shù)據(jù)大小對能耗的影響 Figure 8 Influence of the query message size on energy loss圖8 查詢消息大小對能量損耗的影響 另外,由于SMART和PECDA依賴預(yù)先構(gòu)造好的拓?fù)錁?,拓?fù)浣Y(jié)構(gòu)的變化對其能耗的影響比較大。由圖9可知,在不同的拓?fù)浣Y(jié)構(gòu)下,SMART和PECDA在能耗方面有著不同的表現(xiàn),而PCPDA在不同拓?fù)湎碌哪芎膭t相對穩(wěn)定。 Figure 9 Influence of different network topologies on energy loss圖9 不同網(wǎng)絡(luò)拓?fù)鋵δ芰繐p耗的影響 現(xiàn)有傳感器網(wǎng)絡(luò)聚集查詢隱私保護(hù)算法通過數(shù)據(jù)加密來保護(hù)節(jié)點(diǎn)感知數(shù)據(jù)的隱私性,且全網(wǎng)絡(luò)中所有節(jié)點(diǎn)參與查詢處理。數(shù)據(jù)的加解密操作增大了節(jié)點(diǎn)計(jì)算能耗,且在很多情況下,用戶只對傳感器網(wǎng)絡(luò)中部分區(qū)域的聚集結(jié)果感興趣,此時(shí)如果還采用全網(wǎng)絡(luò)隱私保護(hù)聚集查詢方法,必然大大增加節(jié)點(diǎn)的資源開銷。針對現(xiàn)有算法的一些問題,本文提出一種抗竊聽攻擊的傳感器網(wǎng)絡(luò)空間范圍聚集查詢處理算法,該算法在未采用任何數(shù)據(jù)加密情況下,不僅完成了節(jié)點(diǎn)數(shù)據(jù)的聚集查詢,而且查詢過程中保證了感知數(shù)據(jù)的隱私性。由于聚集過程中無任何加解密操作,節(jié)省了節(jié)點(diǎn)的能量,加快了聚集效率。仿真結(jié)果和理論分析表明,PCPDA在能量損耗和隱私性保護(hù)方面均優(yōu)于現(xiàn)有的一些算法。3.4 隱私分析
4 仿真分析
4.1 時(shí)間延時(shí)
4.2 通信開銷和能量消耗
5 結(jié)束語