匿名检测接近度的方法和匿名函数评估服务装置转让专利

申请号 : CN200380100605.8

文献号 : CN100583923C

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 丹尼尔·亚历山大·福德詹姆斯·哈维·考夫曼尤西·佩特里·米里马基

申请人 : 联想(新加坡)私人有限公司

摘要 :

本发明涉及通过参数的单独传输和评估来匿名地检测移动用户之间的基于位置的接近度或者基于偏好的接近度的方法、程序和服务。具体地,描述了一种计算移动无线订户(他们使用不同的服务)之间的接近度(基于位置的接近度或者基于偏好的接近度),而不会对其它人暴露其位置/偏好(保护隐私)的方法。通过与评估函数一起分步提供位置/偏好信息,隐私得以保留。服务接收部分结果,然后在本地计算最终结果或者说接近度。术语“接近度”不仅包括物理意义上的接近度,而且包括多维数据比如偏好描述和向量(例如对棒球、苹果饼和交际舞等的爱好)。

权利要求 :

1.一种方法,用于辅助在将与相空间中第一和第二用户相关的 偏好数据匿名化时的第一和第二跟踪服务,所述第一和第二跟踪服务 分别跟踪所述第一和第二用户的偏好,所述偏好数据是匿名化的数值 数据并由一个或者多个参数定义,该方法包括下述步骤:a.从每一个跟踪服务接收对函数评估的请求,所述请求标识出 要传输的参数,以及要用来评估所述标识出的要传输的参数的对应函 数;

b.向每一个跟踪服务传输一个确认,指出预期将从每一个跟踪 服务向第三方传输被标识的参数;

c.从每一个跟踪服务接收所述被标识的参数;

d.根据从每一个跟踪服务接收到的参数,评估所述对应函数;

e.将所述评估所述对应函数的结果传输给每一个跟踪服务;

其中,对定义偏好数据和对应函数二者所需的每一个另外的参数 重复步骤a到e,使得每一个所述服务单独地接收对每一个参数的函 数评估结果,并使用这样的评估结果在本地估计所述第一和第二用户 在所述相空间中的接近度,而不会暴露他们的偏好数据。

2.如权利要求1所述的方法,其中,所述第三方与所述跟踪服 务的通信是通过超文本传输协议进行的。

3.如权利要求1或2所述的方法,其中,所述参数是欧几里德 坐标。

4.如权利要求1或2所述的方法,其中,所述参数是所述偏好 数据的标量量度。

5.如权利要求1或2所述的方法,其中,所述参数是所述偏好 数据的向量量度。

6.一种用于第一和第二移动用户之间的匿名接近度探测的方法, 所述第一和第二移动用户分别由第一和第二位置跟踪服务跟踪,由所 述第一和第二位置跟踪服务的每一个实现的该方法包括下列步骤:a.将第一位置坐标与对应的要评估的第一函数一起传送给第三 方,所述第一位置坐标是第一移动用户的位置坐标;

b.从所述第三方接收第一结果,该第一结果基于用所述第一位 置坐标对所述第一函数的评估;

c.将第二位置坐标连同要评估的第二对应函数一起传送给所述 第三方,所述第二位置坐标是第二移动用户的位置坐标;

d.从所述第三方接收第二结果,该第二结果基于用所述第二位 置坐标对所述第二函数的评估;以及e.根据所接收到的第一和第二结果,计算一个距离的量度,计算 出来的距离为所述第一和第二移动用户中的每一个提供关于与对方的 接近度的指标,其中所述第一位置坐标和所述第二位置坐标是匿名化的位置坐 标。

7.如权利要求6所述的方法,其中,所述第三方是未受委托的 第三方。

8.如权利要求6或7所述的方法,其中,所述用户和所述第一 和第二位置跟踪服务之间的通信使用超文本传输协议。

9.如权利要求6、或7所述的方法,其中,所述距离是基于一个 阈值计算出来的,用以确定所述接近度的指标。

10.如权利要求6、或7所述的方法,其中,所述计算一个距离 的量度的步骤在与所述移动用户相关联的位置跟踪服务中本地实现。

