劉 凱,韓益亮,郭凱陽,吳日銘
(1.武警工程大學(xué)密碼工程學(xué)院,西安 710086;2.武警部隊(duì)密碼與信息安全保密重點(diǎn)實(shí)驗(yàn)室,西安 710086)
移動(dòng)群智感知(mobile crowd sensing,MCS)作為一種新興的互聯(lián)網(wǎng)感知范式,融合了眾包思想與移動(dòng)感知技術(shù),已經(jīng)成為了一種新型的信息服務(wù)模式和信息傳播方式[1]。尤其是隨著配備有傳感設(shè)備的智能手機(jī)的普及,使得MCS 迅速走進(jìn)大眾的視野,大量具備感知能力的移動(dòng)智能終端通過協(xié)同合作完成某一感知任務(wù),為用戶提供個(gè)性化服務(wù)[2]。與傳統(tǒng)的傳感器網(wǎng)絡(luò)相比,MCS 不需要專門安裝傳感設(shè)備,不僅節(jié)省了大量的人力物力,而且利用移動(dòng)用戶的動(dòng)態(tài)性與時(shí)效性進(jìn)行任務(wù)感知更加契合大數(shù)據(jù)的時(shí)代特點(diǎn)[3]。目前,MCS 已經(jīng)在交通、醫(yī)療、工業(yè)、社區(qū)服務(wù)等方面有了廣泛應(yīng)用[4-7]。近年來,基于信息系統(tǒng)的體系作戰(zhàn)發(fā)展迅速,信息化條件下的新型作戰(zhàn)力量不斷涌現(xiàn)[8],MCS 平臺(tái)能夠幫助信息作戰(zhàn)系統(tǒng)提高指揮控制效率,充分發(fā)揮信息系統(tǒng)互聯(lián)、互通、互操作的融合功能。
目前在MCS 方面的研究主要集中在激勵(lì)機(jī)制、任務(wù)分發(fā)及位置隱私保護(hù)等方面,尤其是關(guān)于位置隱私的保護(hù)問題已經(jīng)成為學(xué)者關(guān)注的重點(diǎn)。
文獻(xiàn)[9]在移動(dòng)群智感知的基礎(chǔ)上提出了稀疏移動(dòng)群智感知的概念,并利用本地化差分隱私機(jī)制保護(hù)用戶的位置隱私,稀疏MCS 平臺(tái)根據(jù)用戶提交的數(shù)據(jù)推理未知區(qū)域的數(shù)據(jù)。文獻(xiàn)[10]提出并評(píng)估了一種新的基于嵌入和聚類的時(shí)空模糊機(jī)制,并引出了概率k-匿名的概念。文獻(xiàn)[11]提出了一種位置隱私保護(hù)的任務(wù)分配框架與地理模糊機(jī)制,以保護(hù)在任務(wù)分配過程中用戶的位置隱私安全。文獻(xiàn)[12]設(shè)計(jì)了一種與參與者密度無關(guān)的聚合統(tǒng)計(jì)方案來保護(hù)用戶的位置隱私,首先利用多假名機(jī)制來克服低密度參與者帶來的脆弱性問題,而后提出了基于Paillier 密碼系統(tǒng)的方案來應(yīng)對(duì)假名機(jī)制帶來的女巫攻擊問題,最后通過引入一個(gè)實(shí)體的身份服務(wù)器來解決用戶的問責(zé)問題。
現(xiàn)有的方案注重在用戶上傳感知數(shù)據(jù)的過程中對(duì)用戶的位置信息進(jìn)行保護(hù),但對(duì)平臺(tái)下發(fā)的任務(wù)信息的保護(hù),以及引入第三方服務(wù)器可能導(dǎo)致的隱私泄露問題考慮還不夠全面。為了解決這些問題,設(shè)計(jì)了一種基于差分隱私與屬性加密的位置隱私保護(hù)與任務(wù)分配方案,不僅可以在用戶上傳數(shù)據(jù)時(shí)對(duì)用戶的位置信息進(jìn)行保護(hù),在MCS 平臺(tái)下發(fā)任務(wù)時(shí)也能防止任務(wù)點(diǎn)的信息泄露。本文所做主要工作如下:1)考慮人流量密度對(duì)任務(wù)點(diǎn)選擇的影響,減小用戶在位置混淆后產(chǎn)生的距離誤差,提高了混淆位置的可用性。2)結(jié)合位置轉(zhuǎn)移概率矩陣與差分隱私的性質(zhì),保證生成的混淆位置具有相似的位置轉(zhuǎn)移概率,在時(shí)間序列上滿足差分隱私保護(hù)。3)引入第三方服務(wù)器進(jìn)行概率轉(zhuǎn)移矩陣的離線生成,提高了方案的運(yùn)行效率。因?yàn)榈谌椒?wù)器只負(fù)責(zé)位置信息的收集與矩陣的生成工作,不參與用戶的位置信息上傳與MCS 平臺(tái)發(fā)布任務(wù)的過程,避免了第三方服務(wù)器不可信的問題。
屬性加密分為密鑰策略的屬性加密(KP-ABE)和基于密文策略的屬性加密(CP-ABE)。KP-ABE使用屬性來描述加密的數(shù)據(jù),并將策略構(gòu)建到用戶密鑰中;而在CP-ABE 中,屬性被用來描述用戶的憑證,而加密數(shù)據(jù)的一方構(gòu)建解密的策略[13]?;诿芪牟呗缘膶傩约用芊桨敢话惆ㄒ韵? 個(gè)算法:1)Setup 輸入安全參數(shù)后生成公共密鑰Pk 和主密鑰Msk。2)KeyGen 輸入公鑰Pk、主密鑰Msk、屬性集合S,生成私鑰Sk。3)Encrypt 將公鑰Pk、消息M和屬性域的訪問結(jié)構(gòu)A 作為輸入,對(duì)M 進(jìn)行加密,并生成密文CT。4)Decrypt 解密算法以Pk、密文CT、包含訪問策略A 和私鑰Sk 作為輸入。如果屬性集S 滿足訪問結(jié)構(gòu)A,則算法將解密密文并返回消息M。
差分隱私模型的基本思想是在原始數(shù)據(jù)集或者在數(shù)據(jù)集傳輸?shù)倪^程中添加噪聲,來達(dá)到保護(hù)數(shù)據(jù)隱私屬性的目的。差分隱私可大致分為以下兩大類[14]:中心化差分隱私和本地化差分隱私。中心化差分隱私是將用戶數(shù)據(jù)集中在一個(gè)可信的中心服務(wù)器上,通過中心服務(wù)器對(duì)用戶的數(shù)據(jù)集進(jìn)行加噪處理,使其滿足差分的需求,所以數(shù)據(jù)集的安全性很大程度上依賴中心服務(wù)器的可靠性;本地化差分隱私是將數(shù)據(jù)處理的過程交由移動(dòng)端完成,依靠用戶個(gè)人對(duì)敏感信息進(jìn)行保護(hù)。
假設(shè)算法A 是運(yùn)行在服務(wù)器上的算法,在數(shù)據(jù)集D 和D'上的任意輸出結(jié)果O 滿足式(1),則說明算法A 滿足ε-差分隱私:
在城市反恐中,作戰(zhàn)單元需要收集自己附近的環(huán)境信息,并將收集到的信息上傳給前指中心。前指中心需要根據(jù)作戰(zhàn)單元提供的戰(zhàn)場(chǎng)信息合理地分配任務(wù),確保作戰(zhàn)指揮的科學(xué)高效。同時(shí),根據(jù)作戰(zhàn)任務(wù)需求,作戰(zhàn)單元還要將自身信息共享給其他作戰(zhàn)單元,保證信息共享,確保任務(wù)的高效完成。每個(gè)作戰(zhàn)單元在執(zhí)行感知任務(wù)前都需向前指中心提交個(gè)人信息,前指中心擁有所有作戰(zhàn)單元的屬性信息。
如圖1 所示,各作戰(zhàn)單元作為移動(dòng)群智感知任務(wù)的參與者,負(fù)責(zé)收集環(huán)境信息,將信息上傳給前指中心。前指中心作為MCS 的服務(wù)平臺(tái),負(fù)責(zé)將用戶提交的信息進(jìn)行整合處理,同時(shí)根據(jù)用戶所處的位置信息,合理地進(jìn)行任務(wù)分配,并將任務(wù)信息進(jìn)行加密后傳輸給作戰(zhàn)單元。第三方服務(wù)器根據(jù)收集的歷史信息,生成位置混淆模塊,用于隱藏用戶的真實(shí)位置。
圖1 群智感知模型圖Fig.1 Mobile swarm perception model diagram
本文針對(duì)MCS 平臺(tái)中數(shù)據(jù)上傳與任務(wù)下發(fā)時(shí)存在的隱私泄露問題,提出了一種基于差分隱私與屬性加密的位置隱私保護(hù)方案。在生成位置混淆模塊時(shí),本文以一階馬爾可夫鏈生成的位置概率轉(zhuǎn)移矩陣混淆用戶位置,同時(shí)以作戰(zhàn)單元移動(dòng)距離最小為限制條件構(gòu)造混淆函數(shù)。既確?;煜蟮奈恢门c作戰(zhàn)單元的真實(shí)位置之間滿足差分隱私的需求,又保證了任務(wù)分配的合理性。在任務(wù)信息的下發(fā)過程中,創(chuàng)新性地使用屬性加密的方法,以用戶的屬性信息構(gòu)建基于CP-ABE 的任務(wù)加密與解密算法,確保任務(wù)點(diǎn)信息在下發(fā)過程中的安全問題。所提方案主要包括以下4 個(gè)流程:
2.2.1 離線生成位置混淆模塊
MCS 平臺(tái)下發(fā)的任務(wù)一般是由系統(tǒng)內(nèi)的其他用戶發(fā)布的,所以人流量密集,人員活動(dòng)頻繁的地區(qū),成為任務(wù)區(qū)域的概率也更高[15]。假設(shè)某區(qū)域內(nèi)一天的活動(dòng)軌跡點(diǎn)總數(shù)為m,單個(gè)網(wǎng)格內(nèi)的活動(dòng)軌跡點(diǎn)數(shù)為n,該網(wǎng)格內(nèi)一天的人流量密度,該地區(qū)被選為任務(wù)點(diǎn)的概率與成正比。
在服務(wù)中心分配任務(wù)時(shí),為了保證用戶的移動(dòng)距離最短,所以會(huì)優(yōu)先考慮距離用戶位置近的任務(wù)點(diǎn),而在任務(wù)區(qū)域的選擇上,距離用戶上傳位置信息較近的區(qū)域會(huì)以較高的概率被分配給用戶。那么將劃分后的網(wǎng)格中心O 作為任務(wù)點(diǎn),任務(wù)點(diǎn)與任務(wù)參與者之間的距離為r,設(shè)為區(qū)域l 被選為任務(wù)點(diǎn)的概率,則與距離函數(shù)成反比。
假設(shè)用戶當(dāng)前時(shí)刻所處的位置為l,經(jīng)過位置混淆函數(shù)處理后,將用戶的位置映射到l1,如果存在區(qū)域l'與l 具有相似的概率被映射到l1,即滿足式(2),則稱其滿足隱私保護(hù)強(qiáng)度為ε 的差分隱私。其中表示從用戶的真實(shí)位置區(qū)域l 混淆到l1的概率,表示區(qū)域l'混淆到l1的概率。
經(jīng)過位置混淆模塊混淆后的位置并不是用戶的真實(shí)位置,如圖2 所示,MCS 服務(wù)平臺(tái)是用戶上傳的位置為依據(jù),將距離用戶最近的任務(wù)點(diǎn)分配給移動(dòng)用戶。因此,為了減小用戶移動(dòng)距離對(duì)任務(wù)分配的影響,在構(gòu)建位置混淆函數(shù)時(shí),需要考慮位置混淆后帶來的距離誤差。因?yàn)橛脩羰孪炔⒉恢廊蝿?wù)點(diǎn)的位置,所以對(duì)用戶來說,區(qū)域L 內(nèi)的所有位置都有可能成為任務(wù)點(diǎn),設(shè)l*為服務(wù)器給用戶分配的任務(wù)地點(diǎn),為用戶的真實(shí)位置與任務(wù)點(diǎn)的距離,為混淆后的位置與任務(wù)點(diǎn)之間的距離。則混淆位置后引起的誤差距離為:
圖2 任務(wù)分配示意圖Fig.2 Schematic diagram of task allocation
2.2.2 移動(dòng)端的位置混淆
用戶在移動(dòng)端下載位置混淆模塊,用戶需輸入自身的位置信息,并選擇適當(dāng)?shù)碾[私保護(hù)強(qiáng)度ε,通過位置混淆函數(shù)將自己的真實(shí)位置映射到一個(gè)虛假的位置,而后上傳給MCS 服務(wù)中心。因?yàn)榈谌椒?wù)器只負(fù)責(zé)生成位置混淆模塊,并且位置混淆的過程在移動(dòng)端完成,所以真實(shí)的位置信息只有參與者自身知道,避免了由于第三方服務(wù)器不可信而產(chǎn)生的隱私泄露問題。
2.2.3 前指服務(wù)器進(jìn)行任務(wù)分配與加密處理
MCS 服務(wù)器接收到用戶提交的位置信息后,按照距離最近的原則給用戶分配任務(wù)。在確定用戶的任務(wù)點(diǎn)后,為了保護(hù)任務(wù)點(diǎn)的隱私安全,利用屬性加密的方法對(duì)分配的任務(wù)位置進(jìn)行加密,并將其傳輸給移動(dòng)用戶。
采用分層級(jí)的樹形結(jié)構(gòu)實(shí)現(xiàn)任務(wù)信息的加密,可有效抵抗合謀攻擊。服務(wù)器需要首先確定訪問樹T 的結(jié)構(gòu),每個(gè)子節(jié)點(diǎn)和閾值描述的閾門由非葉子節(jié)點(diǎn)表示[16],若numx為節(jié)點(diǎn)x 的子節(jié)點(diǎn)數(shù)且節(jié)點(diǎn)閾值為kx,kx的取值范圍為(0,numx]。設(shè)Tx為根節(jié)點(diǎn)為x 的子樹,如果用戶的一組屬性集合Sx滿足訪問樹Tx,則表示為Tx(Sx)=1。
1)選取一個(gè)素?cái)?shù)階P 的雙線性群G,并選取發(fā)生器g,則雙線性映射為:
2)密鑰生成算法以一組屬性集合S 作為輸入,生成由屬性集合標(biāo)識(shí)的密鑰Sk,屬性集合S 為用戶的屬性子集。隨機(jī)選擇,任取,計(jì)算Dy和Dj,則密鑰生成為:
3)使用密鑰對(duì)任務(wù)點(diǎn)的位置信息進(jìn)行加密,服務(wù)器通過訪問樹結(jié)構(gòu)指定私鑰必須滿足的策略。加密時(shí)首先為訪問樹的每個(gè)節(jié)點(diǎn)x 選擇一個(gè)多項(xiàng)式qx,且多項(xiàng)式的次數(shù)m 與節(jié)點(diǎn)的閾值k 之間應(yīng)滿足mx=kx-1。在算法開始時(shí),選擇一個(gè)隨機(jī)數(shù),且從根節(jié)點(diǎn)R 開始,有,而后選擇多項(xiàng)式的其他點(diǎn)來進(jìn)行完整定義。
假設(shè)Y 是T 的葉子節(jié)點(diǎn)集合,則對(duì)于葉子節(jié)點(diǎn)y?Y 有:
因此,密文的組成結(jié)構(gòu)為
2.2.4 客戶端解密任務(wù)點(diǎn)
用戶端接收到服務(wù)器發(fā)來的加密信息后,將自己的屬性信息輸入得到私鑰進(jìn)行解密,如果用戶的屬性符合訪問結(jié)構(gòu),那么用戶就可以解密密文得到任務(wù)點(diǎn)的具體信息,如果用戶的屬性不符合訪問結(jié)構(gòu),用戶就無法解密得到任務(wù)點(diǎn)的位置,任務(wù)點(diǎn)的隱私信息就得到了保護(hù)。具體的解密過程如下:
如果S 滿足訪問樹的整體或者部分結(jié)構(gòu),那:
客戶端根據(jù)自身屬性信息解密后得到任務(wù)點(diǎn)的信息,即可前往任務(wù)點(diǎn)完成平臺(tái)發(fā)布的任務(wù)。
本文采用Geolife 數(shù)據(jù)集進(jìn)行仿真實(shí)驗(yàn),該GPS軌跡數(shù)據(jù)集收集了182 名用戶從2007 年4 月至2012 年8 月的活動(dòng)路線,記錄了用戶廣泛的戶外活動(dòng),如購物、觀光、徒步旅行等,一共包含17 621 條軌跡信息,這些軌跡都按時(shí)間序列進(jìn)行存儲(chǔ)。
實(shí)驗(yàn)環(huán)境如下:Intel i7-7700K 3.6 GHz,8 GB 內(nèi)存,Microsoft Windows 10 操作系統(tǒng),模型算法均在Pycharm2019 下實(shí)現(xiàn)。
Geolife 數(shù)據(jù)集中的用戶活動(dòng)范圍以時(shí)間進(jìn)行分類,選取用戶在2008 年11 月21 日至11 月24日內(nèi)活動(dòng)的軌跡點(diǎn),將用戶每天的活動(dòng)軌跡劃分為一組數(shù)據(jù),共生成4 組數(shù)據(jù)集。下頁圖3 是使用ARCMAP 軟件生成的用戶歷史移動(dòng)軌跡路線。將用戶所在區(qū)域劃分為邊長為1 km 的正方形網(wǎng)格,并進(jìn)行標(biāo)號(hào),統(tǒng)計(jì)用戶在各個(gè)網(wǎng)格內(nèi)的活動(dòng)軌跡點(diǎn),即可計(jì)算出各網(wǎng)格內(nèi)人員流動(dòng)密度。圖4 與圖5 分別為不同時(shí)間內(nèi)同一地區(qū)的人員流動(dòng)數(shù)量與統(tǒng)計(jì)的人員流動(dòng)密度圖,可以看出,即使在相同的地區(qū),不同時(shí)間內(nèi)的人流量與人員流動(dòng)密度差別也較大。
圖3 用戶歷史軌跡圖Fig.3 User’s history track diagram
圖4 人員流動(dòng)數(shù)量圖Fig.4 The personnel flow quantity diagram
圖5 各網(wǎng)格區(qū)域內(nèi)人員流動(dòng)密度Fig.5 Human flow density in each grid area
本文與文獻(xiàn)[9]中基于Spare MCS 概念生成混淆函數(shù)的算法進(jìn)行對(duì)比,二者都采用了差分隱私的技術(shù)來實(shí)現(xiàn)用戶位置信息的混淆,但在混淆區(qū)域的選擇上,該算法考慮到人流密度以及用戶移動(dòng)距離對(duì)任務(wù)點(diǎn)選取的影響,而稀疏MCS 算法則賦予各網(wǎng)格相同的概率來確定任務(wù)區(qū)域。
從圖6 可以看出,在不同的數(shù)據(jù)集中,用戶與任務(wù)點(diǎn)之間的距離雖然有所浮動(dòng),但總體變化趨勢(shì)相同。隨著f(r)中k的增大,考慮人流量密度影響下的距離也隨之接近SpareMCS 算法下的距離,并且當(dāng)k取值大于4 后,前者的距離小于后者,變化速率也隨之減小。
圖6 用戶位置與任務(wù)點(diǎn)之間的距離Fig.6 Distance between user’s location and task point
設(shè)置差分隱私保護(hù)中的拉普拉斯(Laplace)機(jī)制作為對(duì)照組,對(duì)比了不同隱私強(qiáng)度下,混淆位置與任務(wù)點(diǎn)之間的距離,以及混淆位置與真實(shí)位置之間的距離,下頁圖7、圖8 分別比較了混淆位置與真實(shí)位置以及混淆位置與任務(wù)點(diǎn)之間的距離,從實(shí)驗(yàn)結(jié)果可以看出,在不同的數(shù)據(jù)集上,本文算法生成的混淆位置在空間距離方面都更加接近用戶的真實(shí)位置和任務(wù)區(qū)域,表明與Laplace 機(jī)制相比,本文算法不僅能夠保護(hù)用戶的位置隱私信息,同時(shí)也能夠降低混淆用戶位置后帶來的誤差距離,提高了方案的可用性。
圖7 混淆位置與任務(wù)點(diǎn)的距離Fig.7 The distance between the confusion location and the task point
圖8 混淆位置與真實(shí)位置之間的距離Fig.8 The distance between the confusion location and the real location
實(shí)驗(yàn)對(duì)比了本文方案、Laplace 機(jī)制以及無隱私保護(hù)(NP)情況下任務(wù)分配的時(shí)間開銷,從實(shí)驗(yàn)結(jié)果可以看出,隨著軌跡點(diǎn)數(shù)量的增加,3 種方案的運(yùn)行時(shí)間都呈上升趨勢(shì)。圖9 為在線生成概率轉(zhuǎn)移矩陣時(shí),各方案的運(yùn)行時(shí)間對(duì)比,因?yàn)楸疚姆桨感枰y(tǒng)計(jì)用戶的歷史運(yùn)動(dòng)信息,所以需要的時(shí)間開銷更大,整體運(yùn)行時(shí)間最長,其次是Laplace 機(jī)制下的位置混淆方法,二者都滿足差分隱私的要求,比NP 情況下的任務(wù)分配所需時(shí)間更長。本文方案中生成概率轉(zhuǎn)移矩陣的過程可以在第三方服務(wù)器上離線完成,如圖10 所示,在任務(wù)分配之前進(jìn)行信息收集與矩陣生成,那么任務(wù)分配所需的時(shí)間開銷就可以大大減小,任務(wù)分配的時(shí)間就與Laplace 機(jī)制下的時(shí)間接近。
圖9 在線生成概率轉(zhuǎn)移矩陣Fig.9 On-line generation of probabilistic transition matrix
圖10 離線生成概率轉(zhuǎn)移矩陣Fig.10 Off-line generation of probability transition matrix
隨著移動(dòng)通訊技術(shù)的迅速發(fā)展,移動(dòng)群智感知這種新穎的互聯(lián)網(wǎng)感知也逐漸走進(jìn)大眾的視野,成為一種新型的信息傳播與交互模式。在參與感知任務(wù)過程中,感知用戶的個(gè)人身份、位置訪問模式等諸多隱私信息面臨著泄露的風(fēng)險(xiǎn)。本文針對(duì)移動(dòng)感知任務(wù)中感知用戶的位置信息和任務(wù)信息的安全問題,提出了一種基于差分隱私與屬性加密的隱私保護(hù)方案,利用差分隱私技術(shù)對(duì)感知用戶上傳的位置信息進(jìn)行混淆,在MCS 平臺(tái)下發(fā)任務(wù)信息時(shí)進(jìn)行屬性加密,只有滿足條件的用戶才能對(duì)任務(wù)信息解密。同時(shí)引入第三方服務(wù)器負(fù)責(zé)位置混淆模塊的生成,既提高了方案的整體效率,也不會(huì)因?yàn)榈谌椒?wù)器的可信性問題產(chǎn)生隱私泄露的風(fēng)險(xiǎn)。實(shí)驗(yàn)結(jié)果證明,本文方案在隱私保護(hù)強(qiáng)度與控制誤差方面有較大優(yōu)勢(shì),同時(shí)運(yùn)行效率也比較高。