王斌,張磊,張國印
(1. 哈爾濱工程大學計算機科學與技術學院,黑龍江 哈爾濱 150001;2. 佳木斯大學信息電子技術學院,黑龍江 佳木斯 154007)
隨著定位技術和無線通信技術的不斷發展,基于這類技術的位置服務已經廣泛地深入人們的日常生活當中,這種以提交用戶當前或一段時間真實位置并獲得如導航、興趣點查詢、廣告推送等相關信息的服務方式為廣大用戶的日常生活帶來了極大的便利。但是,隨著越來越多地使用這種服務,人們逐漸發現基于位置的服務存在著獲取及威脅用戶個人隱私的情況,這使很多人逐漸減少對其的使用,并很大程度上制約了這種服務方式和服務技術的發展。
針對隱私泄露問題,很多研究者都提出了自己的觀點。其中,提出最早并影響最深的是 Gruteser等[1]提出的k-匿名觀點,該觀點認為把用戶的真實位置與其他至少k-1個位置共同提交給基于位置服務的服務提供商,利用真實位置與其他用戶位置之間的不確定性來降低攻擊者準確識別指定用戶的概率,以此保護用戶的個人隱私。隨著該觀點的提出,區域泛化[2]、位置多樣性[3]、查詢多樣性[4]等相關觀點被分別提出,并逐漸演化為歐氏空間的快照查詢隱私保護[5-7]和歐氏空間的連續查詢隱私保護[8-9]。但這類方法較難應用到真實環境當中,因為人們真實活動的空間被道路組成的網絡結構所覆蓋,按照歐氏空間得到的匿名位置可能位于一些不可到達或者易被攻擊者識別的區域,進而無法有效地起到泛化用戶真實位置的目的。因此,研究者又專門針對路網環境,提出了在該環境下的連續查詢隱私保護方法[10-12]。不過,這些方法或者無法有效地應對攻擊者使用的追蹤攻擊,或者在隱私保護過程中過于追求隱私保護的效果而對服務質量影響較大。這種情況導致另外一種被稱作mix-zone[13-18]的可抵抗追蹤攻擊并能有效減少對服務質量影響的方法被廣泛研究和應用。通常情況下,mix-zone可看作是一個外部用戶無法獲知任何消息的黑盒區域,在該區域中,內部用戶可以進行信息交互、信息處理等一系列操作,而外部用戶無法通過各種方式獲取任何信息傳遞情況。同時,由于 mix-zone采用的是按照關鍵位置節點部署的方式,使2個連續節點之間的用戶未受到各種算法的影響,因此對服務質量的影響相對較弱。綜上,mix-zone的這一系列優點使其更適合在路網環境部署應用。
不過,用戶在連續移動并查詢的過程中并非僅僅去掉假名、查詢時間等有限屬性便可有效地抵抗攻擊者的攻擊行為。按照張磊等[19]的觀點,攻擊者可以根據連續用戶所表現出的多種屬性進行關聯,進而猜測出用戶的連續位置,分析獲得用戶的隱私信息。盡管在文獻[20-22]中已經利用屬性泛化實現隱私保護,但由于所針對環境的差異,這些方法并不適合直接應用到mix-zone中。針對這個問題,本文以屬性泛化為基本出發點,從mix-zone構成的基本特性考慮,基于同態加密的基本思想,設計并提出了一種基于mix-zone半可信的用戶代理、且用戶屬性信息全程不可獲知的隱私保護方法,簡稱 AG mix-zone算法。基于該方法,mix-zone中用戶可秘密計算獲知泛化后的屬性集合信息,利用泛化后的屬性集合信息在離開mix-zone后表現為用戶屬性,以此令攻擊者無法在非 mix-zone區域對用戶屬性加以關聯。最后,本文通過安全性分析和實驗驗證,證明了本文所提算法的隱私保護能力及其在實際部署中的執行效率。
mix-zone主要設計用來防止攻擊者實施追蹤攻擊,即通過mix-zone切斷攻擊者對用戶的連續暴露位置所表現出的用戶信息。但是,由于用戶的屬性彼此之間存在差異,使假名、查詢間隔等有限屬性互換很難隱藏可被攻擊者利用的全部屬性信息,進而表現為如圖1所示的可被攻擊者利用的屬性關聯模型。圖1中,進出mix-zone的移動用戶均表現出自身特定的用戶屬性,如用戶ID、查詢頻率、查詢內容等,并用三角形、五角形、五邊形等不同圖形來表示。攻擊者可利用這些屬性的相似性對進出 mix-zone的用戶加以關聯,使mix-zone的作用失效。