11.如权利要求10所述的方法,其中,使用嵌在所述移动设备 中的Java虚拟机计算所述距离。

12.一种匿名函数评估服务装置,包括:

a.与各种跟踪服务或者无线服务提供商通信并接收参数和对应 函数的接口,所述参数是匿名的参数并与一个或者多个用户相关;

b.存储要针对所接收到的数据被评估的所述函数的任务列表;

c.存储要处理的所接收到的参数的数据高速缓存;

d.评估参数的数学函数的函数评估引擎;以及

e.与所述任务列表、数据高速缓存以及函数评估引擎工作连接的 任务管理器,该任务管理器:(i)从所述接口接收参数和对应函数; (ii)将所述函数和参数发送到任务列表和数据高速缓存二者;(iii) 从数据高速缓存取回所述函数;以及(iv)与函数评估引擎通信,将 所述函数评估引擎的结果发回到所述接口,所述接口用于向请求方服 务转发值。

13.如权利要求12所述的匿名函数评估服务装置,其中,所述 参数是欧几里德坐标。

14.如权利要求13所述的匿名函数评估服务装置,其中,所述 欧几里德坐标是浮点格式。

15.如权利要求12、13或14所述的匿名函数评估服务装置,其 中,所述参数是与用户相关联的偏好的标量量度。

16.如权利要求12、13或14所述的匿名函数评估服务装置,其 中,所述参数是与用户相关联的偏好的向量量度。

17.如权利要求12、13或14所述的匿名函数评估服务装置,其 中,所述接口通过超文本传输协议通信。

18.如权利要求12、13或14所述的匿名函数评估服务装置,其 中,所述匿名函数评估服务装置是未受委托的第三方。

19.如权利要求12、13或14所述的匿名函数评估服务装置,其 中,所述任务管理器对所述参数、对应函数和任何识别密钥进行有效 性检验。

说明书 :

技术领域

本发明总体上涉及移动通信设备领域。具体地,本发明涉及匿名 地检测移动用户之间的接近度,而不暴露个体相空间坐标。

背景技术

