位置隐私保护是防止用户的历史位置和当前位置在未经用户许可的情况下被不法分子或失信组织获取,防止不法分子或不法分子根据用户的位置信息获取以及相应的背景知识,信托机构推断出用户的其他个人隐私信息,如用户的家庭住址、工作单位、工作内容、个人身体状况和生活习惯等。下面介绍几种常用的位置隐私保护技术。01基于干扰的位置隐私保护技术基于干扰的隐私保护技术主要是利用虚假信息和冗余信息来干扰攻击者窃取查询用户信息。根据查询用户信息(身份信息和位置信息)的不同,基于干扰的隐私保护技术大致可以分为假名技术和虚假位置技术。(1)假名技术假名是基于干扰的位置隐私保护技术中干扰身份信息的技术之一。用户使用假名来隐藏他们的真实身份信息。例如,用户小张所在位置为(X,Y),查询其附近的KTV,用户小张的查询请求包括:小张,位置(X,Y),“离我最近的KTV”。当攻击者拦截到这个请求后,他就可以很容易地识别出用户的所有信息。借助假名技术,用户小张使用假名小李,查询请求变为:小李,地点(X,Y),“离我最近的KTV”。这样攻击者就认为位置(X,Y)的人是小李,用户就成功隐藏了自己的真实身份。假名技术通过为用户分配一个无法追踪的标识符来隐藏用户的真实身份,用户使用这个标识符代替自己的身份信息进行查询。在假名技术中,用户需要拥有一系列的假名,为了获得更高的安全性,用户不能长期使用同一个假名。假名技术通常采用独立结构和中心化结构。在独立结构中使用时,用户何时何地更改假名只能通过自己的计算和推测来确定,这样在同一时刻可能有两个同名用户定位在不同的位置,便于服务器和攻击者知道用户使用假名。在中心化结构中使用时,用户将更改假名的权利交给匿名服务器,匿名服务器可以通过周围环境和其他用户的信息更好地完成假名的使用。为了防止攻击者通过跟踪用户的历史位置信息和生活习惯将假名与真实用户关联起来,还需要以一定的频率定期交换假名。通常,在使用假名技术时,需要在空间中定义几个混合区域(MixZone)。用户可以在混合区交换假名,但不能发送位置信息。如图1所示,进入混合区前的假名组合为(user1user2user3),混合区的假名交换会产生6种可能的假名组合。由于用户在进入混合区前后拥有不同的假名,并且用户名是假名的可能性随着进入混合区的用户数量呈指数增长,攻击者很难追踪到用户与假名相关联,进而达到位置隐私保护的效果。图1混合区假名交换混合区的大小设置和空间部署是假名技术的关键,因为混合区不需要提交位置信息,混合区太大会导致服务质量下降,混区太小会导致同一时区用户较少,假名交换效率低。当混合区只有一个用户时,不会发生假名替换,从而增加了被攻击的可能性。(2)虚假定位技术虚假定位技术是在用户提交的查询信息中使用虚假定位或添加冗余位置信息来干扰用户的位置信息。虚假定位技术可分为孤立点虚假定位和根据位置信息处理结果设置地址两种。孤立点虚假定位是指用户在向SP提交当前位置时,没有发送自己的真实位置,而是用真实位置附近的虚假位置代替。例如用户小张的位置是(X,Y),查询离他最近的KTV,用户张发送的查询请求不是:小张,位置(X,Y),“最近的”meKTV”,但会使用虚假位置(M,N)而不是真实位置。这时,他的查询请求变成:小张,位置(M,N),“离我最近的KTV”。这样,攻击者就会认为位置(M,N)的人是小张,用户小张已经成功隐藏了自己的真实位置。地址集是在发送真实位置的同时加入冗余的虚假位置信息形成的。地址集中隐藏了用户的真实位置,通过干扰攻击者对用户真实位置的判断来达到保护用户位置信息的目的。例如,用户小张的位置是(X,Y),他想查询附近最近的KTV。在用户小张这次发送的查询请求中,使用了一个包含真实位置(X,Y)的集合来代替用户的位置。位置。于是,他的查询请求就变成了:张某,地址集{(X,Y),(X,Y),(X1,Y1),(X2,Y2),(X3,Y3),…},"距离最近的KTV我”。这会使攻击者很难从地址集合中找到用户的真实位置。但是,地址集的选择非常重要。如果地址数量太少,可能达不到要求的匿名性,如果地址数量太多,又会增加网络传输的负荷。随机生成假位置的算法可以保证多次查询产生的假位置被跟踪到。(3)虚拟定位技术虚拟定位技术也是一种假定位技术,通过添加假定位也可以实现k-匿名。虚拟持仓技术要求在查询过程中,除了真实持仓信息外,还必须添加若干额外的假持仓信息。服务器不仅响应真实位置请求,还响应虚假位置请求,使得攻击者无法区分哪个是用户的真实位置。假设用户初始查询信息为(user_idlocal),local为用户当前所在位置,那么使用伪定位技术后用户的查询信息将变为q*=(user_id,local,dummy_loc1,dummy_loc2),其中dummy_loc1和dummy_loc2是生成的假位置。伪定位技术的关键是如何生成无法区分的伪定位信息。如果假位置出现在湖泊或人烟稀少的山区,攻击者可以将其排除。假位置可以由客户端直接生成(但客户端通常缺少全局环境上下文等信息),也可以由可信的第三方服务器生成。02基于泛化的位置隐私保护技术泛化技术是指将用户所在位置模糊成包含用户所在位置的区域。最常用的基于泛化的位置隐私保护技术是k-匿名技术。k-anonymous是指泛化形成的区域包括query用户和其他k-1个用户。SP无法将查询用户的位置与该区域中其他用户的位置区分开来。因此,匿名区的形成是决定k-匿名技术好坏的重要因素,往往通过中心化结构和P2P结构实现。k-匿名技术要求公开的数据中包含k个不可区分的标识符,使得特定个体被发现的概率为1/k。在位置隐私保护中,k-匿名通常需要生成一组包含k个用户的查询集,然后用户可以使用这些查询集形成一个共同的匿名区域。图2显示了由用户User1、User2和User3组成的匿名区域((Xl,Yl),(Xr,Yr))。图2混合区假名交换下面介绍k-匿名技术中通常需要的一些参数。①匿名度k:定义了匿名集中的用户数。匿名度k的大小决定了位置隐私保护的程度,k值越大意味着匿名集包含的用户越多,攻击者越难以区分。②最小匿名区域Amin:定义需要k个用户位置组成一个空间的最小值。当用户分布密集时,形成的匿名区域太小。即使攻击者无法从匿名集中准确区分用户,匿名区域也可能将用户的位置暴露给攻击者。③最大延迟时间Tmax:定义用户可接受的最长匿名等待时间。k-anonymity技术在某些场景下仍然可能导致用户隐私信息的暴露。例如,当匿名集合中用户所在位置的经纬度信息可以映射到具体的物理位置(如医院)时。对此,提出了增强的l-diversity和t-closeness等技术,这些技术要求匿名中心化用户的位置相距足够远,以至于他们不在同一个物理位置。k-匿名技术可以通过匿名服务器完成匿名集的收集和查询的发送,也可以通过由多个客户端组成的分布式点对点技术来完成,形成对等网络。网络。(1)中心化k-匿名典型的中心化k-匿名是区间匿名。区间匿名算法的基本思想是:匿名服务器构建一个四叉树数据结构,递归地将平面空间划分为4个面积相等的正方形区间,直到得到的最小正方形区间的面积为允许用户要求由系统直到采用的最小匿名区域,每个方格区间对应四叉树中的一个节点。系统中的用户每隔一定时间向匿名服务器报告自己的位置坐标,匿名服务器更新统计每个节点对应区间内的用户数。当用户U进行匿名查询时,匿名器通过检索四叉树为用户U生成一个匿名区域ASR。区间匿名算法从包含用户U的四叉树的叶子节点开始搜索到四叉树的根,直到找到一个包含不少于K个用户(包括用户U)的节点,然后该节点对应的区域可以作为一个用户U的匿名区域。如图3所示,如果用户U1发起K=2的匿名查询,区间匿名算法会先搜索象限区间[(0,0),(4,4)],其中包含不少于两个用户,则向上一级到根,搜索象限区间[(0,0),(2,2)]。该象限区间包含3个用户,大于所需的两个。该算法停止搜索并将此区间用作用户U1的匿名区域。由于该算法得到的匿名区包含的用户数可能远大于K,会增加LBS服务器的查询处理负担和网络流量负载。图3k-匿名示例Casper匿名算法类似于区间匿名算法,但不同于区间匿名算法:Casper使用Hash表来识别和访问四叉树的叶子节点,当搜索节点用户数小于K,首先会搜索它的两个相邻的兄弟节点。如果该节点与其相邻的两个兄弟节点合并后的用户总数大于K,则将其合并并作为匿名区域,否则,将其父节点进行搜索。Casper生成的匿名区域比区间匿名算法生成的匿名区域小,会减轻网络的负载。希尔伯特匿名算法的基本思想是通过希尔伯特空间填充曲线将用户的二维坐标位置转换为一维的希尔伯特值进行匿名,并按照曲线通过的先后顺序对用户进行编号。这个数就是用户的希尔伯特值,相邻的k个用户在同一个桶中。匿名集包括请求服务的用户的桶中的所有用户。计算匿名集的最小外接矩形作为匿名区域。如果两个用户在二维空间相邻,那么映射到一维空间的希尔伯特值相邻的概率更高。Hilbert匿名算法可以满足绝对匿名。如图4所示,用户U1的匿名度为3,他和他的相邻用户U3、U4组成一个匿名区域。图4希尔伯特匿名示例(2)P2P结构下的k-匿名性基于P2P结构的k-匿名查询算法的基本思想是:假设所有节点都是可信的。每个用户拥有两个独立的无线网络,一个网络用于与LBS通信,另一个网络用于P2P通信,系统内的用户都是安全可信的。一个完整的查询流程包括以下3个步骤。①同行查询。移动用户需要通过单跳或多跳网络找到不少于k-1个对等邻居。②生成匿名区。移动用户与自己找到的k-1个邻居组成一个群组,并将自己准确隐藏在一个覆盖整个群组所有用户的区域(即匿名区域)。如果生成的ASR区域小于用户要求的最小匿名区域Amin,则需要将匿名区域ASR扩展到最小匿名区域Amin。③选择代理商并查询。为了防止攻击者通过移动蜂窝定位技术进行攻击,移动用户需要在形成的组中随机寻找一个对等邻居,并将其作为代理。通过专门用于P2P通信的网络,将生成的匿名区域和查询参数告知agent,agent通过另一个网络联系LBS服务器,发送查询参数和匿名区域,接收候选集,然后代理使用专用的基于P2P的网络将候选集返回给查询用户。最后,查询用户对返回的候选集进行过滤,得到查询结果。03基于模糊方法的位置隐私保护技术位置混淆技术的核心思想是通过降低位置精度来提高隐私保护。模糊方法可以用语义位置代替坐标,即使用语义地标或参考对象来代替基于坐标的位置信息来实现模糊化。还有一种模糊方法,用圆形区域代替用户的真实位置。此时,用户的初始位置本身被视为一个圆形区域(而不是一个坐标点),并提出了三种模糊方法:放大、平移和缩小。使用这三种方法中的一种或两种的组合,可以生成满足用户隐私指标的圆形区域。例如,可以提交包含用户位置的经纬度坐标转换的位置的圆形或矩形区域作为用户位置。提交查询时,我们将用户的真实位置(X,Y)替换为圆形区域C1。此外,可以采用基于物理位置语义的位置混淆技术,提交用户的位置而不是用户的特定坐标。比如用西安交通大学校园内的语义位置“图书馆”来代替我的具体坐标;您也可以使用“兴庆公园”黑点位置所示的用户发起查询“最近的加油站”的定位服务。混淆技术的关键在于如何生成混淆空间。用户始终处于混淆区域的中间,或者大部分混淆区域是用户无法到达的河流等地方,或者混淆区域人口比较稀少,都会增加攻击者被攻击的可能性发现用户的真实位置。大多数模糊技术可以直接在客户端实现,不需要额外的信息,因此它们大多使用独立的结构。与泛化方法不同,大多数模糊方法没有能力对LBS返回的结果进行处理,往往会产生比较粗糙的LBS结果。例如图5中的兴庆公园模糊化用户请求“最近的加油站”时,实际上S1就是最近的加油站,将C1作为其模糊区域可以找到正确的结果;当C2作为模糊区域时,SP返回S2作为结果。所以,虽然C2的半径比C1的半径大,使得隐私程度更高,但此时SP并不能最好地满足用户需求。模糊方法技术应该解决的是如何在“保证LBS服务质量”和“满足用户隐私需求”之间找到平衡点的问题。解决该问题的一种方法是在SP与用户之间采用迭代查询的方式,不断询问用户是否同意降低其隐私指标,在有限的迭代次数内尽可能提高服务质量。图5基于模糊方法的隐私保护技术04基于加密的位置隐私保护技术在基于位置的服务中,基于加密的位置隐私保护技术对用户的位置和兴趣点进行加密,然后在密文空间中检索或计算,但是SP无法获得用户的位置和查询的具体内容。两种典型的基于加密的位置隐私保护技术是基于隐私信息检索(PrivateInformationRetrieval,PIR)的位置隐私保护技术和基于同态加密的位置隐私保护技术。(1)基于隐私信息检索(PIR)的位置隐私保护技术PIR是客户端和服务器之间通信的一种安全协议,可以保证当客户端向服务器发起数据库查询时,客户端的隐私信息不会泄露给服务器。完成查询并返回查询结果。例如,服务器S有一个不可信任的数据库DB,用户U想查询数据库DB[i]中的内容。知道i的值。在基于PIR的位置隐私保护技术中,服务器无法获知移动用户的位置和查询的具体对象,从而阻止了服务器获取用户的位置信息,并根据用户的查询确定用户的兴趣点对象并推断用户的位置。隐私信息。加密思路如图6所示:用户想获取SP服务器数据库中位置i的内容,用户将查询请求加密获取Q(i),发送给SP,SP不知道i求X,将结果R(X,Q(i))加密返回给用户,用户可以很方便的计算出Xi。包括SP在内的攻击者无法通过解析得到i,也就无法获得查询用户的位置信息和查询内容。图6PIR方案PIR可以保证用户请求、信息检索和结果返回都是安全可靠的。但是PIR需要SP存储整个区域的POI和地图信息,对存储空间和检索效率提出了极大的挑战。如何设计更合适的存储结构和检索方式是PIR持续研究的重点。(2)基于同态加密的位置隐私保护技术同态加密是一种支持密文计算的加密技术。对同态加密后的数据进行计算等处理。处理过程不会泄露任何原创内容。处理后的数据用密钥解密,得到的结果和没有加密的结果是一样的。基于同态加密的位置隐私保护最常用的场景是计算相邻用户之间的相对距离。可以在不知道双方具体位置的情况下计算出双方的距离,比如微信的“摇一摇”功能。Paillier同态加密是一种常用的基于加密隐私保护技术的同态加密算法,最典型的有Louis协议和Lester协议。Louis协议允许用户A计算自己与用户B的距离,而Lester协议规定只有当用户A和用户B的距离在用户B设定的范围内时,才允许用户A计算他们之间的距离。05位置隐私攻击模型网络中的攻击者是对用户位置隐私的最大威胁。攻击者针对不同的位置隐私保护技术形成了不同的攻击模型。这些攻击模型根据攻击者的行为主要可以分为主动攻击模型和被动攻击模型。1、主动攻击模型攻击者向受害用户或LBS服务器发送恶意信息,从而获取用户的位置信息或干扰用户使用LBS服务。主要包括伪装用户攻击和信息泛洪攻击。(1)伪装用户攻击伪装用户攻击主要针对基于P2P结构的位置隐私保护技术。在P2P结构下,同一网络中的用户相互信任。攻击者可以伪装成用户的朋友或其他普通用户,也可以在网络中用户的移动设备中植入病毒来控制这些设备。此时,攻击者会主动向受害用户申请协助定位。由于受害用户的信任,攻击者可以轻易获取用户的精确位置信息。伪装用户攻击对基于同态加密的位置隐私保护技术也有很好的攻击效果。当攻击者被受害用户信任或与受害用户的距离在受害用户设定的范围内时,攻击者可以计算出自己与受害用户的相对距离。根据三角定位原理,当攻击者成功获取三次或以上的相对距离后,通过简单的计算就可以知道受害用户的精确位置。目前,现有的位置隐私保护算法都不能很好地解决伪装用户的攻击。(2)信息泛洪攻击信息泛洪攻击的原理是拒绝服务。在独立结构和集中结构中,攻击者向LBS服务器发送大量的LBS请求,占用LBS服务器的带宽和流量,从而影响LBS服务器对受害用户的服务效率。在P2P结构中,由于用户之间可以发送辅助定位应用,攻击者可以直接向受害用户发送大量的辅助定位应用,这些应用就会向受害用户大量涌入。受害用户不仅需要接受信息,还需要对这些信息进行处理和转发。大量消息会阻塞受害用户的移动网络,甚至导致移动设备崩溃。2.被动攻击模型被动攻击是指攻击者被动地收集受害用户的信息,并通过收集到的信息推断出用户的真实位置。被动攻击主要包括基于历史信息的攻击、基于语义信息的攻击和基于社会关系的攻击。(1)基于历史信息的攻击基于历史信息的攻击主要是收集与受害用户相关的历史信息,分析用户对LBS的使用习惯,推断出用户的具体位置。历史信息包括受害用户上一次LBS请求的时间、内容、频率等。例如,如果受害人经常使用来自不同位置的导航在晚上或周末到达同一位置,则该位置很可能是受害人的家庭住址。同样,如果受害用户在工作日经常查询某个地点附近的餐馆,则该地点很可能是用户的工作地点。(2)基于语义信息的攻击。基于语义信息的攻击者可以通过分析受害用户所在区域的信息和周围环境的语义信息,缩小用户所在区域,增加识别用户位置的概率。例如,攻击者截取了受害用户的位置区域信息。分析资料后发现,该区域包括一个人工湖、几栋高层建筑和一个停车场。由此可以推断,用户位于湖边的概率远小于用户位于建筑物和停车场的概率。如果还知道用户正在使用导航功能寻找到某个地方的方向,则用户在停车场的概率高于用户在建筑物中的概率。(3)基于社会关系的攻击基于社会关系的攻击主要利用当今发达的社交网络。首先,攻击者收集受害用户的社交信息,通过攻击社交网络中的其他用户来间接攻击受害用户。如果用户A非常重视其所在位置的隐私保护,攻击者就很难直接攻击用户A。但是,如果他通过社交网络得知用户A和用户B是同事,攻击者就可以攻击用户B,获取用户B的工作地点,从而推断出用户A的工作地点。
