本發(fā)明涉及無(wú)線傳感器網(wǎng)絡(luò)安全技術(shù)領(lǐng)域,具體是一種面向wsns(wirelesssensornetworks,無(wú)線傳感器網(wǎng)絡(luò))租用環(huán)境的隱私保護(hù)max/min查詢方法。
背景技術(shù):
目前,無(wú)線傳感器網(wǎng)絡(luò)已被廣泛用于諸如醫(yī)療衛(wèi)生、環(huán)境監(jiān)測(cè)、智能交通、國(guó)防軍事等各種重要領(lǐng)域。隨著無(wú)線傳感網(wǎng)的廣泛應(yīng)用,wsns租用服務(wù)也顯現(xiàn)出一定的應(yīng)用推廣價(jià)值,租用型wsns中的數(shù)據(jù)查詢服務(wù)是一種具有特殊要求的無(wú)線傳感器網(wǎng)絡(luò)查詢。在租用型wsns中,網(wǎng)絡(luò)內(nèi)感知節(jié)點(diǎn)采集或加工的數(shù)據(jù)屬于網(wǎng)絡(luò)擁有者的隱私信息,而查詢請(qǐng)求結(jié)果屬于網(wǎng)絡(luò)公開(kāi)信息,用戶向網(wǎng)絡(luò)擁有者租用網(wǎng)絡(luò)數(shù)據(jù)查詢功能時(shí)應(yīng)僅能獲取請(qǐng)求結(jié)果的目標(biāo)數(shù)據(jù)而無(wú)法得到網(wǎng)絡(luò)中任何感知節(jié)點(diǎn)的任何信息。
如圖1所示,面向wsns租用服務(wù)的傳感器網(wǎng)絡(luò)由外部用戶和若干感知節(jié)點(diǎn)組成,感知節(jié)點(diǎn)又分為一個(gè)代理節(jié)點(diǎn)和其他普通節(jié)點(diǎn)。由于資源受限,各感知節(jié)點(diǎn)只能與其通信范圍內(nèi)的鄰居節(jié)點(diǎn)進(jìn)行通信交互,從而構(gòu)成多跳通信網(wǎng)絡(luò)。代理節(jié)點(diǎn)作為網(wǎng)絡(luò)與用戶溝通的橋梁,是整個(gè)網(wǎng)絡(luò)的匯聚節(jié)點(diǎn),網(wǎng)絡(luò)中的其他感知節(jié)點(diǎn)按照tag協(xié)議構(gòu)建與代理節(jié)點(diǎn)之間的樹(shù)形路由拓?fù)?。在?zhí)行查詢處理時(shí),感知節(jié)點(diǎn)按既定協(xié)議將采集的數(shù)據(jù)進(jìn)行處理,并逐跳上傳匯總至代理節(jié)點(diǎn),最終由代理節(jié)點(diǎn)進(jìn)行查詢結(jié)果的計(jì)算,并返回給外部用戶。
在租用型wsns中,任何感知節(jié)點(diǎn)都無(wú)法獲得其他感知節(jié)點(diǎn)采集的任何信息,因?yàn)樽庥眯蛍sns是交由外部用戶使用,任何節(jié)點(diǎn)都有被攻擊的可能。被攻破的感知節(jié)點(diǎn)不僅會(huì)泄露其自身采集的感知數(shù)據(jù),還會(huì)泄露其轉(zhuǎn)發(fā)的其他節(jié)點(diǎn)的數(shù)據(jù)信息。此外,由于網(wǎng)絡(luò)中的感知節(jié)點(diǎn)之間需要協(xié)同計(jì)算,如果存在多個(gè)被俘獲感知節(jié)點(diǎn)共謀時(shí),有可能導(dǎo)致網(wǎng)絡(luò)中其他清白節(jié)點(diǎn)的感知數(shù)據(jù)全部泄露。因此,在wsns租用服務(wù)中,實(shí)現(xiàn)具有隱私保護(hù)的max/min查詢技術(shù)的挑戰(zhàn)在于:(1)如何使代理節(jié)點(diǎn)在無(wú)法獲取其他感知節(jié)點(diǎn)的數(shù)據(jù)明文數(shù)值的情況下,計(jì)算得出查詢結(jié)果;(2)如何使網(wǎng)絡(luò)中任一感知節(jié)點(diǎn)都無(wú)法獲得其他任意感知節(jié)點(diǎn)的感知數(shù)據(jù)。
現(xiàn)有的與傳感器網(wǎng)絡(luò)中隱私保護(hù)max/min查詢方法密切相關(guān)的專利或文獻(xiàn)主要有:
專利“一種wsn中基于top-k查詢的數(shù)據(jù)隱私保護(hù)和完整性驗(yàn)證方法(申請(qǐng)日期:2015.03.17,公開(kāi)號(hào):cn104768149a)”、“面向兩層傳感器網(wǎng)絡(luò)的可驗(yàn)證top-k查詢處理方法(申請(qǐng)日期:2014.10.09,公開(kāi)號(hào):cn104768149a)”、“基于無(wú)線傳感器網(wǎng)絡(luò)中復(fù)合型數(shù)據(jù)的top-k查詢方法及系統(tǒng)”(申請(qǐng)日期:2013.11.13,公開(kāi)號(hào):cn103617197a)、“在無(wú)線傳感器網(wǎng)絡(luò)中分布式top-k查詢方法”(申請(qǐng)日期:2013.7.19,公開(kāi)號(hào):cn103369570a)、“一種無(wú)線傳感器網(wǎng)絡(luò)中連續(xù)的top-k區(qū)域查詢方法”(申請(qǐng)日期:2011.1.24,公開(kāi)號(hào):cn102143547a)和“secureoutsourcedaggregationwithone-waychains”(申請(qǐng)日期:2010.11.18,公開(kāi)號(hào):us20100290617a1),這幾項(xiàng)專利都是面向傳感器網(wǎng)絡(luò)環(huán)境中的top-k查詢。首先,若想用top-k查詢方法實(shí)現(xiàn)max/min查詢,需將top-k查詢退化為top-1查詢,這樣做將帶來(lái)大量不必要的數(shù)據(jù)通信。因此,現(xiàn)有的這些安全top-k查詢方法并不適用于解決隱私保護(hù)max/min查詢。其次,現(xiàn)有的top-k查詢都并非建立在可租用型wsns上,與本發(fā)明的網(wǎng)絡(luò)模型存在本質(zhì)區(qū)別。
論文“samanthulabk,weij,madrias.aprobabilisticencryptionbasedmin/maxcomputationinwirelesssensornetworks.14thinternationalconferenceonmobiledatamanagement,2013:77-86”,“yaoy,mal,liuj.privacy-preservingmax/minaggregationinwirelesssensornetworks.advancesininformationsciencesandservicesciences,2012,4(6):272-295”和“groatmm,heyw,forrests.kipda:k-indistinguishableprivacy-preservingdataaggregationinwirelesssensornetworks.proceedingsof30thieeeinternationalconferenceoncomputercommunications,2011:2024-2032”雖然都實(shí)現(xiàn)了傳統(tǒng)傳感器網(wǎng)絡(luò)中的隱私保護(hù)max/min查詢,但都不是建立在wsns租用環(huán)境下。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是提供一種用于wsns租用服務(wù)的隱私保護(hù)max/min查詢方法。通過(guò)使用本發(fā)明提出的方法,可以使整個(gè)查詢處理過(guò)程對(duì)于用戶而言具有隱私保護(hù)能力,從而確保查詢過(guò)程中敏感數(shù)據(jù)的隱私安全性。
一種面向wsns租用環(huán)境的隱私保護(hù)max/min查詢方法,所述wsns包括n個(gè)感知節(jié)點(diǎn),構(gòu)成集合s={s1,s2,...,sn},代理節(jié)點(diǎn)sa∈s,對(duì)于任一感知節(jié)點(diǎn)si,si在時(shí)間周期t內(nèi)生成的參與查詢處理的數(shù)據(jù)為di,由β個(gè)二進(jìn)制位構(gòu)成,即di=bi,1bi,2…bi,β,其中bi,j∈{0,1},j∈{1,2,…,β},代理節(jié)點(diǎn)廣播的查詢指令記為q=(s,t,max/min),其中s表示被查詢的感知節(jié)點(diǎn)的集合,這些節(jié)點(diǎn)數(shù)據(jù)采集的覆蓋區(qū)域共同構(gòu)成查詢區(qū)域,t表示查詢的時(shí)間周期,max/min表示所要查詢的最值類型,其特征在于,包括以下步驟:
掩碼分配:為s中各感知節(jié)點(diǎn){s1,s2,…,sn}分配參與第1至β輪查詢處理的本地掩碼{k1,1,k1,2,…,k1,β},{k2,1,k2,2,…,k2,β},…,{kn,1,kn,2,…,kn,β},并為代理節(jié)點(diǎn)sa生成專門用于計(jì)算查詢結(jié)果的第1至β輪的全局掩碼{k1,k2,…,kβ};
查詢處理:用戶通過(guò)sa請(qǐng)求max/min查詢,sa將查詢指令在wsns網(wǎng)絡(luò)內(nèi)廣播,當(dāng)任一感知節(jié)點(diǎn)si接收到所述查詢指令后,開(kāi)始執(zhí)行與sa的β輪協(xié)議交互;sa根據(jù)β輪的交互結(jié)果計(jì)算得出最終的查詢結(jié)果r。
所述查詢處理的具體過(guò)程為:
步驟1),sa在網(wǎng)絡(luò)內(nèi)廣播查詢指令q=(t,max)。
步驟2),si根據(jù)接收到指令,進(jìn)行如下處理:
步驟2.1),當(dāng)si收到查詢啟動(dòng)指令q時(shí),si首先設(shè)置候選標(biāo)志flagi=1,并根據(jù)感知數(shù)據(jù)的第一位計(jì)算其對(duì)應(yīng)的第一輪原始識(shí)別碼,然后si計(jì)算第一輪的安全識(shí)別碼
步驟2.2),當(dāng)si接收到sa廣播的其在第j-1輪(j∈{2,…,β})的反饋指令碼時(shí),根據(jù)候選標(biāo)志可分為兩種情況:
①當(dāng)flagi=1時(shí):如果反饋指令碼為1且感知數(shù)據(jù)的第j-1位為0,則設(shè)置flagi=0,第j輪的原始識(shí)別碼為{0}w;反之,則根據(jù)感知數(shù)據(jù)的第j位計(jì)算原始識(shí)別碼;
②當(dāng)flagi=0時(shí):設(shè)置第j輪的原始識(shí)別碼為{0}w;
然后,si計(jì)算第j輪需要上傳的安全識(shí)別碼
步驟3),當(dāng)sa收到其所有孩子節(jié)點(diǎn)發(fā)來(lái)的安全識(shí)別碼時(shí),sa首先判斷當(dāng)前交互的輪數(shù),假設(shè)當(dāng)前為第j輪,然后sa計(jì)算第j輪的安全識(shí)別碼
步驟4),sa根據(jù)
步驟4.1),若j<β,則將rj在網(wǎng)絡(luò)內(nèi)廣播,啟動(dòng)第j+1輪協(xié)議交互過(guò)程,轉(zhuǎn)步驟2.2);
步驟4.2),若j=β,則本輪即為最后一輪協(xié)議交互,此時(shí)sa即可獲得最終的查詢結(jié)果r=r1r2…rβ。
本發(fā)明的有益效果:
一、安全性分析
本發(fā)明基于網(wǎng)絡(luò)中的節(jié)點(diǎn)都遵循半誠(chéng)實(shí)威脅模型的前提,則在數(shù)據(jù)查詢過(guò)程中,能夠具有以下兩個(gè)安全目標(biāo):
1)網(wǎng)絡(luò)中的任何感知節(jié)點(diǎn),無(wú)法獲得其他感知節(jié)點(diǎn)的隱私數(shù)據(jù)信息:在max/min查詢處理過(guò)程中,每一輪感知節(jié)點(diǎn)的本地掩碼和原始識(shí)別碼都具有隨機(jī)性,而每輪感知節(jié)點(diǎn)上傳的安全識(shí)別碼至少需要經(jīng)過(guò)本地掩碼和原始識(shí)別碼的異或而成,因此,根據(jù)異或的特點(diǎn),任何節(jié)點(diǎn)無(wú)法在僅得知異或結(jié)果的前提下逆向計(jì)算出參與異或的各方數(shù)據(jù)內(nèi)容,故而任何感知節(jié)點(diǎn)都無(wú)法獲得其他感知節(jié)點(diǎn)的數(shù)據(jù)信息。
2)用戶僅能獲得最終請(qǐng)求的目標(biāo)結(jié)果,不能獲得網(wǎng)絡(luò)中任何其他感知節(jié)點(diǎn)的隱私信息:由于外部用戶并不可信,在提供租用服務(wù)時(shí)應(yīng)避免用戶窺探網(wǎng)絡(luò)中的隱私信息。本發(fā)明利用代理節(jié)點(diǎn)作為用戶與網(wǎng)絡(luò)溝通的橋梁,代理節(jié)點(diǎn)負(fù)責(zé)接收用戶的查詢請(qǐng)求并向用戶反饋查詢結(jié)果。由于代理節(jié)點(diǎn)僅向用戶反饋請(qǐng)求的目標(biāo)數(shù)據(jù),因此用戶無(wú)法獲得網(wǎng)絡(luò)中的其他隱私信息。若用戶攻擊網(wǎng)絡(luò)中的感知節(jié)點(diǎn),由于網(wǎng)絡(luò)中的任何感知節(jié)點(diǎn)無(wú)法獲得其他感知節(jié)點(diǎn)的隱私數(shù)據(jù)信息,因此,用戶仍無(wú)法獲得任何未被俘獲的節(jié)點(diǎn)的任何隱私信息。
二、通信代價(jià)分析
分析整個(gè)網(wǎng)絡(luò)的通信代價(jià)組成:完成整個(gè)查詢處理,對(duì)于sa而言,需要廣播1次查詢指令,廣播β-1次反饋指令,上傳一次查詢結(jié)果至外部用戶;對(duì)于其他任意感知節(jié)點(diǎn)而言,需要廣播1次查詢指令,廣播β-1次反饋指令,上傳β-1次安全識(shí)別碼至各自的父節(jié)點(diǎn)。在本發(fā)明中,感知節(jié)點(diǎn)按照樹(shù)形路由逐跳處理數(shù)據(jù),所有感知節(jié)點(diǎn)的通信代價(jià)相等,不存在能量瓶頸問(wèn)題。
附圖說(shuō)明
圖1為可租用wsns的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)示意圖;
圖2為實(shí)施例面向wsns租用環(huán)境的隱私保護(hù)max/min查詢方法流程圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
wsns網(wǎng)絡(luò)拓?fù)鋱D如圖1所示,包括用戶、代理節(jié)點(diǎn)和其他感知節(jié)點(diǎn)。假設(shè)網(wǎng)絡(luò)擁有者所部署的網(wǎng)絡(luò)包含n個(gè)感知節(jié)點(diǎn),構(gòu)成集合s={s1,s2,...,sn},網(wǎng)絡(luò)中的代理節(jié)點(diǎn)sa∈s,t為時(shí)間周期標(biāo)簽。對(duì)于任一感知節(jié)點(diǎn)si,si在時(shí)間周期t內(nèi)生成的參與查詢處理的數(shù)據(jù)為di,設(shè)其由β個(gè)二進(jìn)制位構(gòu)成,即di=bi,1bi,2…bi,β,其中bi,j∈{0,1},j∈{1,2,…,β}。代理節(jié)點(diǎn)廣播的查詢指令記為q=(s,t,max/min),其中s表示被查詢的感知節(jié)點(diǎn)的集合,這些節(jié)點(diǎn)數(shù)據(jù)采集的覆蓋區(qū)域共同構(gòu)成查詢區(qū)域,t表示查詢的時(shí)間周期,max/min表示所要查詢的最值類型。例如({s1,s2,s3,…,s10},t,max)表示查詢感知節(jié)點(diǎn)s1~s10在t周期內(nèi)獲得的最大值。
本實(shí)施例的核心是掩碼分配算法和數(shù)據(jù)查詢處理協(xié)議,具體內(nèi)容如下。
i.掩碼分配算法
步驟1),每一輪都利用隨機(jī)數(shù)發(fā)生器生成n個(gè)隨機(jī)碼,存儲(chǔ)到集合ks中,一共生成β輪。
步驟2),依次為每個(gè)感知節(jié)點(diǎn)分配每一輪的本地掩碼,為si分配第j輪本地掩碼ki,j時(shí),先從ks中隨機(jī)選一個(gè)掩碼,賦值給ki,j,再將其從ks刪除。
步驟3),為sa計(jì)算每一輪的全局掩碼。
ii.查詢處理協(xié)議
實(shí)現(xiàn)針對(duì)max/min查詢處理的隱私保護(hù)的主要思想如下:外部用戶通過(guò)sa請(qǐng)求max/min查詢,sa將查詢指令在網(wǎng)絡(luò)內(nèi)廣播,當(dāng)任一感知節(jié)點(diǎn)si接收到指令后,開(kāi)始執(zhí)行與sa的β輪協(xié)議交互。sa根據(jù)β輪的交互結(jié)果計(jì)算得出最終的查詢結(jié)果r。具體協(xié)議步驟如下:
第一階段:
步驟1),sa在網(wǎng)絡(luò)內(nèi)廣播查詢指令q=(t,max)。
步驟2),當(dāng)si收到查詢啟動(dòng)指令q時(shí),執(zhí)行步驟如下:
步驟2.1),si設(shè)置候選標(biāo)志flagi=1,并計(jì)算其對(duì)應(yīng)的第1輪原始識(shí)別碼di,1:若bi,1=0,則di,1={0}w;若bi,1=1,則di,1={0,1}w。
步驟2.2),si根據(jù)自身節(jié)點(diǎn)類型,計(jì)算其在第1輪的安全識(shí)別碼
步驟2.3),si將
步驟3),sa計(jì)算第一輪的安全識(shí)別碼,設(shè)其孩子節(jié)點(diǎn)為
步驟4),sa根據(jù)第一輪的安全識(shí)別碼得出第二輪的反饋指令碼r2:若
第二階段:
步驟1),sa在網(wǎng)絡(luò)內(nèi)廣播第j-1輪反饋指令碼,啟動(dòng)第j輪協(xié)議交互過(guò)程。
步驟2),當(dāng)si接收到sa廣播的其在第j-1輪(j∈{2,…,β})的反饋指令碼rj-1時(shí),則執(zhí)行如下步驟:
步驟2.1),si首先判斷flagi:當(dāng)flagi=1時(shí),如果rj-1=1∧bi,j-1=0成立,則設(shè)置flagi=0,di,j={0}w,如果不成立,則bi,j=0時(shí)設(shè)置di,j={0}w,bi,j=1時(shí)設(shè)置di,j={0,1}w;當(dāng)flagi=0時(shí),設(shè)置di,j={0}w。
步驟2.2),si根據(jù)自身的節(jié)點(diǎn)類型,計(jì)算其在第j輪的安全識(shí)別碼
步驟3),sa計(jì)算第j輪的安全識(shí)別碼
步驟4),sa根據(jù)
步驟5),sa根據(jù)當(dāng)前的交互論數(shù)j,執(zhí)行如下步驟:
步驟5.1),若j<β,則將rj在網(wǎng)絡(luò)內(nèi)廣播,啟動(dòng)第j+1輪協(xié)議交互過(guò)程,轉(zhuǎn)步驟1。
步驟5.2),若j=β,則本輪即為最后一輪協(xié)議交互,此時(shí)sa即可獲得最終的查詢結(jié)果r=r1r2…rβ。
本發(fā)明安全性高,能有效確保感知數(shù)據(jù)的隱私安全性;在查詢處理執(zhí)行的過(guò)程中通信代價(jià)消耗低,有利于提高網(wǎng)絡(luò)資源的利用率以及延長(zhǎng)網(wǎng)絡(luò)的生命周期。