一种基于位置服务的连续查询隐私保护方法

文档序号:6603900阅读:152来源:国知局
专利名称:一种基于位置服务的连续查询隐私保护方法
技术领域
本发明涉及位置服务领域,尤其是涉及一种基于位置服务的连续查询隐私保护方 法。
背景技术
为保护位置隐私,Marco Gruteser等提出了基于时空匿名的位置K_匿名模型当 一个移动用户的位置无法与其他(K-1)个用户的位置相区别时,称此位置满足位置K-匿 名。为达到位置K-匿名,每一个用户的位置被扩展为一个匿名区域,其中至少包含K个用 户。图1给出了一个位置3-匿名(K = 3)的例子,A、B、C的位置被扩展为区域R(用户A、 B、C组成匿名集),攻击者无法确定他们在R中的确切位置。在某些情况下,攻击者可能获 知用户的真实位置,此时查询中的位置便成为伪标识符(QI),标识出提出查询的用户。值得 庆幸的是,位置K-匿名模型也适用于保护查询隐私。如图1(b)所示,查询中的位置被扩展 为相同区域R,使得确切的查询位置得以隐藏,从而保护了查询隐私。位置服务中现有的大部分隐私保护工作均针对快照(snapshot)查询类型。然而, 由于相同用户在不同时刻的匿名集不同,所以现有的匿名算法不能直接用于连续查询隐私 保护。如图2所示,系统中存在{A,B,C,D,E,F}六个用户。攻击者事先知道六个用户中存 在连续查询,但并不知道连续查询是什么,以及是由谁提出的。在三个不同时刻ti、ti+1、 ti+2,用户A分别形成了三个不同的匿名集,即{A,B, D}、{A,B, F}、{A,C,E},如图2中实线 矩形框所示。将三个匿名集取交,即可获知是用户A提出的连续查询以及其查询类型。正如我们所观察到的,上述问题主要是由同一用户㈧在其有效生命期内形成的 匿名集不同而造成的。所以,解决此问题的最简单方法是让提出连续查询的用户在最初时 刻形成的匿名集,在其查询有效期内均有效。如在前面的例子中,用户A在时刻、形成的匿 名集是{A,B, D},则在ti+1,ti+2时刻,匿名集应该依然是{A,B,D},如图2中虚线矩形所示。 虽然这种方式成功的保护了查询隐私,但是也将产生新的问题第一,位置隐私泄露。如在 图2(b)中,在ti+1时刻,A、B、D位置过于邻近,造成匿名框过小(极端情况下集中于一点), 位置隐私泄露;第二,服务质量QoS降低。服务质量与数据精度成反比。在ti+2时刻,{A,B, D}分布在距离较远的位置,形成的匿名框过大,造成过高的查询处理代价。在极端情况下, 匿名集中所有用户背向而行,一段时间之后,匿名区将覆盖整个服务区域。