圖1 未經屬性泛化導致的用戶屬性表現
基于上述分析及圖1的觀測比較發現,這種關聯的攻擊方式可以表示為用戶可被觀測的全部屬性的相似性比較,因此使用來量化這種相似性,其中,sim(?)表示相似性。設某一指定被追蹤用戶的屬性為該用戶離開 mixzone之后表現出的屬性為若存在則可認為這 2種屬性為同一用戶所表現,即進出mix-zone的用戶為同一用戶,進而攻擊者可對該用戶進行持續追蹤。其中,m為可被識別的屬性數量,λ為攻擊者可使用的屬性相似最小閾值。
針對利用用戶表現出的屬性相似性進行攻擊的方法,最有效的手段就是進行屬性泛化。屬性泛化的基本思想是令所有離開 mix-zone的用戶表現出相似屬性,使攻擊者無法利用進出mix-zone的用戶屬性關聯來識別出指定的追蹤用戶。圖2給出了這種思想處理后表現出的屬性泛化結果。

圖2 經過屬性泛化后的用戶屬性表現
從圖2中可以看出,進入mix-zone時表現出不同屬性類型的移動用戶,在經過mix-zone的處理之后,均表現出五邊形屬性,這使攻擊者無法利用進出mix-zone的用戶之間的屬性相似來識別用戶。形式化表示為其中,n為當前mix-zone中的用戶數量。但是,簡單地通過mix-zone中的用戶彼此之間交換并建立這種相似屬性是不安全的,因為攻擊者可以偽裝成為參與者并被包含在mix-zone區域內,進而造成交換數據被攻擊者獲得從而泄露用戶隱私,因此,需要一種既能夠保障mix-zone中的用戶彼此之間不能獲得相關信息,同時又能通過選擇的半可信代理用戶完成相同屬性信息處理的隱私保護方法。基于這一思路,本文利用同態加密的基本特性,分別利用秘密數據比較和秘密相似屬性值計算對屬性泛化的觀點進行處理。在整個屬性泛化的處理過程中,用戶的信息既不會被代理獲知,也不會被 mix-zone中參與者所了解,所有用戶僅能獲得最后泛化的屬性均值,并利用該均值實現離開mix-zone后的用戶屬性泛化。
完成屬性相似計算的首要問題是在當前mix-zone區域內由所有用戶共同選擇一個半可信代理來完成屬性相似計算。在各用戶均無法獲知真實出價的情況下,由出價最高的用戶被選為代理。首先代理應是如圖3所示的mix-zone內成員,以便與用戶進行信息交互;其次,代理是在連續的競標過程中勝出的一方,這樣能夠獲得由其他用戶反饋給該用戶的消耗補償。競標過程可表現為如圖4所示的分組競標價格比較過程。

圖3 mix-zone中代理與用戶關系

圖4 mix-zone中分組競標價格比較過程
因此競標比較問題可轉換為多方的秘密數據比較問題,借鑒文獻[23]給出的秘密比較方法,可獲得如下所述的秘密比較處理過程。
假設當前mix-zone中存在的參與者人數為n,則參與者Pi( 1 ≤i≤n)每人擁有的長度為l bit的代理參選投標出價為轉換為二進制表示為則出價可按照以下步驟進行比較。
步驟 21P利用自己的公鑰pk1對自身的二進制出價進行逐比特加密,得到加密后的信息并向其他n-1個用戶公開加密后的出價信息E(b1)。
步驟3 當kP收到加密后的出價E(b1)時,首先利用pkk對自身的出價進行加密,獲得然后計算