应用服务提供商(ASP)正在越来越多地在各种网络上提供无数 服务。这些服务中的许多服务都是利用用户的位置数据来提供有针对 性的对用户特定的信息。
这样的服务的一个具体实现是基于位置的服务,要求检测和报告 两个或者多个用户之间的相对接近度。存在多种能够提供位置跟踪服 务(LTS)的无线服务提供商(WSP)(或者它们可以允许用户注册 到多个这样的LTS)。由于各个个体可能希望或者需要知道它们与注 册到不同的服务提供商的用户的接近度,必须在不同的服务提供商之 间交换信息以检测接近度。不希望交换个体的位置数据,因为,对于 用户的隐私而言,这会将用户暴露于潜在的威胁之中。出于同样的原 因,不交换数据又会严重地削弱这样的基于位置的服务的实用性。
下面对基于位置的服务的领域的现有技术作一简单描述,但是应 当注意,现有技术未能提供匿名地检测用户的接近度而不交换他们的 位置坐标的系统或者方法。
涉及用户位置数据的交换的现有技术方案涉及将位置数据加密, 在无线服务提供商之间共享如此加密的数据。但是,这种方案具有如 下所述一些主要的缺点:
1)公开密钥加密的管理比较复杂,尤其是如果需要考虑询问和 接近度计算的速度的话。单个无线服务提供商可能具有数百万客户, 而每一个客户可能都希望被告知数个其它无线服务的用户的接近度。
2)假设无线服务提供商交换通过加密予以保护的信息,在某些 点,其它服务提供商会占有非注册用户的位置数据。这要求用户信任 (委托)每一个无线服务提供商(无论他们是否是订户)对所述数据 访问进行控制。本发明的系统和方法通过避免敏感数据的共享消除了 这种问题。
已公开的专利申请Doi等人的US 2001/0014911A1提供了一种提 供服务的方法和系统,其中,响应于移动终端发出的带有位置信息的 服务请求,被委托的服务提供商基于移动终端的位置信息提供服务信 息。但是,该申请未能解决在多个这样的服务实例之间的通信中对隐 私问题的担忧。
已公开的专利申请Kinnunen等人的US 2001/0018349A1提供了 与位置相关的服务。所公开的是一种基于位置的系统(LBS),用于 向覆盖范围内的多个移动终端提供与位置相关的服务。
已公开的专利申请Watson的US 2002/0026517A1使得能够在信 息请求方和地理上接近的服务提供商之间进行电子数据的通信。所公 开的是一种用于传输电子数据的方法,包括:从远离第一地理位置的 第二地理位置的客户接收访问位于第一地理位置的通信系统的请求; 识别在第二地理位置的客户本地的代理服务器;从在该代理服务器的 客户接收随后的数据请求。但是,该申请未能公开具有第三方匿名函 数评估服务。另外,该申请要求服务提供商之间的信任和了解。
Huber等人的PCT申请WO 0079811A2提供了一种方法和系 统,用于向移动用户提供匿名的基于位置的服务。所公开的是一种方 法,其中,具有自己所信任(委托)的服务提供商的用户挑选该用户 所感兴趣的一个或者多个服务,并将其位置发送给受信任(委托)的 服务提供商,从而,该服务提供商获得该服务的位置并执行范围查询。 这样,服务提供商调查服务的位置(例如黄页)。Lammi等人的PCT 申请WO 0128273A1有类似的记载。
已公开的专利申请Hunzinger的US 2002/001173A1公开了在无 线通信系统中位置信息的通信。所公开的是无线通信系统中的一种移 动站,比如蜂窝或者PCS电话,将位置信息传送给系统服务器。所述 移动站可以在移动站和无线通信基础设施之间传递位置和运动跟踪信 息。
Drane等人的美国专利U.S.6,275,705公开了一种位置跟踪系统。 该方法允许查找在通信系统中移动射频收发器的位置。判断包括使用 已知距离和测量的时间来确定来自每一个基站的传输的相对时间偏差 的装置,以及使用所确定的相对时间偏差,使用双曲线定位技术计算 移动收发器在网络区域中的位置的定位装置。
Natarajan等人的PCT申请WO 01/65339提供了一种结构,用 于向设备提供信息。其中,所述结构包括数据收集器、信息服务器、 评估机制以及活动处理器。所述评估机制判断在表达的评估中是否发 生了变化,并生成通知。
非专利文献,Herzberg等人的″On Traveling Incognito″讨论 了对移动环境中的匿名性的解决方案。作为该解决方案的一部分,提 供了一种“频繁变化”的混叠。
无论上述现有技术的具体发明点、特点和优点是什么,它们都没 有实现或者满足本发明的目的。

发明内容

