近年来, 随着科技的不断发展, 基于位置的服务(Location Based Service, LBS)作为移动互联网应用得到越来越广泛的传播, 为人们生活提供了便利. 但是由于LBS服务器是通过获取用户位置向用户发布相应的查询信息结果, 这就导致了用户在享受位置服务的同时, 也更容易遭受个人位置隐私信息泄露的风险.
现阶段位置隐私保护大致分为两部分: 基于快照LBS的位置隐私保护和基于连续LBS的位置隐私保护. 快照LBS是指用户向位置服务提供商发出单次LBS请求, 获取相应查询结果. 连续LBS[1]是指用户按照一定频率将自己的位置信息周期性的发送给LBS服务器, LBS服务器通过用户周期性的位置信息和搜索内容, 实时将最新的结果返回给用户. 然而, 在连续查询过程中某些可以关联推断出的背景因素结合特定场景可能会给用户带来隐私威胁. 如图1, 用户A在连续发送三次LBS请求时, 分别处于三个不同匿名集{A,B,C,D}{A,E,F,G}{A,H,I,J}, 攻击者以根据用户的轨迹关联重构用户A的过程轨迹. 针对此类问题, 文献[2]首次提出了KAA匿名算法, 保证匿名用户在n次查询之后还保持在初始匿名集中. 这也就要求在构建连续查询匿名集时, 需要尽可能的将用户附近运动趋势相同的匿名用户加入到匿名集中, 以避免推断攻击.
目前, 现有连续LBS请求中随机生成的虚假位置大多忽略攻击者已知的地理背景信息[3]和真实用户的运动模式. 即使用户采用了一定的匿名方法保护位置隐私, 攻击者还是可以通过相应背景知识攻击用户位置隐私. 针对现有连续LBS请求形成虚假轨迹可信性过低造成的位置隐私泄露问题, 提出了一种更加真实的相似路径形成算法, 主要工作如下:
(1) 利用网格单元对历史用户请求密度进行划分, 通过每次采样时刻时真实用户周围的历史用户请求密度计算相对请求概率, 使匿名组的熵达到最大, 从而切断请求与位置间的联系.
(2) 通过真实用户运动轨迹的方向、速度对相似轨迹集合建立约束, 关注用户移动位置间的时空相关性, 使其更加贴近真实用户运动轨迹以达到位置隐私保护目的.
本文第1节讲述相关工作, 第2节讲述本文研究的预备知识, 第3节讲述LPBSP位置隐私保护方法, 第4节分析方法的安全性, 第5节讲述本文实验结果及分析, 最后第6节总结.
1 相关工作 1.1 抑制法基于轨迹数据抑制法的隐私保护技术是指在真实用户轨迹中抑制某些用户的敏感信息, 使攻击者无法将其与用户相关联, 从而达到隐私保护的目的. Gruteser等[4]将地图上的地理区域划分成敏感区域和非敏感区域, 通过延迟或抑制敏感区域中真实用户的位置更新信息来保护位置隐私. 文献[5]通过MASKIT系统通过过滤保护用户位置隐私的上下文信息流进行隐私检查, 从而限制攻击者获得用户的敏感位置信息. 在匿名过程中只考虑状态的抑制, 隐藏会导致隐私泄露的应用程序. 然而, 单纯的抑制法通过抑制敏感位置或访问频次高的数据进行位置隐私保护, 实现简单但是信息丢失率较大.
1.2 历史数据泛化法历史数据泛化法会引入可信的第三方, 将轨迹信息中的采样点泛化成对应的匿名区域, 以达到隐私保护的目的. 泛化技术可分为空间泛化技技术和时间泛化技术[6]. 空间泛化是指在空间区域范围内降低真实用户的位置精度, 从而增加位置区域上的不确定性. Wang等[7]为确保用户在每次提交LBS请求时构造的匿名区中包含的匿名用户是相同的, 提出了一种基于贪心算法的匿名区构造方法, 但这样会使匿名区面积随着查询次数的增加而增加, 造成严重的通信和计算开销. Pan X等[8]提出了一种ICliqueCloak的隐身算法, 在连续状态中, 采用位置k-匿名性和隐身粒度作为隐私度量, 划分区域候选集合, 当用户发送请求时, 可以快速识别并生成相应隐藏区域. 2013年Latha K[9]在ICliqueCloak的基础上考虑与用户位置相关的处理延迟和匿名化成本, 提出KRUPTO算法, 增加匿名区域覆盖形成最大团.
时间泛化是指在增加时间范围内用户精确位置的不确定性. Hwang RH[10]提出r-匿名机制用来模糊用户真实轨迹, 将k-匿名与s-路段合并, 引入时间混淆技术打破用户进行LBS请求提出的时间序列, 运用模糊过程的随机性提供轨迹隐私保护. Palanisamy[11]在路网结构中使用mix-zone模型, 使k个用户在混合区等待时间相等, 并打乱用户进出混合区的关联顺序, 以确保隐私保证. 历史数据泛化法对实时性要求很高.
1.3 假数据法假数据法多指利用k-匿名技术[12,13]向真实用户运动轨迹中添加假数据, 通过生成k–1条假轨迹, 将其一起发送给LBS服务器, 以达到匿名效果. 假数据的添加可充分考虑现实环境约束, 由用户定义虚假数据产生方式, 从而提出更加适用于用户的特定需求位置隐私保护算法. 其中, Kido[12]等针对用户在地理环境的分布情况利用普遍性, 拥挤度和分布均匀性三方面设计MN和MLN算法, 首次提出添加假位置达到隐私保护的目的. Gao等[14]提出了用于参与式感知的轨迹隐私保护框架, 从图论的角度出发, 提出考虑时间因素的理论混合区模型. Dong等[15]考虑用户个性化隐私需求, 通过短期位置暴露概率、长期轨迹暴露概率、轨迹偏移距离、轨迹局部相似度和服务请求概率等五个参数让用户进行自定义生成虚假轨迹, 但此方法没有考虑攻击者背景信息. Ye AY等[16]通过可信的第三方将伪查询插入真实查询中, 防止从用户标识到查询内容的反向映射. 值得注意的是, 在添加假轨迹时要保证添加的假的干扰数据不能对真实轨迹产生严重后果.
本文提出的相似轨迹LPBSP方法可以更好地符合真实用户轨迹模式, 使相似轨迹在地图上分布更加合理, 在一定程度上避免了推理攻击和最大移动边界攻击.
2 预备知识 2.1 系统结构本文提出的基于相似路径的位置隐私保护方法(LPBSP)系统采用中心式服务器结构, 包括移动终端、可信第三方匿名服务器(TTP, Trusted Third Party)以及LBS服务器三部分组成, 系统架构如图2所示. 其优点在于具有用户全局信息, 隐私保护程度高、移动终端和TTP间的通信和计算开销较少.
移动终端中的GPS模块获取移动用户的自身位置坐标, 将查询请求发送给TTP; 经过TTP中的位置匿名模块做匿名处理生成相似轨迹, 并将查询请求发送给LBS服务器; LBS服务器根据查询后选结果将候选集发送给TTP, 通过TTP的结果求精模块过滤精确结果并把结果返回给用户.
2.2 相关定义本文采用基时空网格划分方法, 将城市地理区域预划分为网格区域, 每个网格都有自己的唯一标识gidgid.
定义1(保护的用户属性).
定义2(k-匿名组).
定义3(整体轨迹方向偏移度). 表示采样时刻
$\begin{aligned}&\cos \vartriangle {\theta _i} = \frac{{dot\left( {\overrightarrow {{p_i}} ,\overrightarrow {p_{_i}^j} } \right)}}{{|\overrightarrow {{p_i}} | \cdot |\overrightarrow {p_{_i}^j|} }} \\&=\frac{{\left( {{x_i} - {x_{i - 1}}} \right)\left( {{y_i} - {y_{i - 1}}} \right) + \left( {x_{_i}^j - x_{i - 1}^j} \right)\left( {y_{_i}^j - y_{_{i - 1}}^j} \right)}}{{\sqrt {{{\left( {{x_i} - {x_{i - 1}}} \right)}^2} + {{\left( {{y_i} - {y_{i - 1}}} \right)}^2}} \sqrt {{{\left( {x_{_i}^j - x_{i - 1}^j} \right)}^2} + {{\left( {y_{_i}^j - y_{_{i - 1}}^j} \right)}^2}} }}\end{aligned}$ |
所以
$\begin{aligned}&\vartriangle {\theta _i} =\\&{\cos ^{ - 1}}\frac{{\left( {{x_i} - {x_{i - 1}}} \right)\left( {{y_i} - {y_{i - 1}}} \right) + \left( {x_{_i}^j - x_{i - 1}^j} \right)\left( {y_{_i}^j - y_{_{i - 1}}^j} \right)}}{{\sqrt {{{\left( {{x_i} - {x_{i - 1}}} \right)}^2} + {{\left( {{y_i} - {y_{i - 1}}} \right)}^2}} \sqrt {{{\left( {x_{_i}^j - x_{i - 1}^j} \right)}^2} + {{\left( {y_{_i}^j - y_{_{i - 1}}^j} \right)}^2}} }}\end{aligned}$ |
在整个采样阶段相似轨迹
$d \cdot sim = \frac{1}{n}\sum\limits_{i = 1}^n {\frac{{|\vartriangle {\theta _i}|}}{{2\pi }}} $ | (1) |
显而易见,
定义4(局部速度相似度). 受真实环境影响, 用户移动速度不是一成不变的. 假设真实用户移动速度序列为
$v \cdot sim = \frac{1}{{1 + ||v_i^{\rm{j}}| - |{v_i}||}}$ | (2) |
可知
定义5(匿名区域
在连续请求状态下,轨迹方向偏移角度
若在某个采样点时刻匿名区域内用户数量发生了很大的变化, 则很有可能是真假用户的位置数据进行了某种变化, 从而增加真实用户位置泄露风险. 因此, 为避免虚假位置点急剧变化情况, 在生成候选位置点时需要对其进行筛选处理. 本文采用历史位置点和生成虚假位置点相结合的方式, 以用户密度为基础, 使真实轨迹和相似轨迹在采样时刻更加均匀, 提高匿名效果. 具体过程如下:
1) TTP记录每个网格内用户请求密度, 并预先设置密度阈值
2) 在进行候选位置筛选阶段前, 需要根据预设参数计算相似轨迹生成区域. 假设在
真实用户相对请求概率:
${q_i} = \frac{{{d_i}}}{{{d_u} + \displaystyle\sum\limits_{j = 1}^{k - 1} {d_i^j} }},\left( {j = 1,2,\cdots,k - 1} \right)$ | (3) |
虚假用户相对请求概率:
$q_i^j = \frac{{d_{_i}^j}}{{{d_u} + \displaystyle\sum\limits_{j = 1}^{k - 1} {d_i^j} }}$ | (4) |
其中,
${H_i} = - \left( {{q_i}{{\log }_2}{q_i} + \sum\limits_{j = 1}^{k - 1} {q_{_i}^j{{\log }_2}q_{_i}^j} } \right)$ | (5) |
为使每次采样时刻匿名组用户所在区域中请求密度更加均匀, 我们需要一个衡量标准, 在理想情况下当真假用户所在区域密度完全相等时, 熵的值最大有:
${H_c} = - {\log _2}\frac{1}{k} = {\log _2}k$ | (6) |
当H的值越趋近于
${C_i} = \arg \max {H_i}$ | (7) |
确定此时候选对象集
CLS算法如下:
算法1. CLS算法
输入: 每个单元格内历史用户请求密度,
输出:
初始化
1. 将区域中各个单元格中的用户请求密度进行排序;
2. 剔除不可到达区域;
3. 从排序列表中选取与真实用户请求区域密度相似的
4. while
5. 当
6.计算
7. 进行
8. end while
9. 选取
10. 确定
11. 确定候选对象集
12.输出
LPBSP方法中相似轨迹是TTP根据真实用户的当前位置和前一次匿名区域内所有的匿名用户为基础, 通过预先设置的参数对生成的虚假轨迹进行一定约束, 使设置的相似轨迹更加贴近真实用户轨迹状态. 在采样时刻, 用户发起连续LBS请求, 真实用户u在
DVS算法如下:
算法2. DVS算法
输入:
输出: 相似路径集合
设置中间集合
1. if
2.将
3. 从
4. If
5. 将uji
6. end if
7. end if
8. if (satisfy
9. else
10. 将不符合的
11. 计算U内用户数量
12. if
13. 从中随机选取
14. end if
15. end if
16. 确定
重复步骤2到16直到
针对轨迹隐私保护的攻击者可以根据发起连续LBS请求的时间序列归纳用户大致行动方向, 根据相应已知条件发起推理攻击、最大移动边界攻击等攻击模式. 这是由于真实连续LBS的请求位置序列有一定的上下文联系, 攻击者可以分析真假轨迹的差异性推断出真实用户.
针对推理攻击, 若存在:
证明: 在
针对最大移动边界攻击, 本文以真实用户运动方向和速度为基础, 由用户自定义参数范围, 充分考虑真实情况虚假位置的不可到达性, 通过速度和方向偏移相似程度限制抵抗最大移动边界攻击.
5 实验结果及分析本文在Windows sever 2008服务器下采用Java语言开展LPBSP实验, 实验采取Thomas Brinkhoff路网生成器生成Oldenburg城市路网中的用户及兴趣点的实验数据, 并与文献[12]做对比实验, 验证本文LPBSP方法在匿名成功率、执行时间、熵三个维度上具有一定的贡献. LPBSP试验参数如表1所示.
在匿名成功率方面, 如图4所示文献[12]基于虚假路径的设置, 只要有匿名需求便可构建虚假用户进行协作匿名, 没有考虑到虚假用户的真实性, 假如真实用户在海边, 构建的虚假用户很可能会在海里, 从而导致匿名效果的损失, 而本文LPBSP方法是基于用户查询的历史数据来构建协作匿名, 在真实用户发起查询时, 周围的历史数据可能会存在不足而导致匿名组构建失败, 因而在匿名成功率方面略低于文献[12], 但是本文方法仍然具有较高的匿名成功率.
在方法执行时间方面, 本文LPBSP方法由于需要获得生成区域范围内所有网格用户请求密度, 然后进行排序, 时间复杂度为nlogn. 如图5所示, 文献[12]由于不考虑其他因素, 仅以构建虚假路径为核心, 因而执行效率高, 执行时间较短. 本文方法由于在构建协作用户的虚假路径时综合考虑了协作用户真实性, 协作路径相似性等诸多因素, 因而在执行时间方面略长与文献[12], 但是总体来看执行时间仍旧保持在较快的速度, 毫秒的差距不影响用户体验.
在探究位置隐私保护度方面, 如图6所示, 本文采用熵的形式与文献[12]进行对比实验, 通过实验结果图所示, 可以发现, 熵随着k值的增大而逐渐增大, 本文LPBSP方法相较于文献[12]中具有一定优势, 原因在于本文考虑了真实用户的历史位置数据进行匿名, 并对用户的轨迹及移动速度进行了相似度的设置, 相较于文献[12]单纯的构建虚假路径更具有真实性, 使得匿名虚假轨迹与真实轨迹具有较高的相似性, 因而具有较好的隐私保护度. 当然相对于理想状态熵的最优值
6 结论与展望
本文针对连续查询位置隐私保护问题中可能存在的因协作用户交叠而暴露真实查询用户的问题, 提出了基于相似路径的位置隐私保护方法(LPBSP), 首先采用用户历史数据构建初始协作匿名组, 然后利用用户历史位置数据、速度及轨迹相似度等对协作路径加以约束, 使得协作路径更具有真实性, 加以迷惑攻击者, 最后通过实验验证本文方法虽然在匿名成功率、执行时间上略逊色于文献[12], 但是在位置隐私保护度方面有了较好的应用, 在研究位置隐私方面有一定价值.
[1] |
胡德敏, 郑霞. 基于连续查询的用户轨迹k-匿名隐私保护算法
. 计算机应用研究, 2017, 34(11): 3421-3423, 3427. DOI:10.3969/j.issn.1001-3695.2017.11.049 |
[2] |
Xu T, Cai Y. Location anonymity in continuous location-based services. Proceedings of the 15th Annual ACM International Symposium on Advances in Geographic Information Systems. Seattle, WA, USA. 2007. 39.
|
[3] |
Gustav YH, Wang Y, Domenic MK, et al. Velocity similarity anonymization for continuous query location based services. Proceedings of 2013 International Conference on Computational Problem-Solving. Jiuzhai, China. 2013. 433–436.
|
[4] |
Gruteser M, Liu X. Protecting privacy, in continuous location-tracking applications. IEEE Security & Privacy, 2004, 2(2): 28-34. |
[5] |
Götz M, Nath S, Gehrke J. MaskIt: Privately releasing user context streams for personalized mobile applications. Proceedings of 2012 ACM SIGMOD International Conference on Management of Data. Scottsdale, AZ, USA. 2012. 289–300.
|
[6] |
张学军, 桂小林, 伍忠东. 位置服务隐私保护研究综述. 软件学报, 2015, 26(9): 2373-2395. |
[7] |
Wang Y, Xu DB, He X, et al. L2P2: Location-aware location privacy protection for location-based services. Proceedings of 2012 IEEE INFOCOM. Orlando, FL, USA. 2012. 1996–2004.
|
[8] |
Pan X, Xu JL, Meng XF. Protecting location privacy against location-dependent attacks in mobile services. IEEE Transactions on Knowledge and Data Engineering, 2012, 24(8): 1506-1519. DOI:10.1109/TKDE.2011.105 |
[9] |
Latha K, Jayanthi S, Elavenil V. KRUPTO: Supporting privacy against location dependent attacks in wireless sensor network. Proceedings of 2013 International Conference on Communication and Signal Processing. Melmaruvathur, India. 2013. 908–912.
|
[10] |
Hwang RH, Hsueh YL, Chung HW. A novel time-obfuscated algorithm for trajectory privacy protection. IEEE Transactions on Services Computing, 2014, 7(2): 126-139. DOI:10.1109/TSC.2013.55 |
[11] |
Palanisamy B, Liu L. MobiMix: Protecting location privacy with mix-zones over road networks. Proceedings of the 2011 IEEE 27th International Conference on Data Engineering. Hannover, Germany. 2011. 494–505.
|
[12] |
Kido H, Yanagisawa Y, Satoh T. An anonymous communication technique using dummies for location-based services. Proceedings of 2005 International Conference on Pervasive Services. Santorini, Greece. 2005. 88–97.
|
[13] |
Wu XC, Sun GZ. A novel dummy-based mechanism to protect privacy on trajectories. Proceedings of 2014 IEEE International Conference on Data Mining Workshop. Shenzhen, China. 2015. 1120–1125.
|
[14] |
Gao S, Ma JF, Shi WS, et al. TrPF: A trajectory privacy-preserving framework for participatory sensing. IEEE Transactions on Information Forensics and Security, 2013, 8(6): 874-887. DOI:10.1109/TIFS.2013.2252618 |
[15] |
董玉兰, 皮德常. 一种基于假数据的新型轨迹隐私保护模型. 计算机科学, 2017, 44(8): 124-128, 139. |
[16] |
Ye AY, Li YC, Xu L. A novel location privacy-preserving scheme based on l-queries for continuous LBS. Computer Communications, 2017, 98: 1-10. DOI:10.1016/j.comcom.2016.06.005 |