其中,E(l)是l在經過全同態加密后獲得的密文,即將加密后的l位與出價E(l)的模之間進行d進位加法,如果其結果超出l位整數的表示范圍,則只需去除低于l位的結果。
在完成上述計算之后,kP計算其中,gk表示第k位計算結果,表示對應的 2個λ位整數的進位加法,分別表示第i位的計算結果和第i位向第i+1位的進位;表示的模d進位乘法,模d進位加法和模d進位乘法均按照全同態加密方案中同態運算步驟加以執行,且每次對2個密文完成加法或乘法運算后,執行同態解密操作以降低密文中存在的噪聲。在完成以上操作后,得到發送給用戶1P。
步驟41P對解密后得到1P將結果發送給kP。
通常情況下,用戶在道路環境下的連續移動過程中可被攻擊者獲得并被識別的m個用戶屬性可表示為針對mix-zone中的n個用戶,可將這種屬性表示為1≤i≤n。屬性模糊的目的就是使mix-zone中的多個用戶表現出的屬性集合之間存在,即針對任意選擇的2個用戶ui和其表現出的屬性之間滿足其中,λ為攻擊者不可分辨出的最小閾值。為實現這種屬性相似計算,且mix-zone中各用戶(包括所選擇的代理用戶)在計算過程中無法獲知任何用戶屬性信息,本文修改文獻[24]提供的單輪集合地點計算的方式,對不同用戶提供的屬性進行相似屬性計算。該計算過程可表示如下。
代理用戶利用 ElGamal生成公鑰pks=私鑰為sks=α。其中,p是一個大素數,的發生器,滿足
步驟1 對于mix-zone中的任意2個用戶ui和用戶uj分發和這 4個私密隨機數;用戶ui分發這4個私密隨機數,其中,用戶隨機選擇一個正整數滿足并將si保存,其中,||.||表示比特長度。所有mix-zone中的用戶共享一個通用的正整數且r滿足
步驟2 將屬性值平均分成兩部分,用戶ui的屬性為用戶uj的屬性為首先,用戶uj計算密文,具體如下。

然后,用戶uj將密文發送給用戶ui。當收到密文后,用戶ui計算如下密文。