在本发明的第一方面,提供了一种方法,用于辅助在将与相空间 中第一和第二用户相关的偏好数据匿名化时的第一和第二跟踪服务, 所述第一和第二跟踪服务分别跟踪所述第一和第二用户的偏好,所述 偏好数据是匿名化的数值数据并由一个或者多个参数定义,该方法包 括下述步骤:
a.从每一个跟踪服务接收对函数评估的请求,所述请求标识出 要传输的参数,以及要用来评估所述标识出的要传输的参数的对应函 数;
b.向每一个跟踪服务传输一个确认,指出预期将从每一个跟踪 服务向第三方传输被标识的参数;
c.从每一个跟踪服务接收所述被标识的参数;
d.根据从每一个跟踪服务接收到的参数,评估所述对应函数;
e.将所述评估所述对应函数的结果传输给每一个跟踪服务;
其中,对定义偏好数据和对应函数二者所需的每一个另外的参数 重复步骤a到e,使得每一个所述服务单独地接收对每一个参数的函 数评估结果,并使用这样的评估结果在本地估计所述第一和第二用户 在所述相空间中的接近度,而不会暴露他们的偏好数据。
在本发明的第二方面,提供了一种用于第一和第二移动用户之间 的匿名接近度探测的方法,所述第一和第二移动用户分别由第一和第 二位置跟踪服务跟踪,由所述第一和第二位置跟踪服务的每一个实现 的该方法包括下列步骤:
a.将第一位置坐标与对应的要评估的第一函数一起传送给第三 方,所述第一位置坐标是第一移动用户的位置坐标;
b.从所述第三方接收第一结果,该第一结果基于用所述第一位 置坐标对所述第一函数的评估;
c.将第二位置坐标连同要评估的第二对应函数一起传送给所述 第三方,所述第二位置坐标是第二移动用户的位置坐标;
d.从所述第三方接收第二结果,该第二结果基于用所述第二位 置坐标对所述第二函数的评估;以及
e.根据所接收到的第一和第二结果,计算一个距离的量度,计算 出来的距离为所述第一和第二移动用户中的每一个提供关于与对方的 接近度的指标,
其中所述第一位置坐标和所述第二位置坐标是匿名化的位置坐 标。
在本发明的第三方面,提供了一种匿名函数评估服务装置,包括:
a.与各种跟踪服务或者无线服务提供商通信并接收参数和对应 函数的接口,所述参数是匿名的参数并与一个或者多个用户相关;
b.存储要针对所接收到的数据被评估的所述函数的任务列表;
c.存储要处理的所接收到的参数的数据高速缓存;
d.评估参数的数学函数的函数评估引擎;以及
e.与所述任务列表、数据高速缓存以及函数评估引擎工作连接的 任务管理器,该任务管理器:(i)从所述接口接收参数和对应函数; (ii)将所述函数和参数发送到任务列表和数据高速缓存二者;(iii) 从数据高速缓存取回所述函数;以及(iv)与函数评估引擎通信,将 所述函数评估引擎的结果发回到所述接口,所述接口用于向请求方服 务转发值。
在一个具体实施例中,提供了一种系统和方法,用于对与相空间 中的移动电话用户相关联的数据进行匿名化,其中这样的数据被用于 计算用户之间的接近度而不暴露用户在相空间中的位置和偏好向量。 通过与评估函数一起分步提供位置坐标信息或者偏好向量坐标信息, 隐私得以保留。服务接收部分结果,然后在本地计算最终结果,给出 一个接近度估计。应当注意术语“接近度”不仅包括欧几里德距离意义 上的接近度,而且包括相空间意义上的接近度,相空间由偏好描述和 向量(例如对棒球、苹果饼和交际舞等的爱好)构成。
在一个具体实施例中,本发明的方法帮助第一和第二位置跟踪服 务(LTS)对与相空间中的第一和第二用户相关的位置数据进行匿名 化,其中,所述第一和第二用户分别由第一和第二LTS跟踪。所述位 置数据由一个或者多个参数定义。实现在匿名函数评估服务(AFES, anonymous function evaluation service)中的该方法包括下述步骤: (1)从每一个LTS接收对函数评估的请求,其中该请求标识出要传 输的参数和要用于评估所标识出来的参数的对应函数;(2)向每一个 LTS传输一个确认,指出AFES在等待接收所述标识出来的参数;(c) 从每一个LTS接收所述被标识的参数;(3).根据从每一个LTS接 收到的参数,评估所述对应函数;以及(4)将所述评估结果传输给每 一个LTS。对定义位置数据和对应函数所需的每一个另外的参数重复 步骤a到e,使得每一个所述LTS对每一个参数单独地从所述AFES 接收的函数评估结果,并使用这样的评估结果在本地估计所述第一和 第二用户在所述相空间中的接近度,而不会暴露他们的位置数据。
所述匿名函数评估服务(AFES)包括:(1)与各种位置跟踪服务 (LTS)或者无线服务提供商(WSP)通信并接收参数和对应函数的 接口;(2)存储要针对所接收到的数据被评估的函数的任务列表;(3) 存储要处理的所接收到的参数的数据高速缓存;(4)评估参数的数学 函数的函数评估引擎;以及(5)与所述任务列表、数据高速缓存以及 函数评估引擎工作连接的任务管理器,该任务管理器:从所述接口接 收参数和对应函数;将所述函数和参数分别发到任务列表和数据高速 缓;从数据高速缓存取回所述函数;与函数评估引擎通信,将所述函 数评估引擎的结果发回到所述接口,所述接口用于向请求方服务转发 值。