发明内容
本发明是鉴于上述技术问题而产生的。本发明的一个目的是提出一种基于位置服 务的连续查询隐私保护方法。在一个方面中,根据本发明的基于位置服务的连续查询隐私保护方法包括步骤 A、移动用户用于将查询请求0 =(说/,k,rexp,泼送给匿名服务器,其中id是用户标识; 1 = (x,y)表示查询请求Q所在位置;速度P = 是一个向量,其中Vx/Vy表示查询在x/y 轴方向上的速度分量;(1, ^,t)表示查询请求Q在时刻t在位置为1上,并且运动速度为;Trap表示该查询过期时间;con表示查询内容;B、匿名引擎根据用户标识id判断该查询请求 Q是新查询还是活动查询;C、如果是新查询,匿名引擎对查询请求0 =(似,/,〗,〖,7;%,进 行匿名处理,并将匿名处理后的请求Q= (id' ,Rv,t,maxT,con)发送给提供商服务器,其中Rv,t是将1匿名后的位置, maxT是与Q在同一匿名组的所有查询的最大过期时间;D、提供商服务器根据所接收到的请 求Q = (id',Rv,t,maxT, con)进行查询处理,并将查询结果的候选集返回给匿名服务器; E、匿名服务器从数据库服务器返回的候选结果中,选择正确的查询结果返回给相应的移动 对象。在这个方面中,其中步骤C进一步包括步骤C1、对查询请求Q中的用户id进行处 理以得到假名id',并记录id与假名id'的对应关系;C2、在TPR-树上迅速找到查询请求 Q的连续最近邻连续簇集合CSrm ;C3、扫描集合CSrm中的每一个簇Ci,找到与Q具有最小相 似度的簇Cmin ;C4、检测候选匿名集cmin的长和宽在候选匿名集的最小查询有效期内是否小 于5 p*min (Awidth,Aheight),其中S p是系统定义参数5 p,Awidth和AMght是系统的长和宽,如 果满足这个要求,则执行步骤C5,否则执行步骤C7 ;C5、对于每一个在CSrm中不在Cmin中的 查询0,如果Cmin U { }满足Sq-扭曲度模型,则把o插入Cmin,并相应的更新(_和0原所 在簇信息,重复这样的过程,直至Cmin中包含K个查询;C6、包含查询数大于K的Cmin组成匿 名集合,从而得到Rv, t和maxT,并执行步骤C8 ;C7、将查询请求Q插入Cmin,重新更新Cmin的 质心,并将Cmin插入到TPR-树中;C8、匿名引擎将(Ru,Rv, t)发送到知识库,知识库收到此 匿名集后将其以(id,RL,t, Rv,t,maxT)的形式存储在数据库中;C9、匿名引擎将匿名处理后 的请求Q = (id',Rv,t,maxT, con)发送给提供商服务器。在这个方面中,其中步骤C3进一步包括步骤C31、计算插入Q后簇Ci的边界变化 情况,更新BTQ ;C32、检测每个簇Ci的最小边界矩形Ru在簇Ci的查询有效期内是否大于 Sq,即判断是否满足Sq-扭曲度模型;C33、若满足S q-扭曲度模型,则计算Ci与Q的时 序相似度,找到与Q具有最小相似度的簇Cmin。在这个方面中,其中当查询请求Q是活动查询时,以id为关键字从数据库中找到 匿名集(id,RLjt, Rv,t,maxT),重新计算RL,t后并将其以(id’,RL,t,maxT,con)的形式发送 给基于位置的提供商服务器。通过本发明,可以防止由于基于位置服务用户提出连续查询而产生隐私泄露的问 题。让在基于位置服务中的移动用户可以除享受一般快照式查询服务外,还可以享受快捷 的连续查询式的基于位置的服务。


结合随后的附图,从下面的详细说明中可显而易见的得出本发明的上述及其他目 的、特征及优点。在附图中图1给出了根据现有技术的示意图;图2给出了根据现有技术的另一示意图;图3给出了根据本发明的基于位置服务的连续查询隐私保护系统的方框图;图4给出了根据本发明的基于位置服务的连续查询隐私保护方法的流程图;图5给出了根据本发明的边界速度图的一个例子的示意图6给出了根据本发明的对查询请求进行匿名处理的详细流程图;图7给出了根据本发明的在一维情况下对象在x轴上运动的例子的示意图;图8给出了根据本发明的x轴上的边界宽(WB)的示意图;图9给出了根据本发明的簇的示意图;图10给出了根据本发明的边界速度图的另一个例子的示意图。
具体实施例方式为了更全面地理解本发明及其优点,下面结合附图及具体实施例对本发明做进一 步详细地说明。首先,参考图3,图3示出了根据本发明的基于位置服务的连续查询隐私保护系统 的方框图。如图3所示,根据本发明的系统包括移动用户、匿名服务器、以及提供商服务器。移动用户用于将查询请求0 =(说发送给匿名服务器。其中1 = (x, y)表示查询请求Q所在位置;速度P = 是一个向量,其中Vx/Vy表示查询在x/y轴方向 上的速度分量;(1, ^, t)表示查询请求Q在时刻t在位置为1上,并且运动速度为; Texp表 示该查询过期时间,Trap可以表示为t+A t,其表示在A t后这个查询过期变为无效;con表 示查询内容,如最近医院等。查询请求分为新查询和活动查询两种。新查询是指由用户首次提出的查询请求。 活动查询是指用户在过去的时刻提出,直到现在依然有效的查询,再次触发仅为位置更新。 例如,某用户在时刻^发出连续查询请求Q,查询有效期为At。在时刻、,Q是新查询;对 于任意tG (、,ti+At],Q属于活动查询。匿名服务器由知识库、匿名引擎、以及查询结果求精处理器组成。具体地说,如果匿名服务器接收到一个新查询时,匿名引擎首先对用户id进行哈 希处理以转换为假名id’,同时根据待匿名查询的位置寻找匿名集(Ru,Rv,t)并将其发送到 知识库。知识库收到此匿名集后将其以(id,Ru,Rv,t,maXT)的形式存入数据库中。此时新 查询变成了活动查询。当下次标识为id的查询到达时,以id为关键字从数据库中找到此 匿名集,重新计算Ru,并将其以(id’,Ru,maxT,con)的形式发送给基于位置的提供商服 务器。优选地,匿名集还可以为(CID,Qset, RL,t, Rv, t),并且知识库收到此匿名集后将其 以(id,CID,Qset,RL,t,Rv,t,maXT)的形式存入数据库中。其中CID是匿名服务器可以是随 机唯一标识,Qset中存储的是在匿名集中包含的所有查询标识组成的集合。如果到达一个活动查询,则匿名引擎直接从知识库中寻找该查询在提出之初形成 的匿名集合。找到该集合,并根据其中所有对象的当前位置计算新的匿名框Ru,将活动查 询以(id’,Ru,maXT,COn)的形式发送给提供商服务器。其中&,t,是根据速度v和运行时 间t重新计算而来的。查询结果求精处理器用于对提供商服务器返回的查询结果进行求精处理,并将求 精结果返回给移动对象。提供商服务器根据所接收到的匿名后的请求进行查询处理,并将查询结果发送给 匿名服务器。
接下来,结合图3和图4,对根据本发明的防止位置依赖攻击的位置隐私保护方法 进行详细的说明。如图4所示,根据本发明的方法包括以下步骤步骤A 移动用户用于将查询请求0 =㈦,/,。,CW7)发送给匿名服务器。其中 id是用户标识,1 = (x,y)表示查询请求Q所在位置;速度“(、,、)是一个向量,其中Vx/ vy表示查询在x/y轴方向上的速度分量;(1, ^, t)表示查询请求Q在时刻t在位置为1上, 并且运动速度为表示该查询过期时间,Texp可以表示为t+At,其表示在At后这个 查询过期变为无效;con表示查询内容等。例如张三以40km/h运动,提出“查询5分钟距 离我最近的医院”,那么id表示张三,1表示张三当前位置,v是40km/h,t是提出查询的时 刻,Texp是t+5 (表示5分钟后这个查询过期,变无效),con为“查询5分钟距离我最近的 医院”查询请求分为新查询和活动查询两种。新查询是指由用户首次提出的查询请求。 活动查询是指用户在过去的时刻提出,直到现在依然有效的查询,再次触发仅为位置更新。 例如,某用户在时刻^发出连续查询请求Q,查询有效期为At。在时刻、,Q是新查询;对 于任意tG (、,ti+At],Q属于活动查询。步骤B 匿名引擎根据用户标识id判断该查询请求Q是新查询还是活动查询。具体地说,如果数据库中存在与用户标识id有关的信息,则判断出该查询请求Q 是活动查询,否则是新查询。步骤C:如果是新查询,匿名引擎对查询请求0 = (/式/^,^矶,⑶劝进行匿名 处理,并将匿名处理后的请求Q= (id',Rv,t,maxT,con)发送给提供商服务器,其中
Rv,t是将1匿名后的位置,maxT是与Q在同一匿名组的所有查询的最大过期时间,即
max ’ max T 二0.7" n。
QeCS exp首先,对匿名服务器所使用的数据结构TPR树和队列BTQ,进行简单地说明。数据 结构IPR树和队列BTQ在匿名引擎中,具体地说,输入新的查询r,服务空间中待匿名查询组成的集合CR输出查询r所在的匿名集,匿名集的形式为(CID,Qset,RLjt,RVjt,maxT)其中 CID表示匿名集标识符; Qset是一个集合,由匿名集中包含的查询组成; RLjt = (Lx_,t,Ly_,t,Lx+,t,Ly+,t)表示匿名框,覆盖Qset中所有用户的最小边界矩 形,其中(Lx_,t,Ly_,t)和(Lx+,t,Ly+,t)是最小边界矩形,以后用MBR表示,的左下角和右上角 在时刻t的坐标; Rv,t 是 RL,t 的速度边界矩形。Rv,t = (vxmin,t,vymin,t,vxmaxjt, vymax,t),其中 vxmin,t = min(vx+,t,vx_,t),,vxmax,t = max (vx+jt, vx_,t),vymin,t = min(vy+,t,vy_,t),vymax,t = max (vy+jt, vy_, t)。vx_, t/vx+, t是MBR在x方向上的左/右边界速度,vy_, t/vy+, t是MBR在y方向上的下/上 边界速度。maxT是与Q在同一匿名组的所有查询的最大过期时间,即
7max 如图5所示,匿名集包括Ql Q5五个查询,括号中的数字表示该查询的运动速 度,箭头代表运动方向。CS.RLjti = (1,1,4,2), CS. Rvjti = (_1,_3,1,2)。初始状态下,每一个移动用户(或者与之相应的查询请求)都是一个连续簇。连 续簇的定义为对于查询集合C,如果· C满足δ q-扭曲度模型· maxTexp-minTexp ^ δ τ,其中 maxTexp = maxQ e c (Q. Texp),minTexp = minQec(Q. Texp)。δ T 是系统参数。Q. Texp是匿名集合中查询请求Q的查询有效期,前一个公式求的是最大查询有效 期,后者表示求小查询有效期,maxTexp-minTexp求得的是在一个匿名集合种所有查询有效期 的差距。则C是在[tl,t2]期间的连续簇。其中δ q-扭曲度模型是指假设用户可以容忍 的最差服务质量是δ q (系统参数),查询集CS的位置匿名框为Ru,伴随边界速度Rv,t,则 对于 t e [Ts, maxT],Q e CSj0istortionK1 ^r1J ^Sq。其中 Distortion (Q,RLjt)表示查询 请求Q的信息扭曲度,定义为=CS在时亥Ij t的MBR(VBR)为RL, t(Rv,t)。Aheight,Awidth 分别是整个空间的高与宽。查询请求Q在时刻t的扭曲度定义为Distortion^ (Q^Rlj) = ^:^————
A height + j^width则Q在其有效期内,总信息扭曲度为J"" DistortionR (Q, Rl , )dt其中Ts是查询请求Q匿名成功的时刻,Texp是查询请求Q的过期时间。下面对匿名服务器对查询请求的匿名处理流程进行更加详细地描述。具体地说,如图6所示,步骤C进一步包括步骤Cl 对查询请求Q中的用户id进行处理以得到假名id',并记录id与假名 id'的对应关系。应该注意的是如何转换成假名为本领域普通技术人员所熟知的技术,因 此在这里不做详述。步骤C2 利用最小最佳优先原则在TPR-树上迅速找到查询请求Q的连续最近邻 连续簇集合CSrm。其中首先簇(cluser)是指状态相似的查询集合。如图9所示,Cl C4均是簇,Cl 是由查询A F组成的集合。每一个簇都是一个候选匿名集合,所以在后面不明确区分候 选匿名集合和簇的概念。簇Cn是查询r的连续最近邻簇(为表述方便,后面用NNC表示) 当且仅当对于任意一个簇Ci (Ci^ C,i兴n),周长(最小边界矩形(Ci, Q)) >周长(最小 边界矩形(Cn,Q))。如在下面这个例子中,查询r的最近邻连续簇是C4。每一个簇Ci均带有一个边界查询队列(后面为表述方便用BTQ表示)bqc,其中存 放着在查询有效期内Ci的边界信息。步骤C3 扫描集合CSrm中的每一个簇Ci,找到与Q具有最小相似度的簇Cmin。具体地说,该步骤进一步包括
步骤C31 计算插入Q后簇Ci的边界变化情况,更新BTQ。在BTQ中,边界位置信息按照时间点升序排序。因为匿名框的边界位置随着查询 的运动而变化,所以在线追踪所有对象的运动进而获得所有时刻的边界位置不现实,代价 很昂贵。图7给出了一维情况下对象在χ轴上运动的例子。从时刻、 、,查询在时刻t 在χ轴的位置可以通过公式(1)确定χ = xti+vx*(t-ti)(1)通过解线性方程组,可以获得图7中不同移动对象相遇的时刻与位置(即交叉 点)。注意只计算那些对边界宽(长)度有贡献的交叉点。在图7中,可以忽略交叉点P。 虽然我们以在χ轴上运动为例进行说明,y轴上具有类似的情况。对于每一个簇Ci,VS+/ VS-是在查询有效期内正/负χ-轴上边界速度集合。主要思想是对于插入簇Ci的查询 请求Q,如果V G VS +、r. Vx < ν+并且E FS _、r. Υχ > ν-,则Q不可能成为χ轴上的 边界。否则,利用公式1计算Q成为边界的时间,并插入队列BTQ。类似的,可得簇所有的边 界位置。步骤C32 检测每个簇Ci的最小边界矩形Rl, t在簇Ci的查询有效期内是否大于 系统定义S q,即判断是否满足Sq-扭曲度模型。在C31中已计算出每一个候选匿名集的边界对象变更队列BTQ,结合该队列,很容 易获得候选匿名集边界位置。对于BTQ中任意两个连续时刻点[ti; ti+1],候选匿名集边界 的长和宽都是一个时间t的线性函数。候选匿名集边界的长和宽定义为假设匿名集CR在 时刻t的匿名框为Ru,则在χ轴上,匿名框的宽为
(2)同样的,在 y轴上,匿名框的高为
(3)分别记为WBt和HBt。WBt/HBt也是线段函数。图7例子的WB的变化趋势如图8 所示。HB的变化趋势与WB类似,故省略。为方便起见,假设 TSet定义了边界查询发生更改时的时间戳组成的集合{tl,t2,...,tn} (tl = Ts, tn = Texp) 很容易计算Pu和Pv,t,为满足S q-扭曲度模型的要求,对任意时刻t e [ti, ti+1],
(7)让不等式(7)的左侧等于δ q,计算出时间t的上限t+。如果t+位于[ti,ti+l], 则说明不满足Sq-扭曲度模型,否则满足Sq-扭曲度模型。步骤C33 若满足δ q-扭曲度模型,则计算Ci与Q的时序相似度,找到与Q具有 最小相似度的簇Cmin。时序相似度的计算具体为:U1和U2是两个不相交的查询集合· (Ul πυ2=0),并且U = U1 U U2。RU2,t(Rvl2,t)是时刻t覆盖这两个查询的MBR(BVR)。U1与U2的时序相似 距离定义为 其中maxT=max(Q1.Texp,Q2.Texp)的计算方式为查 询集合Ui在时刻t的MBR和BVR分别为Ru,Rv,t,U1在时刻t的位置扭曲度为 Ul在其有效期内总信息扭曲率为 其中Ts是匿名集Ul的生成时间,maxT = maxQGU1 (Q. Texp)。具体地说,如果c-不存在,Q自身形成一个单点簇,并将其质心存入TPR-树中; 否则合并{Q}与(_。如果cmin中包含的查询个数不少于K,则直接作为候选匿名集作为步 骤C4的输入进行隐私检查。否则作为步骤C5的输入进行簇优化。其中簇的质心簇中所有点位置的中心点,表示为C(x,y,vx, vy)。其中vx和vy按 照下面的公式计算。 其中包含\和vy,其包含在查询请求Q中。|C|是查询集合C中包含的查询个 数。步骤C4:结合边界对象变更队列BTQ,检测候选匿名集c-的长和宽在候选匿名集 的最小查询有效期内是否小于Sp*min(Awidth,AMght),其中S p是系统定义参数S p,Awidth 和AMght是系统的长和宽。如果满足这个要求,则执行步骤C5,否则执行步骤C7。其判断方法是对于任一个候选匿名集,取出其BTQ中两个连续时刻ti,ti+1,根 据公式⑵和公式(3)计算候选匿名框的宽和高,分别判断是否大于Ap = S p*min(Awidth, Aheight) 若在候选匿名集的生命有效期内的任意一个连续时间段[、,ti+1],两个不等式均 无解,则该候选匿名集可作为匿名结果成功返回。反之,若有其中任何一个不满足,则把触 发查询请求Q插入查询待匿名集合RSet。步骤C5 对于每一个在CSrm中不在Cmin中的查询0,如果Cmin U {0}满足5 q-扭 曲度模型,则把o插入Cmin,并相应的更新C-和o原所在簇信息。重复这样的过程,直至Cmin 中包含K个查询。步骤C6 包含查询数大于K的Cmin组成匿名集合,从而得到Rv,t和maxT,并执行步 骤C8。这些查询的最小边界矩形即是每一个查询匿名后的位置。根据图5的例子,根据Cfflin中包含的所有查询的位置坐标可以计算出Ru,所有查询的速度计算边界速度Rv,t,所有 查询的过期时间的最大值即可获得maxT,从而得到Q = (id',Rv, t,maxT,con)。步骤C7 将查询请求Q插入Cmin,根据公式8和公式9重新更新Cmin的质心,并将 Cmin插入到TPR-树中。匿名服务器接收并处理下一个新查询。步骤C8 匿名引擎将(tt,Rv, t)发送到知识库,知识库收到此匿名集后将其以 (id, RL,t,Rv,t,maxT)的形式存储在数据库中。优选地,匿名集还可以为(CID,Qset, RL,t, Rv, t),并且知识库收到此匿名集后将其 以(id,CID,Qset,RL,t,Rv,t,maXT)的形式存入数据库中。其中CID是匿名服务器可以是随 机唯一标识,Qset中存储的是在匿名集中包含的所有查询标识组成的集合。步骤C9:匿名引擎将匿名处理后的请求Q= (id',Rv,t,maXT,COn)发送给提供商 服务器。至此,已对查询请求Q是新查询的情况进行了说明。下面对查询请求Q是活动查 询的处理过程说明。从上述可知,如果匿名服务器接收到一个新查询时,匿名引擎首先对用户id进行 假名处理以转换为假名id’,同时根据待匿名查询的位置寻找匿名集(Ru,Rv, t)并将其发 送到知识库和基于位置服务其服务提供商。知识库收到此匿名集后将其以(id,RL,t, Rv,t, maxT)存入数据库中。此时新查询变成了活动查询。当下次标识为id的查询到达时,以id 为关键字从数据库中找到此匿名集,重新计算Ru后并将其以(id’,Ru,maXT,COn)的形式 发送给基于位置的提供商服务器。优选地,匿名集还可以为(CID,Qset, RL,t, Rv, t),并且知识库收到此匿名集后将其 以(id,CID,Qset,RL,t,Rv,t,maXT)的形式存入数据库中。其中CID是匿名服务器可以是随 机唯一标识,Qset中存储的是在匿名集中包含的所有查询标识组成的集合。具体地说,如果查询请求标识为id的查询请求Q在知识库中存在,则为活动查询。 以id为关键字找到查询请求Q的Rv,t和RL,t。例如如图10所示,在知识库中存储Q1_Q4在时刻t = 0时匿名后位置是Ru = {(1,1), (4,2)},速度Rv,q = {(-1,-3),(1,2)}。假设Q1在t = 1时刻又再次提出查询,则 重新计算 Ru = {(0,-2), (5,4)}。步骤D:提供商服务器根据所接收到的请求Q= (id',Rv,t,maXT,COn)进行查询 处理,并将查询结果的候选集返回给匿名服务器。应该说明的是,数据库服务器的查询处理 是为大家所熟知的技术,并且不是本发明的重点,因此在此不对其做详述。步骤E:匿名服务器根据用户的真实位置从数据库服务器返回的候选结果中,选 择正确的查询结果返回给相应的移动对象。通过本发明可知,可以防止由于基于位置服务用户提出连续查询而产生隐私泄露 的问题。让在基于位置服务中的移动用户可以除享受一般快照式查询服务外,还可以享受 快捷的连续查询式的基于位置的服务。此外,对于本领域的普通技术人员来说可显而易见的得出其他优点和修改。因此, 具有更广方面的本发明并不局限于这里所示出的并且所描述的具体说明及示例性实施例。 因此,在不脱离由随后权利要求及其等价体所定义的一般发明构思的精神和范围的情况 下,可对其做出各种修改。
权利要求
一种基于位置服务的连续查询隐私保护方法包括步骤A、移动用户用于将查询请求发送给匿名服务器,其中id是用户标识;l=(x,y)表示查询请求Q所在位置;速度是一个向量,其中vx/vy表示查询在x/y轴方向上的速度分量;表示查询请求Q在时刻t在位置为l上,并且运动速度为Texp表示该查询过期时间;con表示查询内容;B、匿名引擎根据用户标识id判断该查询请求Q是新查询还是活动查询;C、如果是新查询,匿名引擎对查询请求进行匿名处理,并将匿名处理后的请求Q=(id′,Rv,t,maxT,con)发送给提供商服务器,其中Rv,t是将1匿名后的位置,maxT是与Q在同一匿名组的所有查询的最大过期时间;D、提供商服务器根据所接收到的请求Q=(id′,Rv,t,maxT,con)进行查询处理,并将查询结果的候选集返回给匿名服务器;E、匿名服务器从数据库服务器返回的候选结果中,选择正确的查询结果返回给相应的移动对象。FSA00000148316400011.tif,FSA00000148316400012.tif,FSA00000148316400013.tif,FSA00000148316400014.tif,FSA00000148316400015.tif
2.根据权利要求1的方法,其中步骤C进一步包括步骤Cl、对查询请求Q中的用户id进行处理以得到假名id',并记录id与假名id'的对 应关系;C2、在TPR-树上迅速找到查询请求Q的连续最近邻连续簇集合CSrm ; C3、扫描集合CSrm中的每一个簇Ci,找到与Q具有最小相似度的簇Cmin ; C4、检测候选匿名集Cmin的长和宽在候选匿名集的最小查询有效期内是否小于 δ p*min (Awidth, Aheight),其中δ ρ是系统定义参数δ ρ, Awidth和Aheight是系统的长和宽,如果 满足这个要求,则执行步骤C5,否则执行步骤C7 ;C5、对于每一个在CSrm中不在Cmin中的查询ο,如果Cmin U {ο}满足Sq-扭曲度模型, 则把ο插入Cmin,并相应的更新Cmin和ο原所在簇信息,重复这样的过程,直至Cmin中包含K 个查询;C6、包含查询数大于K的Cmin组成匿名集合,从而得到Rv, t和maxT,并执行步骤C8 ; C7、将查询请求Q插入Cmin,重新更新Cmin的质心,并将Cmin插入到TPR-树中; C8、匿名引擎将(Ru,Rv,t)发送到知识库,知识库收到此匿名集后将其以(id,Ru,Rv, t, maxT)的形式存储在数据库中;C9、匿名引擎将匿名处理后的请求Q= (id',Rv,t,maXT,C0n)发送给提供商服务器。
3.根据权利要求2的方法,其中步骤C3进一步包括步骤 C31、计算插入Q后簇Ci的边界变化情况,更新BTQ ;C32、检测每个簇Ci的最小边界矩形Ru在簇Ci的查询有效期内是否大于δ q,即判断 是否满足Sq-扭曲度模型;C33、若满足δ q-扭曲度模型,则计算Ci与Q的时序相似度,找到与Q具有最小相似度 的簇cmin。
4.根据权利要求2的方法,其中当查询请求Q是活动查询时,以id为关键字从数据库中找到匿名集(id,Ru,Rv, t, maxT),重新计算Ru后并将其以(id’,R1, t,maxT,con)的形式发送给基于位置的提供商服务器 。
全文摘要
一种基于位置服务的连续查询隐私保护方法,该方法包括步骤A、移动用户用于将查询请求发送给匿名服务器;B、匿名引擎根据用户标识id判断该查询请求Q是新查询还是活动查询;C、如果是新查询,匿名引擎对查询请求进行匿名处理,并将匿名处理后的请求Q=(id′,Rv,t,maxT,con)发送给提供商服务器;D、提供商服务器根据所接收到的查询请求Q=(id′,Rv,t,maxT,con)进行查询处理,并将查询结果的候选集返回给匿名服务器;E、匿名服务器从数据库服务器返回的候选结果中,选择正确的查询结果返回给相应的移动对象。
文档编号G06F17/30GK101866353SQ201010195409
公开日2010年10月20日 申请日期2010年6月9日 优先权日2010年6月9日
发明者孟小峰, 潘晓 申请人:孟小峰
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1