最后,用戶ui將密文發送給代理。
步驟 3 代理在從用戶ui處獲得密文后,使用自身的私鑰sks=α對其進行解密,并獲得明文表示2個用戶之間的屬性差異距離。由于有 0≤mij=
步驟4 對于mix-zone中的每一個用戶,代理計算mij的平均值然后計算差異對于每個差異代理需要計算r次,獲得對每個用戶之間的屬性差異iσ,即。在獲得后,代理在其中選擇最小值及其索引k。由于r是正整數,可知kσ是在集合之中的最小值。即計算后獲得的Ak的屬性值kσ是與mix-zone中所有用戶屬性值最相近的,可以使用該值作為模糊后所有用戶可使用的泛化屬性。在整個計算處理過程中,每個用戶均不知道其他用戶的真實屬性,而代理僅知道模糊后所有用戶共同使用的泛化屬性值,即在整個處理過程中沒有用戶屬性信息被其他實體所獲知。
由于本文所提算法是在屬性相似的思想基礎上,基于同態加密的處理方法實現的,該方法既可針對全程追蹤的攻擊者,又可針對參與mix-zone中的偽裝攻擊者,因此,其安全性需要從2個方面考慮:1) 攻擊者對泛化后的屬性信息準確猜測的不確定性;2) 算法中所使用的加密算法對參與到mix-zone中的2種用戶(代理和一般用戶)的信息泄露情況。
攻擊者對泛化后屬性猜測的不確定性使用信息熵進行度量,即設攻擊者在離開mix-zone的眾多用戶中,根據表現出的屬性相似性準確識別出追蹤用戶的概率為則攻擊者在眾多離開mix-zone中的用戶中,利用相似性猜測的情況可表示為按照Jaynes最大熵定理可知,當Hi最大時,攻擊者具有最大不確定性,即無法在離開的n個用戶中準確地識別出追蹤用戶。為證明這一點,假設攻擊者掌握的追蹤用戶屬性為在離開mix-zone的n個用戶中的任意 2個用戶ui和uj的屬性為和根據屬性相似,攻擊者可通過計算來判斷這2個用戶哪一個是被追蹤用戶。假設pu,i和pu,j分別是攻擊者將這2個用戶與追蹤用戶進行相似屬性關聯獲得的猜測概率,則有而經過屬性泛化,使攻擊者無法通過相似屬性對這2個用戶進行區分,進而有此時根據Jaynes最大熵定理可知H取最大值,即攻擊者在n個用戶中準確地識別出追蹤用戶的不確定性最大。
加密算法對用戶信息的披露可以從代理競選和屬性私密計算兩方面加以分析。在代理競選方面,任意用戶之間只存在競選代理所需要的計算補償,只有在計算補償最小的情況下,該用戶才能被選為代理。整個競選過程中,所有出價均在加密狀態下完成,任何用戶均無法獲知其他用戶的出價。由于代理競選是在n個用戶中選擇,可能會出現參與競選用戶共謀獲取其中某一用戶出價的情況,但僅在的情況下,可猜測獲得出價排位,但并不能獲知具體出價。同時,由于mix-zone中的用戶是一種隨機建立的用戶群組,一方面很難出現全部參與用戶中僅余一個用戶為待攻擊對象的情況;另一方面,由于代理在屬性泛化的過程中仍不能準確地獲得待攻擊對象的屬性信息,因此其攻擊投入與收獲不符,即攻擊者很難通過這種方式對待攻擊對象加以攻擊并獲得其隱私信息。
在屬性私密計算方面,用戶信息的披露程度可以從相似屬性計算的私密性方面加以分析,即在相似屬性的計算過程中沒有隱私信息被mix-zone中的其他參與者獲知。對于代理用戶,由于代理需獲得密文并通過自己的私鑰sks解密計算泛化后的屬性信息,而分別是通過用戶ui和用戶uj的屬性信息經過一系列模操作計算獲取的。在模值(即mod計算后所取得的結果)為確定數的情況下,原始值(即加密前的明文信息)是不確定的,因而代理是不能利用獲得的密文將用戶的屬性信息還原的,即使惡意用戶與代理共謀攻擊也無法還原該信息。
每個考站考核完畢教師分別根據考生表現進行針對性的點評,并適當提問相關問題,考生能現場對每一站的內容查漏補缺,盡量做到評定-治療-病例分析之間的密切聯系。每個考生考完一站后必須馬上轉移地點進行下一站考核,考完三站的考生最后在教室回避,不能與未完成考核的考生有任何交流。
對于除代理外的參與用戶,設ε為隱私參數,A為攻擊者,B為待攻擊對象,攻擊者對屬性信息的攻擊可轉換為A和B之間的博弈在整個屬性信息泛化處理過程中,假設A可獲得代理用戶的私鑰sks及B的公開參數。所有mix-zone中的參與者的屬性信息可表示為A1,A2,… ,An。B執行秘密屬性計算可得到泛化后的屬性信息并將密文及對的索引發送給A。B再選擇隨機屬性并隨機選擇當ε=0時,將發送給A;當ε=1時,則將Ar發送給A。A猜測針對隱私參數ε的猜測值 {0,1}時,A獲勝。此時攻擊者在此博弈中的優勢可表示為ε′∈ ,當且僅當由于在整個過程中,A無法通過有效的手段準確猜測ε′的取值,進而使ε′=ε的概率為隨機猜測概率,由此可獲得攻擊者的博弈優勢即攻擊者不具備優勢。因此,可認為除代理外的參與用戶無法獲知任意用戶的屬性信息。
基于上述分析,可認為本文所提的基于多方安全計算的屬性泛化的 mix-zone能夠有效地提供隱私保護,且針對不同類型的攻擊者均具有較好的防護能力。
為了驗證本文所提AG mix-zone算法在隱私保護能力和算法執行效率這2個方面的優勢,本文利用BerlinMOD Data Set提供的路網數據,并隨機選擇位置生成mix-zone進行測試。實驗使用筆記本電腦的處理器為Intel core I7,內存為4 GB,操作系統為Windows10,并采用Matlab R2017a作為測試工具進行模擬實驗。同時,為進一步驗證 AG mix-zone算法的優勢,在測試的過程中與當前的一些同類算法進行了比較,參與比較的算法有通過移動耽擱泛化查詢間隔時間的等待忍耐 mix-zone(delay-tolerant mix-zone)[25]、利用 mix-zone變形降低關聯程度的偏移mix-zone(shifted mix-zone)[26]、多維 mix-zone授權的多維 mix-zone(multiple mix-zone)[17]和基于身份驗證加密的加密mix-zone(cryptographic mix-zone)[18]。實驗將從隱私保護能力和算法執行效率這2個方面展開,并且同時針對規則mix-zone和不規則mix-zone進行測試比較,以便獲得部署mix-zone的最佳形狀。其中,隱私保護能力將在屬性泛化后的信息熵度量、泛化后的屬性差異率、進出mix-zone用戶的可關聯性這3個方面展開;算法執行效率將在規則mix-zone和不規則mix-zone狀態影響下的算法執行時間和隱私保護成功率等這2個方面展開。在驗證屬性數量對算法的影響時,將用戶限定在 10個,而在驗證用戶數量對算法的影響時則將屬性設定為 15個。為簡化算法驗證過程,整個實驗中所使用的用戶和屬性數量均為 1~30。
從圖5中可以看出,除本文所提AG mix-zone算法外,在用戶數量一定的前提下,其他算法的信息熵均隨屬性數量的增加而減小。這是由于本文算法主要針對 mix-zone中的用戶利用量化的多屬性相似計算完成屬性泛化,該方法處理的屬性數量遠超過其他算法。相比之下,加密mix-zone由于同樣使用加密手段隱藏屬性,表現要好于其他3種算法。而多維mix-zone表現要好于mix-zone和等待忍耐mix-zone算法,這主要是由于該算法使用多重的mix-zone進行重復覆蓋,在一定程度上提升了屬性隱藏的效率。偏移 mix-zone和等待忍耐 mix-zone由于針對的屬性有限,且未能通過多重覆蓋的方式降低屬性暴露的風險,隨屬性增加導致的信息熵取值相對較低,但偏移mix-zone表現要好于等待忍耐mix-zone,這是由于偏移后的mix-zone在一定程度上起到了覆蓋的作用,雖然低于多維mix-zone但要好于等待忍耐mix-zone。