附图说明

图1图解了用向量V={pref_1,preff_2,…,pref_n}表示与一个个 体相关的一组偏好的情况;
图2图解了本发明的方法的用于估计两个移动用户之间的接近度 的一个举例的实施方式;
图3图解了本发明的用于对位置数据匿名化的结构的一个具体例 子;
图4提供了图3的匿名函数评估服务(AFES)的详细结构;
图5图解了与位置跟踪服务(LTS)相关的子部件;
图6图解了一个时序图,表示了一个具体的例子,概括了图3所 示本发明的结构的部件(位置跟踪服务A,位置跟踪服务B,以及匿 名函数评估服务)的各种相互作用;
图7图解了一个流程图,概括了与位置接收器相关的处理;
图8图示了请求处理器的处理的流程图;
图9图解了概括AFES的功能的流程图;
图10是一个流程图,对于根据A和B之间的欧几里德距离的计 算来计算接近度的具体例子,概括了第三方(AFES)和用户A和B 之间的各踪交互作用。

具体实施方式

尽管下面针对优选实施例对本发明进行图解和说明,但是本发明 可以以许多种不同的配置实现。在图中图解了本发明的一个优选实施 例,并且将在下对其进行详细说明,其应当被理解为对本发明的原理 的举例说明。对其结构的相关功能描述不是要将本发明局限于所图示 的具体实施例。本领域的普通技术人员在本发明的范围之内可以想到 其它许多可能的变型。
应当注意,在整个说明书中所使用的术语“距离”不仅指物理上的 接近度,而且指多维数据比如偏好描述和向量(例如对棒球、苹果饼 和交际舞等的爱好)。因此,不应用术语“距离”的字面含义来限制本 发明的范围。
本实施例提供了一种评估任意相空间中的接近度而不用交换具 体偏好数据的系统和方法。普遍化的例子包括在由n维偏好向量定义 的相空间中进行接近度评估。图1图示了这样一种情况,其中,可以 用正交的个人偏好分量来表示一个人的偏好。与一个个人相关的偏好 的集合用向量V={pref_1,pref 2,…,pref_n}来表示,其中pref_i是个 人对某种特定的属性喜好或者不喜好的标量量度。量度两个人的描述 向量之间的差的方式与测量空间中的距离的方式完全相同:每次一个 属性发出正交的标量量度。在此相空间中,两个个体之间的接近度是 与每一个个体相关的偏好向量之间的差。例如,如果用户A具有偏好 向量V1={pref_1,pref_2,…,pref_n},用户B具有偏好向量 V2={Pref_1′,pref_2′,…,pref_n′},那么接近度就是|V2-V1|。
图2图解了本发明的估计两个移动用户之间的接近度的方法的一 个实施例。在图2的方法中,将特定相空间中的坐标以及相关的函数 (function)单独地发送给第三方。该第三方对每一个接收到的函数 和坐标计算一个参数,并将所估计的参数的每一个单独地转发给每一 个用户。根据所接收到的参数,用户能够在本地执行各种计算,以评 估与其它用户的接近度。例如,可以在本地计算在特定多维相空间中 的两个用户之间的距离,其中,所述相空间由具体的偏好描述和向量 (例如对棒球、苹果饼以及交际舞的爱好)定义。
图3图解了本发明的用于对位置数据匿名化的结构300的一个具 体例子。结构300包括:位置跟踪服务A 302、位置跟踪服务B 304 以及匿名函数评估服务(AFES)306。位置跟踪服务A 302和B 304 都能跟踪一个或者多个客户,其中,位置跟踪服务(LTS)可由无线 服务提供商(WSP)或者由独立的服务提供商提供。下面对结构300 的每一个部件进行描述。
1.AFES 306:在本实施例中,第三方匿名函数评估服务(AFES) 接收匿名化的浮点值的集合,在设计上它不能确定任何服务的任何用 户的位置。因此,AFES不能被攻破或者损害任何无线服务的用户的 隐私。AFES只是从各个无线服务接收数值数据,根据相应无线服务 的指令对所述数据进行函数评估。使用对请求方服务(配合其它LTS) 所提供的数据的所述计算结果,对(登记的)请求方服务作出响应。 这样,AFES绝不会知道任何用户的位置。无线服务知道其自己的用 户的位置,从而可以得出其自己的用户与其它无线服务提供商的订户 之间的接近度,但是绝不需要与其它服务提供商共享其用户的位置。 图4提供了图3的AFES 306的详细结构。AFES与多个WSP或者 LTS(402、404、406)通过协议比如超文本传输协议(HTTP)交互 作用。AFES 306接收用于函数评估的数值数据和指令,并返回函数评 估结果。AFES 306的子部件包括:
a.B-B接口408:该子部件处理与各种LTS或者其它WSP之间 (通过协议比如HTTP)进行的通信。B-B接口408接收浮点值的集 合、枚举或者向量。B-B接口408还接收用于所枚举的值和函数的识 别密钥(identifying key)的集合,以允许对来自各单独的跟踪服务的 集合一起进行评估。
b.任务列表410:子部件410存储任务和要针对数据被评估的函 数的列表。
c.数据高速缓存412:子部件412存储要处理的数据(浮点数) 的集合或者枚举。
d.任务管理器414:子部件414管理AFES结构306。这样的管 理包括:(1)从B-B接口408接收枚举;(2)将枚举值发送给任务 列表410和数据高速缓存412;(3)从数据高速缓存412取回数据和 评估函数;(4)处理与函数评估引擎416的通信;(5)对数据、评 估函数和识别密钥进行有效性检验;(6)查错;以及(7)将函数评 估引擎416的结果发回B-B接口408以将值转发给请求方服务。
e.函数评估引擎416:子部件416对浮点值或者其它数据(单独 地,或者作为集合、枚举或者向量)评估数学函数。
2.位置跟踪服务(LTS)302和304:通过蜂窝或者其它无线网 络与多个客户通信的无线服务提供商。图5图解了与LTS 302和304 相关的子部件。下面对这些子部件简单地加以描述:
a.客户描述数据库502:子部件502包含客户ID、账单信息、 位置服务描述(客户使用什么服务)等。
b.接近度通知数据库504:每一个客户ID规定其它客户(或者 组或者事件)他们希望接收到关于什么的通知。每一个通知条目(如 果必要的话)规定外部服务提供商(如果不是当前LTS系统的一部分) 的URL或者ID。
c.系统管理器506:响应于来自B-B接口510的请求,控制对客 户描述和接近度数据库的访问。系统管理器506通过客户接口508管 理客户数据。
d.客户接口508:子部件508通过网络比如蜂窝网络与客户设备 通信。客户接口508从客户设备接收位置数据,并将所述数据发送给 系统管理器506。
e.B-B接口510:子部件510包括用于监视万维网(WWW)上 的活动的防火墙。B-B接口510将来自其它LTS提供商的请求传送给 系统管理器506,并向其它LTS提供商发送请求。另外,子部件510 处理与AFES服务的通信。
3.无线服务提供商。
4.客户:客户设备的用户。
5.客户设备:具有自然跟踪能力(例如GPS)的无线设备。
或者,所述设备可以由LTS提供商通过通信或者设备与之通信 的蜂窝网络集线器跟踪。
图6图解了一个时序图,其表示了一个具体的例子,概括了图中 所示的本发明的结构的各部件(位置跟踪服务A、位置跟踪服务B和 匿名函数评估服务)的各种交互作用。
应当理解,该例子只是为了概括与图3的结构的部件相关的功能 的目的。因此,本发明的实现不应局限于说明书中所提到的例子。
图6中所描述的例子用于当另一个用户j位于接近区域中时通知 用户i。该时序图中所示的步骤如下:
步骤608:在位置跟踪服务A 602和位置跟踪服务B 604之间交 换用户i和j之间的范围请求。
步骤610:在此步骤,在位置跟踪服务A 602和B 604之间交换 关于什么参数要首先传输给AFES的确认。在图示的具体例子中,x 坐标(作为要传输的第一坐标)的传输被确认为要首先传输的参数。
步骤612:在此步骤,对于什么公用函数要用于AFES 606进行 的评估,(由位置跟踪服务A 602和B 604)进行标识。在此具体的 例子中,告知AFES 606期待参数.i,并期望AFES 606将评估后的函 数(.i-.j)2返回给位置跟踪服务A 602和B 604。
步骤614:从AFES 606向每一个位置跟踪服务A 602和B 604 发送关于所同意的函数的确认。
步骤616:在此步骤,按照步骤610的决定,从位置跟踪服务A 602 将第一参数发给AFES 606。在此具体的例子中,从位置跟踪服务A 602 将参数xi发给AFES 606,类似地,从位置跟踪服务B 604将参数xj 发给AFES 606。
步骤618:在此步骤,根据所同意的函数,根据所述函数计算新 的参数,并转发给位置跟踪服务A 602和B 604。在此具体的例子中, 所同意的函数是(.i-.j)2,将结果)x2=(xi-xj)2返传输给位置跟踪服 务A 602和B 604。
步骤620:在此步骤,类似于步骤612,对于下一个要传递的参 数,对于什么公用函数要用于由AFES 606进行的评估,(由位置跟 踪服务A 602和B 604)进行标识。在此具体的例子中,AFES 606被 告知将有另一个输入参数.i,并期望它将被评估的函数(.i-.j)2返回给 位置跟踪服务A 602和B 604。
步骤622:此步骤类似于确认步骤614。
步骤624:此步骤类似于步骤616,其中分别由位置跟踪服务A 602和B 604将新参数yi和yj发送给AFES 606。
步骤626:在此步骤,根据所同意的函数,根据所述函数计算新 的参数,并转发给位置跟踪服务A 602和B 604。在此具体的例子中, 所同意的函数是(.i-.j)2,将结果)y2=(yi-yj)2传输给位置跟踪服务 A 602和B 604。
最后,在本地进行计算,根据所接收到的值)x2和)y2计算距离。 这样,使用[()x2]+()y2]1/2计算距离R。在计算R之后,对评估条件进 行评估。例如,作为对接近度的估计,可以将计算出来的R与一个阈 值R*比较(也就是,是否R<R*?)。如果满足评估条件(如果R<R*), 则发出一个通知。
图7到图9一起图解了与图3的结构中的每一个实体相关联的方 法。图7图解了一个流程图700,其中图示了与位置接收器有关的处 理。在步骤705,从用户A接收位置更新。接下来,在步骤710,如 果用户A进行了移动,则进行评估。如果用户A没有移动,则重复步 骤705。另一方面,如果用户A移动了,则在步骤715,向用户B的 无线服务提供商(WSP)发送一个范围请求。在步骤725,通知AFES 期待数据。在步骤730,坐标xn被发送给AFES。在步骤735,接收到 与方差相等的结果。在步骤740,评估是否还有要发送的坐标,如果 是,则对每一个坐标重复步骤725到740。另一方面,如果没有还要 发送的坐标,则进行距离计算,检测与用户B的接近度。最后,在完 成了步骤745的接近度计算之后,可以重复步骤705到745,以动态 更新接近度信息。
图8图示了请求处理器的处理的流程图800。在步骤805,从用 户A的无线服务提供商(WSP)接收一个范围请求。在步骤810,通 知AFES期待数据。在步骤815,将坐标xn发送给AFES。在步骤820, 接收平方距离参数。在步骤825,评估是否还有坐标要发送,如果是, 则重复步骤810到步骤825。另一方面,如果没有坐标还要发送,则 启动接近度计算,探测与用户A的接近度。在步骤830的接近度计算 之后,重复步骤805到830,以动态更新接近度信息。
图9图示了概要标识AFES的功能的流程图。在步骤905,AFES 接收函数评估请求。在步骤910,接收来自用户Ui的无线服务提供商 的值。接下来,在步骤915,评估是否还有数据要从无线服务提供商 接收。如果是,则重复步骤910到915。另一方面,如果没有数据还 要接收,则计算一个函数,将其返回所有合适的无线服务提供商。
图10概要图示了一个流程图,表示对于根据A和B之间的欧几 里德距离的计算来计算接近度的具体例子,第三方(AFES)1002与 用户A 1004和B 1006之间的各种交互作用。在此具体的例子中,x 坐标(x11008和x21010)以及y坐标(y11012和y21014)与对应的函 数(函数function11016和函数function21018)一起被独立地发送给 第三方1002。在此例子中,给定x1和x2,函数function1根据 R1=function1(x1,x2)=|x1-x2|2计算。类似地,给定y1和y2,函数 function1根据R2=function2(y1,y2)=|y1-y2|2计算。根据所标识的评 估函数计算结果R1和R2,并将其单独转发给每一个用户(A 1004和 B 1006)。每一个用户然后就能够在本地计算接近度。
应当注意,匿名函数评估的完成可以使用少得多的通信和确认开 销。所述两个服务会定期交换他们希望评估接近度的用户(ID)的列 表。AFS会被告知期待从每一个服务接收浮点数的集合,计算对每一 个所述集合的被请求的函数评估(返回一个应答集合)。在无线服务 提供商之间的通信步骤中,还会确定这些集合内的用户的x,y和z坐 标的随机化。
例如,用户A和B的移动电话可以装备有嵌入式java虚拟机, 以便可以在本地执行任意代码以计算接近度。但是,应当注意,移动 设备可以装备用于实现更高级语言比如C、C++的代码的装置,所用 的语言类型不构成对本发明的限制。在图10的具体例子中,给定R1 和R2,用户A和B能够在本地根据下式计算欧几里德距离:距离=R =(R1+R2)1/2。在本地将该结果与预定的阈值t进行比较,如果估 计的值R在该阈值t范围内,则向A或者B发出通知。
另外,本发明还包括基于计算机程序代码的产品,该产品是其中 存储有程序代码的存储介质,所述程序代码可以用来指令计算机执行 与本发明有关的任何方法。该计算机存储介质包括但不限于下述介质 中的任何介质:CD-ROM、DVD、磁带、光盘、硬盘驱动器、软盘、 铁电存储器、闪存、铁磁存储器、光存储介质、电荷耦合器件、磁卡 或者光卡、智能卡、EEPROM、EPROM、RAM、ROM、DRAM、 SRAM、SDRAM,或者任何其它合适的静态或者动态存储器或者数据 存储设备。
实现在基于计算机程序代码的产品中的是软件模块,用于辅助第 一和第二跟踪服务对与相空间中的第一和第二用户相关的偏好数据进 行匿名化(其中,第一和第二跟踪服务分别跟踪第一和第二用户的位 置,所述偏好数据由一个或者多个参数限定)。所述软件模块:(1) 帮助从每一个跟踪服务接收对函数评估的请求,所述请求标识出要传 输的参数,以及要用来评估所述标识出来的参数的对应函数;(2)帮 助向每一个跟踪服务传输一个确认,指出AFES在等待接收所述被标 识的参数;(3)帮助从每一个跟踪服务接收所述被标识的参数;(4) 根据从每一个跟踪服务接收到的参数,评估所述对应函数;以及(5) 帮助将所述评估结果传输给每一个跟踪服务。
结论
在上面的实施例中描述了一种系统和方法,以有效地实现一种对 移动用户的接近度进行匿名检测的系统和方法,而不暴露个体的相空 间坐标。尽管图示和描述了各种优选实施例,但是应当理解,这里的 公开内容不是要限制本发明,而是要覆盖落在本发明的由所附权利要 求所限定的实质范围内的所有修改和替代结构。例如,本发明不应当 受传输到AFES的坐标/函数的数量、函数的类型、本地计算的类型、 实现计算的手段、软件/程序、计算环境或者具体计算软件的限制。