一种位置隐私保护方法及系统
技术领域
本发明属于位置隐私保护技术领域,尤其涉及一种位置隐私保护方法及系统。
背景技术
目前,业内常用的现有技术是这样的:
目前实现位置隐私保护的方法主要有三类,(1)假名,(2)随机化,(3)模糊化;假名是采用与原始数据相近的其他值代替原来真实值的方法,随机化是采用对确定的数据随机输出查询值得方法,模糊化主要是使用牺牲精度来提供隐私保护的方法。
目前实现位置隐私保护的方法主要有两种,一种k匿名,一种是差分隐私。K匿名是实现假名的一种方法,一般需要首先对数据集进行划分,然后用数据集中心数据代表整个数据集中的数据的方法;差分隐私包含两种机制,拉普拉斯机制和指数机制,拉普拉斯机制主要适用于数值数据的隐私保护,指数机制主要适用于离散数据的隐私保护,拉普拉斯机制是在原始数据上添加随机噪声,指数机制是随机化输出查询结果,模糊化是一种牺牲数据精度来保护数据的隐私的方法,如出生时间只公布某年某月,不指出具体日期,指数机制的差分隐私可以看成实现数据模糊化的一种方法。
总之,差分隐私与k匿名是实现隐私保护的最主流的实现技术,无论是k匿名还是差分隐私,均需把整个区域划分成固定的网格,在网格上进行k匿名或差分隐私变换,当有新的位置数据到达时,需要重新进行网格划分,需要花费很大的代价。
综上所述,现有技术存在的问题是:
现有的位置隐私保护方法不能够动态更新锚点集;现有技术中,需要进行网格划分,花费很大的代价,对隐私保护的强度不强。
解决上述技术问题的难度和意义:
随之移动智能终端特别是智能手机的普及,获取位置新的变得越来用容易,这一方面大大方便了人们的生活,使人们可以获得更精准的服务,另一方面也给个人隐私安全带来了巨大的威胁,研究发现,只要知道一条轨迹4个的位置信息就可以精确定该轨迹对应的具体用户,故而急需一种有效保护用户位置隐私的方法。
一个良好的位置隐私保护方法,一方面要有很高的安全等级,另一方要保证位置数据任然可以正常使用,本发明综合k匿名和差分隐私两种方法实现了一种高强度的隐私保护,同时又能最大限度的保证数据的可用性。
发明内容
针对现有技术存在的问题,本发明提供了一种位置隐私保护方法及系统。
本发明是这样实现的,一种位置隐私保护方法,所述位置隐私保护方法包括:
第一步,进行锚点的形成;
第二步,进行位置数据集的隐私变换;
第三步,进行数据发布与数据动态更新。
进一步,第一步中,锚点形成的方法包括:
For j=1to M;
For i=1to|D|;
在以li为圆心,r为半径的区域内随机选择另一记录位置l′i;
li沿着朝向l′i方向移动α*(dis(li,l′i)),其中dis(li,l′i)表示两点之间的距离;
Endfor;
Endfor;
在半径为m的圆形区域中,若有位置信息数大于k,则计算所有区域内所有位置点的中心作为锚点;
D表示位置数据集,lt表示第t个位置点,r,α为参数,0<α<1
M表示迭代次数。
进一步,第二步中,位置信息隐私变换的方法包括:
对于R中的每个锚点定义打分函数为:
对于每次查询,以公式(1)是定义的概率输出某个锚点,实现指数机制的差分隐私;
l表示被保护数据的位置,以l为圆心,d为半径做圆R,d远远大于算法1中R,圆R中包含{a1,a2,...ak}k个锚点,dis(l,ak)表示点l与锚点ak的距离。
进一步,第二步中,位置信息隐私变换的方法进一步包括:
对位置l的查询,以(1)式对应的概率依次查询获得三个锚点,分别为A,B,C;若dis(l,ai)=0,则令Pr(ai)=0.9防止l与ai重合;
计算A,B,C所在圆圆心l'作为位置l变换后的位置并输出。
进一步,第三步中,位置信息发布与更新方法包括:
批量发布,对整个数据集运行锚点形成到锚点,然后对于每一个位置数据运行位置信息隐私变换的方法,得到隐私变换后的数据,把整个数据集一起发布出去;
动态零星发布,新的位置数据被不断地添加到数据库中,当在产生锚点的过程中有新数据到达,则新添加的位置数据直接参加迭代过程,继续产生锚点;当已经发布一部分隐私数据后有新位置数据到达,则使用原来锚点运行位置信息隐私变换的方法,使用打分函数,产生满足差分隐私的对应三个锚点,计算出隐私变换后的位置。
当动态发布位置信息信息量达到一定值时,则丢弃原来隐私变换后的数据集,对原始数据集重新运行锚点形成的方法、位置信息隐私变换的方法,得到新的隐私变换后的位置数据集,重新发布。
本发明另一目的在于提供一种计算机程序,所述计算机程序实现所述的位置隐私保护方法。
本发明另一目的在于提供一种终端,所述终端实现所述位置隐私保护方法的控制器。
本发明另一目的在于提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行所述的位置隐私保护方法。
本发明另一目的在于提供一种实现所述位置隐私保护方法的位置隐私保护控制系统。
综上所述,本发明的优点及积极效果为:
本发明一方面可以保证用户位置不被泄露,同时又可以提供相对精确的位置信息。
本发明不需要进行网格划分,动态的产生锚点,与以往采用划分网格,然后寻找代表点的方法相比,减少了运算代价,提高了匿名化的效率;以往方法,当有新的数据加入时,需要重新对所有数据进行变换,本发明当有新的数据到达时,锚点位置自动调整,不需要产生新的锚点,不需要花费高昂的计算代价,故而本发明更适用于动态位置数据的隐私保护。锚点形成后用以代表其周围的多个数据(超过k个),该过程本质上实现了k匿名,具有k匿名的安全属性。
本发明,对于位置查询,按照指数机制的差分隐私输出查询结果,实现了差分隐私,故而达到了差分隐私的安全保护等级。查询位置信息时通过指数机制的差分隐私同时运用了三个锚点确定查询位置,使得被保护位置信息具有更高的可用性。
附图说明
图1是本发明实施例提供的锚点形成的迭代过程图。
图2是本发明实施例提供的计算A,B,C所在圆圆心l'作为位置l变换后的位置并输出图。
图3是本发明实施例提供的位置信息发布与更新流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
现有技术中,需要进行网格划分,花费很大的代价,造成不能动态的产生锚点,查询位置信息时没有通过差分隐私的理论确定具体位置;对隐私保护的强度不强。
下面结合具体分析对本发明作进一步描述。
本发明实施例提供的位置隐私保护方法,包括:
(1)锚点的形成
(2)位置数据集的隐私变换
(3)数据发布与数据动态更新。
1)、锚点形成,
锚点形成是一个迭代过程,具体如算法1,
算法1:
D表示位置数据集,lt表示第t个位置点,r,α为参数,0<α<1
M表示迭代次数,
For j=1to M;
For i=1to|D|;
在以li为圆心,r为半径的区域内随机选择另一记录位置l′1;
li沿着朝向l′i方向移动α*(dis(li,l′i)),其中dis(li,l′i)表示两点之间的距离;
Endfor。
Endfor
在半径为m的圆形区域中,若有位置信息数大于k,则计算所有区域内所有位置点的中心作为锚点。
算法1产生的每一个锚点可以近似代表该锚点所在圆形区域内的所有位置点,该区域内至少有k个位置点,故而锚点的形成过程可以看着是实现k匿名的过程。具体过程如图1所示。
2)、位置信息隐私变换
l表示被保护数据的位置,以l为圆心,d为半径做圆R,d远远大于算法1中R,圆R中包含{a1,a2,...,ak}k个锚点,dis(l,ak)表示点l与锚点ak的距离。
对于R中的每个锚点定义打分函数为:
对于每次查询,以(1)是定义的概率输出某个锚点,有差分隐私的知识可知,该方法实现了指数机制的差分隐私,
以下给出对位置l进行隐私变换的具体方法,见下算法2。
算法2:
(1)对位置l的查询,以(1)式对应的概率依次查询获得三个锚点,分别为A,B,C(若dis(l,ai)=0,则令Pr(ai)=0.9防止l与ai重合);
计算A,B,C所在圆圆心l'作为位置l变换后的位置并输出。如图2所示。
3)、位置信息发布与更新:
位置数据发布方法主要包含两种类型,一种是批量发布,一种是动态零星发布。
批量发布,需要对整个数据集运行算法1的到锚点,然后对于每一个位置数据运行算法2,得到隐私变换后的数据,然后把整个数据集一起发布出去。
动态零星发布,新的位置数据会被不断地添加到数据库中,(1)当在产生锚点的过程呢过中有新数据到达,则新添加的位置数据直接参加迭代过程,继续产生锚点,(2)当已经发布一部分隐私数据后有新位置数据到达,则使用原来锚点运行算法2,基于算法2使用的打分函数,产生满足差分隐私的对应三个锚点计算出隐私变换后的位置。
当动态发布位置信息信息量达到一定值时,则丢弃原来隐私变换后的数据集,对原始数据集重新运行算法1,算法2,得到新的隐私变换后的位置数据集,重新发布。具体流程如图3所示。
本发明实施例提供一种实现所述位置隐私保护方法的位置隐私保护控制系统。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用全部或部分地以计算机程序产品的形式实现,所述计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输)。所述计算机可读取存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘SolidState Disk(SSD))等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。