圖5 屬性變化導致的泛化后信息熵曲線
從表1可以看出,5種算法在屬性數量確定的前提下,信息熵均隨著參與用戶數量的提升而增長,即攻擊者對屬性泛化后用戶的不確定性在持續增加。這是由于用戶數量提升了攻擊者的不確定性,令攻擊者猜測的基數不斷增長。在5種算法中,AG mix-zone算法能夠取得信息熵最大值,這是由于該算法將所有顯露的用戶屬性均加以泛化,最大程度地減少了攻擊者可利用的屬性。而其他算法中,多維mix-zone使用了多重覆蓋的原理,在多個不同的 mix-zone中使用大量用戶進行多種屬性的泛化處理,其信息熵取值比AG mix-zone算法稍低。加密mix-zone雖然采用加密手段進行屬性隱藏,但其所針對的屬性有限,其信息熵低于多維mix-zone。另2種算法中,偏移mix-zone由于偏移性與覆蓋相似,但偏移距離有限,限制了其對屬性的泛化效果。最后,等待忍耐mix-zone由于主要應對時間間隔這一屬性,其對于其他類型的屬性泛化能力有限,導致該算法表現不佳。
從圖6中可以看出,隨著屬性數量的增加,除本AG mix-zone算法外,其他算法在經過處理后用戶表現出的屬性之間仍存在較大差異,且屬性數量越大這種差異越明顯。由于AG mix-zone算法是針對所有潛在屬性進行整體性泛化,因此泛化后的屬性差異并不隨著屬性數量的增加而產生變化。其他算法則針對有限的屬性加以處理,其處理能力有限,無法對所有屬性展開泛化處理,屬性差異隨著屬性數量的增加而逐漸變大。

圖6 屬性泛化后的差異
對于進出mix-zone用戶的可關聯性,本文采用成對熵加以度量,即成對熵取值越高,可關聯性越低。從表2可以看出,AG mix-zone算法可取得最高成對熵取值,因為該算法將用戶間的屬性加以泛化,使離開mix-zone的用戶均表現出相似屬性,攻擊者無法將這些用戶中的任意一個與進入mix-zone之前的用戶相關聯。而其他4種算法均無法對所有屬性加以處理,進而造成攻擊者可通過屬性加以關聯,致使成對熵取值隨屬性數量的增加而逐漸降低,即攻擊者可將進出mix-zone用戶加以關聯的概率增加,用戶存在被攻擊者識別的風險。

表1 5種算法在不同用戶數量下的信息熵

