本發(fā)明屬于隱私保護(hù)技術(shù)領(lǐng)域,尤其涉及一種基于時(shí)空關(guān)聯(lián)性的假軌跡隱私保護(hù)方法。
背景技術(shù):
基于位置的服務(wù)(Location-based Service,LBS)是指與用戶指定地理位置密切相關(guān)的信息服務(wù)。例如,用戶可利用Google Latitude等應(yīng)用查詢指定位置的美食、酒店等信息。隨著LBS的廣泛應(yīng)用,用戶不再局限于享受實(shí)時(shí)的查詢服務(wù),而是更廣泛地應(yīng)用由位置序列構(gòu)成的軌跡發(fā)布。例如,物流公司保存自己的運(yùn)輸軌跡,用于分析其運(yùn)輸路線是否是合理;市政部門收集出租車運(yùn)行軌跡用于路網(wǎng)建設(shè)或交通管理。然而,人們在享受便捷的LBS的同時(shí),也面臨著隱私被竊取的風(fēng)險(xiǎn)。用戶發(fā)布的軌跡中往往包含大量的時(shí)空信息。這就使得惡意攻擊者可通過分析這些時(shí)空信息,結(jié)合自己掌握的背景知識(shí),非法獲取用戶的興趣愛好、宗教信仰、身體狀況、家庭及工作地址等個(gè)人隱私,甚至給用戶帶來經(jīng)濟(jì)損失或者威脅用戶的人身安全。因此,軌跡發(fā)布中的隱私保護(hù)受到了國內(nèi)外學(xué)者的廣泛關(guān)注。
現(xiàn)有的軌跡發(fā)布隱私保護(hù)方法可分為三種:假軌跡、軌跡k-匿名和軌跡抑制。與后兩種方法相比,假軌跡隱私保護(hù)方法無需可信第三方,且能保留完整的軌跡信息,因此常被用于保護(hù)軌跡發(fā)布中的用戶軌跡隱私。而現(xiàn)有的假軌跡隱私保護(hù)方案在假軌跡的生成過程中,不僅未結(jié)合實(shí)際的地貌、路況等因素考慮單條軌跡中相鄰位置間的時(shí)空關(guān)聯(lián)性,也忽略了軌跡之間的時(shí)空關(guān)聯(lián)性。因此,若用戶采用現(xiàn)有假軌跡方案保護(hù)自己的真實(shí)軌跡,攻擊者就能利用單條軌跡中相鄰位置間的時(shí)空關(guān)聯(lián)性和軌跡之間的時(shí)空關(guān)聯(lián)性,識(shí)別出某些假軌跡,甚至直接獲取用戶的真實(shí)軌跡?,F(xiàn)有假軌跡隱私保護(hù)方案僅能以不高于15%的成功率保護(hù)用戶的真實(shí)軌跡。由于無需第三方且能保證軌跡數(shù)據(jù)的完整性,假軌跡方法已被廣泛用于保護(hù)軌跡發(fā)布中的用戶軌跡隱私?,F(xiàn)有的假軌跡隱私保護(hù)方法不僅未考慮單條軌跡中相鄰位置間的時(shí)空關(guān)聯(lián)性,也忽略了軌跡之間的時(shí)空關(guān)聯(lián)性,使得攻擊者能正確識(shí)別出某些假軌跡,乃至推測出用戶的真實(shí)軌跡。使得真實(shí)軌跡被識(shí)別的概率增大,不能有效的保護(hù)用戶隱私信息。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提供一種基于時(shí)空關(guān)聯(lián)性的假軌跡隱私保護(hù)方法,旨在解決現(xiàn)有的假軌跡隱私保護(hù)方法未考慮單條軌跡中相鄰位置間的時(shí)空關(guān)聯(lián)性和軌跡之間的時(shí)空關(guān)聯(lián)性,使得攻擊者能正確識(shí)別出某些假軌跡,推測出用戶的真實(shí)軌跡,使得隱私保護(hù)安全性較低的問題。
本發(fā)明是這樣實(shí)現(xiàn)的,一種基于時(shí)空關(guān)聯(lián)性的假軌跡隱私保護(hù)方法,所述基于時(shí)空關(guān)聯(lián)性的假軌跡隱私保護(hù)方法從軌跡的整體方向相似、軌跡中相鄰位置的時(shí)間可達(dá)及移動(dòng)路程相近等因素,對單條軌跡中相鄰位置間的時(shí)空關(guān)聯(lián)性和軌跡間的相似性進(jìn)行分析。
進(jìn)一步,所述基于時(shí)空關(guān)聯(lián)性的假軌跡隱私保護(hù)方法包括:
(1)利用最小二乘法擬合真實(shí)軌跡的整體方向,用戶真實(shí)軌跡的移動(dòng)方向的斜率l為:
其中,(x,y)表示位置坐標(biāo)。
(2)利用假位置生成,分別以真實(shí)軌跡的起點(diǎn)和終點(diǎn)為保護(hù)點(diǎn)生成假位置集合和并分別從LocSet1和LocSetn中選擇假位置,使得真實(shí)軌跡整體移動(dòng)方向的斜率l與假軌跡起止點(diǎn)構(gòu)成的斜率lslope相近且起止點(diǎn)未在已有軌跡中出現(xiàn);
(3)逐一為每條假軌跡生成其第2個(gè)到第n-1個(gè)位置,在生成假軌跡的第i(2≤i≤n-1)個(gè)位置時(shí),以真實(shí)軌跡的第i-1和i個(gè)位置之間的歐式距離r+random為半徑,random表示隨機(jī)數(shù),以假軌跡第i-1個(gè)位置為圓心作圓;
(4)在生成完整的假軌跡后,擬合假軌跡的整體移動(dòng)方向的斜率:
其中,表示第d條假軌跡trajd的第i個(gè)位置;
(5)對任意第d條假軌跡trajd的第i個(gè)位置和第i+1個(gè)位置形成的路徑進(jìn)行時(shí)間可達(dá)性檢查和移動(dòng)距離檢查,若:
不成立,則記錄下不滿足要求的路徑段數(shù)num,如果num>δ×(n-1),則表示不滿足要求的軌跡數(shù)過多,此時(shí)重新生成假軌跡,否則,該條軌跡即為所生成假軌跡,其中,δd,δt和δ為檢查閾值,直到生成k-1條假軌跡。
進(jìn)一步,所述起止位置還需要滿足下列條件:
其中,表示從位置到的移動(dòng)距離,δdis_all為限制移動(dòng)距離的閾值。
進(jìn)一步,所述在lslope所在直線的兩側(cè),每間隔θ度選擇一個(gè)候選位置,構(gòu)成假位置候選集合,直至網(wǎng)格邊界與lslope所在直線的夾角達(dá)到閾值,在候選集合LocSet′中隨機(jī)選擇假位置,d是網(wǎng)格的邊長。
進(jìn)一步,所述基于時(shí)空關(guān)聯(lián)性的假軌跡隱私保護(hù)方法包括:
本發(fā)明的另一目的在于提供一種應(yīng)用所述基于時(shí)空關(guān)聯(lián)性的假軌跡隱私保護(hù)方法的基于位置的服務(wù)系統(tǒng)。
本發(fā)明的另一目的在于提供一種應(yīng)用所述基于時(shí)空關(guān)聯(lián)性的假軌跡隱私保護(hù)方法的物流運(yùn)輸軌跡分析系統(tǒng)。
本發(fā)明的另一目的在于提供一種應(yīng)用所述基于時(shí)空關(guān)聯(lián)性的假軌跡隱私保護(hù)方法的路網(wǎng)建設(shè)系統(tǒng)。
本發(fā)明的另一目的在于提供一種應(yīng)用所述基于時(shí)空關(guān)聯(lián)性的假軌跡隱私保護(hù)方法的交通管理方法。
本發(fā)明提供的基于時(shí)空關(guān)聯(lián)性的假軌跡隱私保護(hù)方法,針對所述基于時(shí)空關(guān)聯(lián)性的假軌跡隱私保護(hù)方法從軌跡的整體方向、軌跡中相鄰位置的時(shí)間可達(dá)及移動(dòng)距離對單條軌跡中相鄰位置間的時(shí)空關(guān)聯(lián)性和軌跡間的相似性進(jìn)行分析的問題,從軌跡的整體方向、軌跡中相鄰位置的時(shí)間可達(dá)及移動(dòng)距離對單條軌跡中相鄰位置間的時(shí)空關(guān)聯(lián)性和軌跡間的時(shí)空關(guān)聯(lián)性進(jìn)行分析,提出了一個(gè)假軌跡隱私保護(hù)方案。
本發(fā)明針對現(xiàn)有的假軌跡隱私保護(hù)方法,利用時(shí)間可達(dá)性和出入度提出了一個(gè)假軌跡識(shí)別方法。從整體和局部的角度考慮了單條軌跡中相鄰位置間的時(shí)空關(guān)聯(lián)性以及軌跡之間的時(shí)空關(guān)聯(lián)性,提出了一個(gè)假軌跡隱私保護(hù)方案。安全性分析表明,能混淆真實(shí)軌跡和假軌跡。大量的實(shí)驗(yàn)表明,本發(fā)明在具有較低計(jì)算開銷的同時(shí)。與現(xiàn)有假軌跡隱私保護(hù)方法相比,具有更低的真實(shí)軌跡隱私泄露率,有效保護(hù)軌跡發(fā)布中的用戶軌跡隱私。
附圖說明
圖1是本發(fā)明實(shí)施例提供的基于時(shí)空關(guān)聯(lián)性的假軌跡隱私保護(hù)方法流程圖。
圖2是本發(fā)明實(shí)施例提供的假位置候選集示意圖。
圖3是本發(fā)明實(shí)施例提供的軌跡數(shù)量k對軌跡相似度的影響示意圖。
圖4是本發(fā)明實(shí)施例提供的k對軌跡相度的影響示意圖。
圖5是本發(fā)明實(shí)施例提供的k對方案運(yùn)行時(shí)間的影響示意圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合實(shí)施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明從軌跡的整體方向、軌跡中相鄰位置的時(shí)間可達(dá)及移動(dòng)距離對單條軌跡中相鄰位置間的時(shí)空關(guān)聯(lián)性和軌跡間的相似性進(jìn)行分析,提出了一個(gè)基于時(shí)空關(guān)聯(lián)性的假軌跡隱私保護(hù)方案。安全性分析表明所提方案能有效混淆假軌跡與真實(shí)軌跡,避免攻擊者識(shí)別出假軌跡。大量實(shí)驗(yàn)表明,所提方案在僅需較少計(jì)算時(shí)間的同時(shí),能確保生成的假軌跡與真實(shí)軌跡具有相似性,從而有效保護(hù)軌跡發(fā)布中用戶的軌跡隱私。
下面結(jié)合附圖對本發(fā)明的應(yīng)用原理作詳細(xì)的描述。
如圖1所示,本發(fā)明實(shí)施例的基于時(shí)空關(guān)聯(lián)性的假軌跡隱私保護(hù)方法包括以下步驟:
S101:利用最小二乘法擬合真實(shí)軌跡的整體方向,保證隨后生成的假軌跡的移動(dòng)方向與用戶真實(shí)軌跡的移動(dòng)方向相似,使得攻擊者難以通過移動(dòng)方向識(shí)別出假軌跡;
S102:利用現(xiàn)有的假位置生成方案,分別以真實(shí)軌跡的起點(diǎn)和終點(diǎn)為保護(hù)點(diǎn)生成假位置集合,并分別選擇假位置,使得真實(shí)軌跡整體移動(dòng)方向的斜率與假軌跡起止點(diǎn)構(gòu)成的斜率相近且起止點(diǎn)未在已有軌跡中出現(xiàn);
S103:逐一為每條假軌跡生成其第2個(gè)到第n-1個(gè)位置,在生成假軌跡的第i個(gè)位置時(shí),以真實(shí)軌跡的第i-1個(gè)和第i個(gè)位置之間的歐式距離為半徑,以假軌跡第i-1個(gè)位置為圓心作圓;
S104:在生成完整的假軌跡后,擬合假軌跡的整體移動(dòng)方向的斜率:
S105:對假軌跡的每段路徑進(jìn)行時(shí)間可達(dá)性和移動(dòng)距離檢查。
下面結(jié)合具體實(shí)施例對本發(fā)明的應(yīng)用原理作進(jìn)一步的描述。
1預(yù)備知識(shí)
1.1基本概念
軌跡即由用戶的不斷移動(dòng)而產(chǎn)生由時(shí)間和位置組成時(shí)空序列。本發(fā)明將軌跡表示為:
traj={<loc1(x1,y1),time1>,<loc2(x2,y2),time2>,
…<locn(xn,yn),timen>},其中,loci(xi,yi)表示在timei時(shí)刻的位置坐標(biāo),1≤i≤n。當(dāng)軌跡發(fā)布時(shí),由用戶生成條k-1假軌跡與真實(shí)軌跡trajreal組成的軌跡集合為Trajs={traj1,traj2,…,tarjk-1,trajreal};|Trajs|表示集合Trajs中的元素個(gè)數(shù)。
本發(fā)明借用圖論中出入度的概念來表示軌跡集合中以各位置為起點(diǎn)或終點(diǎn)的路徑數(shù)量。也就是說,出度表示在軌跡集合中,以第i條軌跡traji的第j個(gè)位置為起點(diǎn)的路徑數(shù)量;入度則表示在軌跡集合中,以第i條軌跡traji的第j個(gè)位置為終點(diǎn)的路徑數(shù)量。
1.2攻擊模型
在軌跡發(fā)布中,攻擊者的目的是推測出某些假軌跡,降低用戶的軌跡隱私保護(hù)需求,甚至直接識(shí)別出用戶的真實(shí)軌跡,從而非法獲取用戶的個(gè)人隱私信息。本發(fā)明假設(shè)攻擊者可以獲取用戶發(fā)布的所有軌跡移動(dòng)完整路徑,掌握地圖知識(shí),且能夠利用地圖接口計(jì)算軌跡中前后相鄰位置的移動(dòng)距離和到達(dá)時(shí)間。攻擊者識(shí)別假軌跡的能力可從以下兩個(gè)方面進(jìn)行度量:
(1)誤判率τ:表示攻擊者將用戶的真實(shí)軌跡識(shí)別為假軌跡的概率。樣本空間由軌跡集合Trajs,用E表示樣本容量。若用E'表示將用戶真實(shí)軌跡識(shí)別為假軌跡的樣本數(shù),那么:
其中,
(2)識(shí)別率表示攻擊者在未將用戶的真實(shí)軌跡識(shí)別為假軌跡的情形下,識(shí)別出假軌跡的概率。
1.3隱私度量標(biāo)準(zhǔn)
定義1(軌跡移動(dòng)方向相似性).假設(shè)loci-1,loci和loci+1是任意一條軌跡traj種相鄰的三個(gè)位置,令和表示它們形成的兩個(gè)方向向量。此時(shí),這2個(gè)方向向量形成的方向夾角θ滿足:
那么,軌跡集合Trajs中的軌跡移動(dòng)方向相似度σ為:
其中,表示真實(shí)軌跡trajreal中的第i個(gè)方向夾角,表示第j條軌跡trajj中的第i個(gè)方向夾角,m表示任一軌跡中的方向夾角的個(gè)數(shù),即表示該軌跡中共包含m+2個(gè)位置信息。
定義2(軌跡泄露率).假設(shè)用戶發(fā)布的軌跡集合為Trajs,當(dāng)攻擊者利用其具有的軌跡識(shí)別能力對軌跡集合Trajs識(shí)別后,用戶真實(shí)位置在任意時(shí)刻timei的泄露概率為:
那么,用戶真實(shí)軌跡的泄露率為:
其中,m表示真實(shí)軌跡中的方向夾角的個(gè)數(shù)。
2攻擊方案
下面,為了證明現(xiàn)有假軌跡隱私保護(hù)方案忽略了單條軌跡中相鄰位置間的時(shí)空關(guān)聯(lián)性以及軌跡之間的時(shí)空關(guān)聯(lián)性,本發(fā)明利用相鄰位置間的可達(dá)時(shí)間和各位置的出入度提出一個(gè)假軌跡識(shí)別方案。該方案包含時(shí)間可達(dá)性識(shí)別和出入度識(shí)別兩個(gè)步驟。
2.1時(shí)間可達(dá)性識(shí)別
針對軌跡集中的每條軌跡,依次檢查該條軌跡中相鄰位置是否滿足時(shí)間可達(dá)性。即將該軌跡中相鄰位置坐標(biāo)發(fā)送至地圖接口,從地圖接口分別獲取相鄰位置間的可達(dá)時(shí)間mapTime。隨后利用公布時(shí)間間隔pubTime(對于具有n個(gè)點(diǎn)的軌跡traj,可被劃分為n-1段路徑,即每相鄰兩點(diǎn)構(gòu)成一段路徑,那么每條軌跡最多進(jìn)行n-1次比較)。最終根據(jù)比對結(jié)果,判斷該條軌跡是否為假軌跡。對于任意條軌跡traji∈Trajs,其時(shí)間可達(dá)性識(shí)別步驟如下。
Step1:若mapTime>>pubTime,即在用戶在實(shí)際環(huán)境中,形成該段路徑所需的時(shí)間較長(如相鄰兩個(gè)位置分別位于難以河的兩岸)。此時(shí),將該條路徑判定為假軌跡。否則,進(jìn)入Step 2。
Step2:設(shè)定識(shí)別閾值δt。當(dāng)|mapTime-pubTime|≥δt·pubTime時(shí),就判定該段路徑為可疑路徑。分別統(tǒng)計(jì)每條軌跡中可疑軌跡的段數(shù)numi。
Step3:計(jì)算可疑軌跡的段數(shù)numi占該條軌跡中總路徑段數(shù)的比例。當(dāng)numi>δt_all×(n-1)時(shí),該條軌跡被識(shí)別為假軌跡。其中,δt_all為閾值,
2.2出入度識(shí)別
出入度識(shí)別是利用發(fā)布的軌跡集合中各位置的出入度值,對假軌跡進(jìn)行識(shí)別。其基本步驟如下:
Step1:統(tǒng)計(jì)軌跡集合中每條軌跡上各個(gè)點(diǎn)的出入度。用Di和Ci分別表示軌跡traji∈Trajs上各個(gè)位置的出度總和以及入度總和,即:其中,n表示為軌跡traji上位置的數(shù)量。
Step2:計(jì)算軌跡集合的平均出度DaverageOut和平均入度DaverageIn,即:
Step3:當(dāng)Di<δout·DaverageOut,Ci<δin·DaverageIn時(shí),就將該軌跡識(shí)別為假軌跡。其中,δout和δin表示出入度識(shí)別閾值。
2.3實(shí)驗(yàn)評估
這部分實(shí)驗(yàn)所用的軌跡數(shù)據(jù)來自Wikiloc網(wǎng)站,首先在該數(shù)據(jù)集中挑選用戶在城市中形成的軌跡數(shù)據(jù),然后選用文獻(xiàn)[WuX,Sun G.ANovel Dummy-Based Mechanismto ProtectPrivacy onTrajectories[C]//DataMiningWorkshop(ICDMW),2014IEEE International Conference on.IEEE,2014:1120-1125.]提出的假軌跡生成算法——ADTGA生成假軌跡,從而得到軌跡集合。ADTGA生成算法是目前最好的假軌跡生成算法,它在假軌跡生成過程中不僅考慮了真實(shí)軌跡與假軌跡之間的距離,還考慮了假軌跡之間的距離。最后,再利用上述假軌跡識(shí)別方案對生成的軌跡集進(jìn)行識(shí)別。實(shí)驗(yàn)環(huán)境為:Intel(R)Core(TM)i5-3470@3.20GHz,4GB內(nèi)存。算法由C++編程實(shí)現(xiàn),程序運(yùn)行在windows 7環(huán)境下。
2.3.1時(shí)間可達(dá)性識(shí)別效果評估
隨著δt和δt_all的增大,誤判率和識(shí)別率均呈下降狀態(tài)。這是由于隨著δt和δt_all的不斷增大,使得越來越多假軌跡能滿足時(shí)間可達(dá)性識(shí)別條件,使得它們不會(huì)被識(shí)別成假軌跡。這就導(dǎo)致了識(shí)別率的降低。相應(yīng)地,誤判率也會(huì)隨著被判斷為假軌跡的軌跡數(shù)量減少而降低。
2.3.2出入度識(shí)別效果評估
出入度識(shí)別閾值δout和δin對出入度識(shí)別效果的影響情況如表1所示。在這部分實(shí)驗(yàn),設(shè)置δout=δin。這是因?yàn)樵谟葾DTGA算法生成的假軌跡集合中,各位置具有相同的出度和入度。由于ADTGA算法在生成假軌跡的過程中,每條假軌跡是由真實(shí)軌跡旋轉(zhuǎn)得到的。這就使得生成的每條假軌跡均與真實(shí)軌跡相交。顯然,每個(gè)交點(diǎn)均會(huì)造成出入度的增加。這就導(dǎo)致真實(shí)軌跡的出入度總是大于軌跡集合的平均出入度。因此,當(dāng)出入度識(shí)別閾值δout=δin≤1時(shí),誤判率為0。當(dāng)δout=δin>1時(shí),平均出入度與一個(gè)大于1的值相乘,得到的結(jié)果變大。此時(shí)出現(xiàn)真實(shí)軌跡出入度小于平均出入度的情況,因此存在誤判。
表1δout和δin對出入度識(shí)別的影響
2.3.3所提方案的識(shí)別效果評估
將時(shí)間可達(dá)性識(shí)別和出入度識(shí)別同時(shí)用于識(shí)別假軌跡時(shí),通過表1可知,當(dāng)δout=δin=1時(shí),出入度攻擊具有較高的識(shí)別率且誤判率為0。因此,此處將出入度閾值設(shè)為1。當(dāng)δt=2/7、δt_all=5/12時(shí),所提假軌跡識(shí)別方案的誤判率僅為23%,而識(shí)別率高達(dá)85%。也就是說,現(xiàn)有的假軌跡隱私保護(hù)方案僅能以15%的成功率保護(hù)用戶的真實(shí)軌跡。
3基于時(shí)空關(guān)聯(lián)性的假軌跡隱私保護(hù)方案
基于上述假軌跡識(shí)別原理,本發(fā)明還提出了一個(gè)基于時(shí)空關(guān)聯(lián)性的假軌跡隱私保護(hù)方案。本發(fā)明在假軌跡生成過程中不僅考慮了每段路徑的時(shí)間可達(dá)性及移動(dòng)距離,還對軌跡的整體移動(dòng)方向進(jìn)行限制。最后還保證在生成的軌跡集合中,每個(gè)位置具有相同的出入度。具體過程如下所示。
(1)擬合真實(shí)軌跡的整體方向
利用最小二乘法擬合真實(shí)軌跡的整體方向,從而保證隨后生成的假軌跡的移動(dòng)方向與用戶真實(shí)軌跡的移動(dòng)方向相似,使得攻擊者難以通過移動(dòng)方向識(shí)別出假軌跡。其中,用戶真實(shí)軌跡的移動(dòng)方向的斜率l為:
其中,
(2)起止假位置的生成
利用現(xiàn)有的假位置生成方案,分別以真實(shí)軌跡的起點(diǎn)和終點(diǎn)為保護(hù)點(diǎn)生成假位置集合和并分別從LocSet1和LocSetn中選擇假位置,使得真實(shí)軌跡整體移動(dòng)方向的斜率l與假軌跡起止點(diǎn)構(gòu)成的斜率lslope相近且起止點(diǎn)未在已有軌跡中出現(xiàn)。這不僅能限制假軌跡的整體運(yùn)動(dòng)方向,還能保證起止位置的出入度均為1。此外,起止位置還需要滿足下列條件:
其中,表示從位置到的移動(dòng)距離,δdis_all為限制移動(dòng)距離的閾值。
這是因?yàn)橹挥性诒WC假軌跡起止點(diǎn)在時(shí)間區(qū)間內(nèi)可達(dá),才有可能保證該軌跡中任意相鄰兩位置能在發(fā)布時(shí)間間隔內(nèi)可達(dá)。并且,移動(dòng)距離的控制又使得假軌跡與真實(shí)軌跡具有相似的移動(dòng)速度。
(3)中間位置的生成
逐一為每條假軌跡生成其第2個(gè)到第n-1個(gè)位置。在生成假軌跡的第i(2≤i≤n-1)個(gè)位置時(shí),以真實(shí)軌跡的第i-1個(gè)和第i個(gè)位置之間的歐式距離r+random為半徑(random表示隨機(jī)數(shù)),以假軌跡第i-1個(gè)位置為圓心作圓。在lslope所在直線的兩側(cè),每間隔θ度選擇一個(gè)候選位置,構(gòu)成假位置候選集合,直至網(wǎng)格邊界與lslope所在直線的夾角達(dá)到閾值,如圖2所示。假位置候選集為圖2中陰影部分。然后再在候選集合LocSet′中隨機(jī)選擇假位置。這樣不僅保證生成的假位置具有隨
機(jī)性,而且不能避免出現(xiàn)中間位置突然遠(yuǎn)離整體軌跡的情況。其中,
d是網(wǎng)格的邊長。
(4)對完整的假軌跡進(jìn)行整體方向的檢查
在生成完整的假軌跡后,擬合假軌跡的整體移動(dòng)方向的斜率:
其中,表示第d條假軌跡trajd的第i個(gè)位置。
隨后,將假軌跡的整體移動(dòng)方向的斜率ldummy與真實(shí)軌跡的整體移動(dòng)方向的斜率l進(jìn)行對比。如果斜率相近,則進(jìn)行時(shí)間及移動(dòng)距離的判斷。如果不滿足,則重新生成假軌跡。
(5)對假軌跡的每段路徑進(jìn)行時(shí)間可達(dá)性和移動(dòng)距離檢查
對任意第d條假軌跡trajd的第i個(gè)位置和第i+1個(gè)位置形成的路徑進(jìn)行時(shí)間可達(dá)性檢查和移動(dòng)距離檢查。若:
不成立,則記錄下不滿足要求的路徑段數(shù)num。如果num>δ×(n-1),則表示不滿足要求的軌跡數(shù)過多,此時(shí)重新生成假軌跡。否則,該條軌跡即為所生成假軌跡。其中,δd,δt和δ為檢查閾值。
利用上述方案,直到生成k-1條假軌跡。綜上所示,本發(fā)明所提的基于時(shí)空關(guān)聯(lián)性的假軌跡生成算法如下所示:
3.1安全性分析
當(dāng)用戶采用本發(fā)明生成假軌跡時(shí),首先擬合用戶真實(shí)軌跡的整體移動(dòng)方向,計(jì)算其斜率。隨后在假軌跡起止位置的生成過程中,通過計(jì)算斜率比,避免出現(xiàn)假軌跡與真實(shí)軌跡移動(dòng)方向相反的情況。當(dāng)斜率比不斷接近于1時(shí),就能保證虛假移動(dòng)路徑的整體方向與用戶真實(shí)路徑的移動(dòng)方向平行,使得攻擊者難以利用移動(dòng)方向識(shí)別出假軌跡。并且,本發(fā)明還能保證起止位置構(gòu)成的路徑能在發(fā)布時(shí)間間隔內(nèi)可達(dá),并利用移動(dòng)距離使得用戶在假軌跡與真實(shí)軌跡上具有相近的移動(dòng)速度。這樣可避免攻擊者在獲知用戶采用某種交通工具時(shí),利用該類交通工具的移動(dòng)速度通過計(jì)算可達(dá)時(shí)間識(shí)別出假軌跡。當(dāng)為每條假軌跡生成中間位置時(shí),首先生成候選假位置時(shí),還保證任意2條軌跡不會(huì)相交。在遵循上述同樣的原則進(jìn)行對假軌跡進(jìn)行合理軌跡段比例檢查。攻擊者從每個(gè)時(shí)刻觀察到的位置數(shù)目即為軌跡的數(shù)量k。此時(shí),用戶真實(shí)軌跡的泄露率:
滿足用戶的隱私保護(hù)需求。綜上所述,當(dāng)攻擊者與用戶具有相同的假軌跡識(shí)別能力時(shí),用戶采用本發(fā)明能有效保護(hù)自己的真實(shí)軌跡。
下面結(jié)合實(shí)驗(yàn)對本發(fā)明的應(yīng)用效果作詳細(xì)的描述。
1實(shí)驗(yàn)分析
為了便于進(jìn)行有效性分析,從實(shí)驗(yàn)數(shù)據(jù)集中隨機(jī)選擇不同的軌跡作為用戶真實(shí)移動(dòng)軌跡,隨后采用本發(fā)明提出的基于時(shí)空關(guān)聯(lián)性的假軌跡生成算法生成假軌跡,形成軌跡集合。最后,在利用提出的假軌跡識(shí)別方案對生成的軌跡進(jìn)行識(shí)別,從而表明所提的基于時(shí)空關(guān)聯(lián)性的假軌跡隱私保護(hù)方案能有效保護(hù)用戶的真實(shí)軌跡。
1.1軌跡數(shù)量k對軌跡泄露概率的影響
利用提出的假軌跡識(shí)別方法對本發(fā)明生成的軌跡集合進(jìn)行識(shí)別,從而說明本發(fā)明能有效保護(hù)用的軌跡隱私。在這部分實(shí)驗(yàn)中設(shè)置δout=δin=1,δt=5/7,δdis_all=5/12,實(shí)驗(yàn)如圖3所示。當(dāng)攻擊者利用單條軌跡中的時(shí)空關(guān)聯(lián)性以及軌跡間的時(shí)空關(guān)聯(lián)性對生成軌跡集合進(jìn)行識(shí)別后,并不能識(shí)出假軌跡。此時(shí)用戶的真實(shí)軌跡隱私保護(hù)等級仍為1/k,滿足用戶隱私保護(hù)需求。而攻擊者利用上述時(shí)空關(guān)聯(lián)性對由ADTGA算法生成的軌跡集合進(jìn)行識(shí)別時(shí),最好的情況是k=15和k=18時(shí),還剩下2條假軌跡未被識(shí)別出。此時(shí),用戶的真實(shí)軌跡隱私保護(hù)等級僅為1/3,遠(yuǎn)大于1/15和1/18。這就說明了本發(fā)明能有效保護(hù)用戶的軌跡隱私。
1.2軌跡數(shù)量k對軌跡相似度的影響
軌跡的移動(dòng)方向相似度表現(xiàn)了假軌跡與真實(shí)軌跡的輪廓相似程度,能在一定程度上反映用戶真實(shí)軌跡的隱私保護(hù)等級。具體實(shí)驗(yàn)結(jié)果如圖4所示??傮w來說,隨著k的改變,本發(fā)明生成的軌跡集合的相似度σ保持不變,且均在0.5以下。從3.3節(jié)中可知,σ越低,表明生成的軌跡集合中各軌跡間的運(yùn)動(dòng)方向就越相似。這也說明了本發(fā)明能預(yù)防攻擊者利用各軌跡的移動(dòng)方向識(shí)別出虛假移動(dòng)路徑。
1.3軌跡數(shù)量k對方案執(zhí)行時(shí)間的影響
最后,簡要分析軌跡數(shù)量k對本發(fā)明所提出的假軌跡生成方案在計(jì)算開銷上的影響,實(shí)驗(yàn)結(jié)果如圖5所示。由于生成的假軌跡數(shù)量隨著k的增大而增多,這就使得本發(fā)明的所需的計(jì)算時(shí)間也隨之增加。然而當(dāng)k=20時(shí),本發(fā)明成功為用戶生成假軌跡所需的計(jì)算時(shí)間僅僅需要0.38s。這說明本發(fā)明具有良好的實(shí)用性。
綜上所述,本發(fā)明在具有較低計(jì)算開銷的同時(shí),與現(xiàn)有假軌跡隱私保護(hù)方案相比,還能混淆真實(shí)軌跡與假軌跡間時(shí)空關(guān)聯(lián)性,從而有效保護(hù)軌跡發(fā)布中用戶的軌跡隱私。
本發(fā)明通過大量實(shí)驗(yàn)首先證明現(xiàn)有假軌跡隱私保護(hù)方案僅能以不高于15%的成功率保護(hù)用戶的真實(shí)軌跡。而造成上述問題的原因是現(xiàn)有假軌跡隱私保護(hù)方案不僅未考慮單條軌跡中相鄰位置間的時(shí)空關(guān)聯(lián)性,也忽略了軌跡之間的時(shí)空關(guān)聯(lián)性,使得攻擊者能正確識(shí)別出某些假軌跡,乃至推測出用戶的真實(shí)軌跡。針對上述問題,本發(fā)明從軌跡的整體方向、軌跡中相鄰位置的時(shí)間可達(dá)及移動(dòng)距離對單條軌跡中相鄰位置間的時(shí)空關(guān)聯(lián)性和軌跡之間的時(shí)空關(guān)聯(lián)性進(jìn)行分析,提出了一個(gè)假軌跡隱私保護(hù)方案。安全性分析表明,所提方案能混淆真實(shí)軌跡和假軌跡間的時(shí)空關(guān)聯(lián)性,使得攻擊者難以識(shí)別出假軌跡。大量實(shí)驗(yàn)也表明,本發(fā)明在具有較低計(jì)算開銷的同時(shí),與現(xiàn)有假軌跡隱私保護(hù)方法相比,能降低用戶真實(shí)軌跡的隱私泄露率,有效保護(hù)軌跡發(fā)布中的用戶軌跡隱私。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。