圖7 隨用戶數量變化導致的進出mix-zone用戶可關聯性差異
從圖8中可以看出,除AG mix-zone算法外,其他算法均隨著屬性數量的增加,算法執行時間顯著增長。這是由于 AG mix-zone算法采用的是mix-zone中的用戶共同處理相似屬性的方法,這種方法是對所有屬性量化后由代理和用戶之間共同完成的,整個處理過程不隨著屬性數量的增加而改變。而其他算法由于針對的屬性種類等方面的限制,使在屬性增加的情況下,算法不得不重復執行或者多次處理,進而導致隨著屬性數量的變化,算法的整體執行時間不斷增加。其中,加密mix-zone和多維 mix-zone由于需要多次執行算法以處理更多的屬性,因此執行時間受屬性變化的影響最高,且在超過某一值后,這種變化加劇。而等待忍耐mix-zone和偏移mix-zone算法的執行時間未隨屬性的增加而加劇并不是因為這2種算法很好地解決了重復執行的問題,而是因為這2種算法針對的屬性有限,即使多次重復也無法有效地處理過多的屬性,因而其執行時間的變化并未表現出急劇上升的情況。

圖8 隨屬性變化的執行時間(規則的mix-zone)
與規則 mix-zone下算法隨屬性變化而導致的時間差異不同,從圖9中可以看出,AG mix-zone算法在不規則 mix-zone下其執行時間要高于規則mix-zone,這是因為在不規則 mix-zone下,AG mix-zone算法需要更多的時間來選擇足夠的且通信便利的用戶來進行多方安全計算,通信距離的限制在不規則mix-zone中表現得更為明顯,因而在一定程度上影響了AG mix-zone算法的表現。其他算法中,偏移mix-zone算法的表現要好于另外3種算法,這是由于該算法主要設計為不規則 mix-zone下的區域偏移擴展,更適于在不規則mix-zone的條件下部署。

圖9 隨屬性變化的執行時間(不規則mix-zone)
從表3中可以看出,隨用戶數量的變化導致的算法執行時間與隨屬性變化導致的執行時間存在較大差異。首先,AG mix-zone算法的執行時間不再保持固定不變,而是隨著人數的增加逐漸延長。這是由于該算法需要mix-zone內用戶進行多方安全計算,而增加的用戶數量勢必會導致計算的輪次或計算的基數增大,進而導致算法執行時間的延長。以加密為手段的加密mix-zone同樣受到這一影響,其算法執行時間隨mix-zone中用戶數量的增長而延長。其他4種算法由于僅需建立mix-zone,并在區域中簡單地對屬性進行隱藏或者泛化,處理過程不隨著用戶數量的增加而更加復雜,因此在完成基本處理后無論mix-zone中的用戶增加多少,處理時間保持穩定。
與規則 mix-zone下的用戶數量變化導致的算法執行時間差異相似,從圖 10中可以看出,AG mix-zone算法的執行時間依舊受用戶數量的影響較大,且同類以加密為手段的加密mix-zone表現依舊相似。所不同的是多維 mix-zone在不規則mix-zone的條件下,受影響的程度有所降低,這是由于該算法在不規則mix-zone的條件下不再需要部署更多重復性的 mix-zone來實現屬性隱藏,因此降低了其部署 mix-zone的數量,間接地導致算法執行時間的下降,但是這種降低較為有限。

圖10 隨用戶數量變化的算法執行時間(不規則mix-zone)
從圖11中可以看出,在規則的 mix-zone中隨著用戶數量的增加,各算法的執行成功率逐漸降低,這是由于所有算法均需要在mix-zone中找到足夠的用戶以滿足當前屬性泛化所要求的用戶數量,當不能找到足夠數量的用戶情況下,算法執行失敗。在這些算法中,AG mix-zone算法的執行成功率受用戶數量的影響較小,這是由于該算法通過mix-zone中用戶彼此間的多方安全計算來完成屬性泛化,算法的執行僅需要找到足夠數量的用戶即可,并不需要對用戶情況加以限制。其他算法中,多維mix-zone算法的執行成功率僅次于AG mix-zone算法,這是由于該算法僅需要在用戶數量不足的情況下重復或者延伸部署mix-zone通過多重mix-zone來提升算法的執行成功率。相比之下,同樣基于加密算法的加密mix-zone的受用戶數量的影響相對較大,這是由于該算法需要通過尋找具有相似屬性的用戶來完成屬性泛化,因此在很大程度上相似屬性用戶的尋找限制了其執行成功率。偏移mix-zone由于通過移動方式提升了相似屬性用戶的尋找能力,但是由于對查詢時間的屬性泛化,使該算法需要設定等待時間,而這種等待時間在很大程度上影響了用戶參與的積極性,造成隨著用戶數量增加而導致的算法執行成功率降低。最后,等待忍耐mix-zone既沒有偏移包含更多用戶的能力,又受到等待時間的影響,成功率最低。

表3 隨用戶數量變化的算法執行時間對比(規則mix-zone)

圖11 隨用戶數變化的算法執行成功率(規則mix-zone)
不規則 mix-zone中隨用戶數量變化導致的算法成功率差異與規則 mix-zone中算法成功率的差異大體相同,所不同的是不規則mix-zone的算法成功率更高,進而表現為如表4所示的算法成功率整體上升的狀態。這主要是不規則mix-zone由于設計特性導致其能夠包含更多的用戶在 mix-zone當中,相比于規則mix-zone更多的用戶為屬性泛化提供了更多的選擇,進而提升了屬性泛化的算法執行成功效率。
從圖12中可以看出,在規則mix-zone下隨屬性變化導致的算法執行產生的成功率差異。AG mix-zone算法的執行成功率受屬性變化的影響較小,僅當屬性數量超過某一閾值時才逐漸表現出成功率的降低,這是由于該算法是通過屬性量化后展開的相似屬性泛化實現的隱私保護,算法所處理的是屬性共有值而不是單獨某一個值,而表現為不受屬性數量影響的處理過程。而其他算法中,由于是直接對屬性展開泛化,因此在屬性增加的情況下,需要尋找滿足屬性相似的大量用戶,在一定程度上,因屬性數量增加而導致的相似屬性用戶尋找的困難造成了算法執行成功率的降低。另外,由于多維mix-zone、等待忍耐mix-zone和偏移mix-zone針對的屬性數量有限,在成功率下降的同時,這3種算法反而表現出平穩的下降趨勢,這是由于這3種算法僅針對某些特定屬性,在無法提供所有屬性泛化的情況下,這3種算法僅需完成對所針對屬性的泛化便可完成算法執行,因而其下降趨勢有所緩解。

圖12 隨屬性變化的算法執行成功率(規則mix-zone)
與在規則mix-zone下隨屬性變化的算法執行成功率相似,在不規則mix-zone下,各算法表現出的成功率差異可從如圖 13所示的曲線差異中看出。所不同的是在不規則mix-zone下,各算法的成功率要高于規則 mix-zone,這是由于不規則的mix-zone能夠包含更多的用戶,進而為算法執行提供了便利,充足的用戶數量提升了算法的執行成功率。

圖13 隨屬性變化的算法執行成功率(不規則mix-zone)

表4 隨用戶數變化的算法執行成功率對比(不規則mix-zone)
通過上述實驗驗證結果可以看出,本文 AG mix-zone算法比其他同類算法具有更好地隱私保護能力和算法執行效率,因而該算法可更好地應用在實際路網環境的部署當中,有效地保護了用戶的個人隱私。
在路網環境中,mix-zone作為一種有效地防治攻擊者對用戶展開追蹤攻擊的手段被廣泛的研究和應用。然而,在現實使用的過程中,一方面用戶在離開mix-zone區域后所展現的屬性可被關聯;另一方面一些潛在的能夠偽裝并加入mix-zone中的偽裝攻擊者可獲得用戶彼此間傳遞的信息。針對這2種存在的問題,本文基于屬性泛化和同態加密,提出了一種能夠實現用戶屬性不可關聯且mix-zone中用戶無法獲知彼此真實信息的隱私保護方法。該方法通過秘密選擇代理,并由代理完成私密相似屬性計算,最終實現離開mix-zone的用戶彼此間的屬性不可關聯。為證明本文所提AG mix-zone算法的有效性和算法執行效率,在安全性分析中使用了博弈論的觀點對加密手段和泛化效果進行了理論證明,同時在實驗驗證中給出了算法在實際部署中取得的各種效果,并通過與其他 4種算法的比較進一步說明本文所提 AG mix-zone算法的優勢。盡管本文所提AG mix-zone算法能夠解決mix-zone中存在的固有問題,但是由于所采用的多方安全計算需要較大的計算量和計算處理時間,AG mix-zone算法在執行效率上仍存在較大缺陷,今后的工作將在如何提升執行效率方面展開。