位置服务中基于盲签名的隐私保护技术研究
2014-09-18刘思思
刘思思,叶 猛
(1.光纤通信技术和网络国家重点实验室,湖北武汉 430074;2.武汉邮电科学研究院通信与信息系统,湖北武汉 430074;3.武汉虹旭信息技术有限责任公司安全产品部,湖北武汉 430074)
空间定位技术和无线通信的迅猛发展促进了一种新的应用程序——基于位置信息的服务(Location Based Services,LBS)的出现和发展。用户通过向服务端发送请求来得到相应的服务,如:“查找最近的医院、车站、餐馆等”。然而,这些查询很有可能会泄露用户的私人敏感信息,包括健康状况、生活习惯、政治和宗教信仰,甚至招来垃圾邮件[1]。
用户在位置服务中的隐私保护一般分为以下两种:查询隐私和位置隐私。例如,刘某想知道距离自己最近的公交车站,可以通过移动终端中的LBS应用软件来完成查询。这是LBS应用中比较普遍的一类最邻近查询服务[2]。用户不想其他任何人得知自己发出了哪种类型的业务请求,如与某特定区域有联系的公交车站的查询,同时也不希望泄露自己当前的地理位置(比如医院)。前一种情况属于查询隐私的保护范畴,第二种情况则属于位置隐私的保护范畴。随着用户对个人信息安全的日益重视,如何为用户提供LBS近邻查询服务的同时又能保证用户隐私安全不受侵犯,成为信息安全领域的研究热点。
1 现有位置隐私保护技术
当下主流的保护位置隐私的技术大致分为以下3类。
1.1 插入随机产生的假位置信息
其原理是,用户除了发送自己真实准确的位置信息以外,同时还发送多个随机生成的假信息给服务器。因此,即使恶意攻击者获取到服务器上存储的某个用户的数据,也无法轻易地从中分辨出该用户的准确地理位置信息。但是,服务器在处理每个用户的请求时,实际上要同时处理该用户提交的多个位置信息,无疑大大增加了服务器的开销,还在一定程度上延长了服务器处理相应服务请求的时间,试想当用户提出非常紧急的服务请求时,这个缺陷则是用户所不能忍受的,除此之外,此技术还要求移动终端具有一定的检索准确的服务信息的能力[3]。
1.2 参照物对象
其思想是,发起查询的用户发送给服务器的是某个参照物(如路标)或某个标志性对象的位置信息,而不是自身的真实地理位置,因而恶意攻击者截获到的并不是用户的真实位置,所以这种方法可以在一定程度上保护用户的隐私不被泄露,但需要该用户从服务器返回的响应中识别出哪些信息才是自己真正所需,这将会大大增加移动客户端的负担[4]。
1.3 位置信息的区域化
在这种方法中,发起查询的用户的真实地理位置由一个包含该用户准确位置的泛化的空间范围来替代。这个空间区域的构造可以借鉴k-匿名机制。例如将用户的准确位置泛化为一个比较大的区域范围,而这个范围中包含了其他至少k-1个移动用户。这种方法的局限在于由于服务器无法分辨出该用户在这个足够大区域中的准确位置,便必须从这个区域中按照一定原则选取位置点作为参考,在保证返回给查询用户的服务结果更准确的前提下如何选择参考点以及选择多少个参考点的判断无疑将会增加服务器的开销,此外也会不同程度地增加服务器的响应时间,还会大大降低其服务质量[5]。
2 基于RSA盲签名的隐私保护技术
2.1 系统设计
本文在原有LBS体系结构下,提出了一种改进的隐私保护方法,其思想是将RSA盲签名技术作为位置隐私保护的一种机制,顺利实现了授权匿名身份的注册和验证,在很大程度上满足了用户的隐私要求。该设计中涉及到的应用程序具体如下:
图1 注册协议
客户端程序(Client),承载在用户的移动终端之上,主要负责为发起查询的用户注册匿名ID,与Provider共同协商查询过程中的会话密钥,在用户的位置发生变更时实时地更新动态位置信息,当收到发自其他用户的位置信息的询问请求时,执行特定的位置信息隐私控制策略。
服务端程序(Provider),承载在LBS服务提供商之上,主要负责当收到来自用户的处理请求时,首先认证该用户的合法性,接着为其授权具有唯一性的匿名身份,同时还负责该用户访问权限的终止与撤回。
生成器(Generator),运行在本地PC机上,用于在用户注册过程中的RSA公私钥对的生成以及相应的辅助计算,同时保证与Client交互过程中的安全性。
为了实现这三个应用程序之间的交互,本文主要设计了两种协议:注册协议和访问控制协议。这两种协议是基于RSA密码体制中的盲签名的思想而实现的,其详细内容具体如下。
1)注册协议:注册协议负责授权匿名ID的下发。在移动用户成功注册后,就可以通过LBS应用软件使用该注册匿名ID来访问LBS服务提供商,同时,该授权匿名ID与该用户的真实身份完全独立,不存在任何关系,无线链路上的恶意攻击者即使窃取到该用户与LBS服务器交互过程中所使用到的这个匿名ID,也无法将其与用户的真实身份联系起来,更不用说获取到该用户的真实地理位置了。注册协议如图1所示。
该协议主要由三部分内容构成:授权匿名ID的产生,公私钥对(与用户有关的个人隐私信息毫无关联)的生成,Client(以下简称为C)与Provider(以下简称为P)的认证。如前假设,C与P之间的通信过程是完全保密的,安全的,Generator则在与互联网物理隔断的本地计算机上实现,然后将所生成的公私钥对通过数据线传送到用户的移动终端上。该协议中,认证过程是双向的,C在进行签名以后,会获得一个授权的匿名ID,并且该身份自生成起便被添加了一个过期时间戳,也就是说,超过有效时间以后,该ID可以被判为无效,从而无法继续使用。为了防止恶意攻击者运用数据挖掘技术找出用户真实身份与过期时间戳的联系,从而识别出用户的真实身份,该协议将移动用户的过期时间戳设定为不唯一的,也就是说,在相同时间段内注册的有效用户共享同一个过期时间戳。此外,当有效用户再次发起LBS请求时,用户不需要再次提供在注册协议中用到的加密的身份,而仅需要提交首次注册时生成的匿名ID即可完成第二部分中的认证过程。通过以上验证后,P将会为C的新公钥生成一个新的带过期时间戳的签名,这样用户就完成了新的授权匿名ID的获取。该协议中的授权匿名身份彻底切断了它与用户真实身份之间的联系。用户只有在授权匿名ID过期以后,才需要利用如图1所示的注册协议重新认证,从而获得一个新的匿名ID完成下一部分与LBS服务提供商的通信。
2)访问控制协议:当C获取了授权匿名ID以后,该用户就通过访问控制协议来访问LBS服务提供商,获取对应的查询结果信息。从图2中不难看出,该协议的实现主要包括以下两个阶段:授权匿名ID的认证过程以及会话密钥的协商过程。当P收到来自C的查询请求后,首先验证C的公钥是否真实有效,接下来验证在第一部分中获取到的匿名ID的有效性,经过这部分处理以后,当核实该公钥拥有有效的数字签名,并且生存期也在有效范围内以后,P紧接着与C协商会话密钥用于随后进行的信息交互过程。
图2 访问控制协议
2.2 新模式的安全性分析
新模式的优点主要体现在如下几个方面:
首先,假设恶意攻击者从无线链路中截获到与用户有关的数据信息,比如:注册阶段中用户与服务器交互的信息,访问控制协议中用户与服务器交互的信息,成功建立连接后,用户与服务器之间传输的信息。
在注册过程中,用户X用公钥加密以后生成密文m3,恶意窃听者只有在知晓用户采用公钥的前提下,才能破解此公钥算法,截获到明文信息,这种可能性非常小;m4是P给C的签名,但是这个签名是带有盲因子的,假如恶意窃听者获取到这个签名,但由于并不知晓盲因子,因此仍然无法获取C的真实签名信息。
在访问控制阶段,假如恶意窃听者截获到C发送给P的请求,也无法破解出m0,因为m0中带有由P的私钥对C的公钥产生的签名,在进行解密运算时如果不使用事先约定好的私钥,就无法解出明文。此外,如果恶意攻击者偷偷修改认证请求,将无法通过A的检测从而终止通信过程;m是用P的公钥加密生成的密文,虽然公钥可用来加密,但却不能用来解密,m1中带有该密文的hash值,恶意攻击者无法修改它,并且由于m1还包含由C的公钥加密以后得到的会话密钥,同样无法被解密。
成功建立连接后,C与P之间所有的信息传输将会由之前产生的会话密钥来加密,恶意窃听者破解这个密钥的难度非常大,几乎无法实现,因此将无法获取到明文。不仅如此,鉴于用户C在注册协议中生成的公私钥对中不包含任何个人信息,并且由于P在签名时,盲因子已对该用户的公钥进行盲化处理,因此该用户的公钥对P是不可见的。在接下来的交互过程中,窃听者也同样无法知晓使用匿名ID发送认证请求的用户的真实身份。不难发现,这种方式就实现了用户对其位置隐私的控制。除此之外,因为采用了公钥算法的缘故,这个方案能克服一些原有模式中计算复杂度高、开销大的弱点,从而在最大程度上发挥全性方面的优势。
3 性能测试
3.1 测试环境
模拟测试采用著名的Thomas Brinkhoff路网数据生成器,以城市Oldenburg的交通路网(周长大约6 000 km)作为输入,生成模拟数据.算法采用C语言实现,在处理器CPU Intel Pentium 4主频2.0 GHz、内存2 Gbyte的平台上运行。
3.2 测试结果
实验评测了匿名处理时间、匿名成功率和内存占用随着隐私度(k)增加的变化情况,测试结果如下。
3.2.1 匿名处理时间测试
匿名处理时间指的是用户的查询请求从提出到匿名成功所花费的时间。如图3所示,各个模式的匿名处理时间均随着隐私度的增加而增长。这是因为随着隐私度的增长,每一个查询均需要更多的时间处理、等待才能匿名成功。如图3所示,新模式相对于另外三种模式,在处理隐私度较高的查询时,处理时间并没有急剧上升,波动很小,性能上得到了较大改善,与预期的结果相符合。
3.2.2 匿名成功率测试
该测试的目的主要是为了比较各个模式在外部环境相同的前提下随着隐私度的增加,处理查询请求的匿名成功率的情况。
匿名成功率是用户成功获得的匿名查询数量占发送的总查询数的百分比。隐私度k的值越大,代表用户的隐私保密要求更加严格。如图4所示,随着隐私度k的增长,成功率逐渐下降,但是新模式相对于其他3种模式在隐私度较大的情况下,成功率依然保持在94%以上,性能上得到了较大改善,与预期的结果相符合。
图3 匿名处理时间-隐私度
图4 匿名成功率-隐私度
3.2.3 内存消耗测试
该测试的目的主要是为了比较各个模式在外部环境相同的前提下,在处理过程中内存空间的开销情况,绘制内存占用图。如图5所示,新模式的内存占用与另外三种算法相比,性能上得到了较大改善,与预期的结果相符合。
图5 不同模式的内存消耗
通过对各个算法在匿名处理时间、匿名成功率和内存占用方面的测试可以得出以下结论:
1)改进的模式不受隐私度的限制。
2)改进的模式在随着用户的隐私度增加的情况下匿名成功率较高,能够很好地抵抗高隐私度带来的性能低的问题。
3)改进的模式对内存资源的消耗并没有很大的增长。
4 总结
本文通过对各种位置隐私保护技术进行分析和总结,基于RSA密码体制提出了一种盲签名方案,并基于此方案,借助现有LBS架构体系和公钥体质的支撑,提出了一种基于授权匿名身份的位置隐私保护技术。仿真实验证明了这种新的模式能有效地降低恶意攻击者对用户位置信息的识别率,大大加强了对用户隐私的保护,而且该算法在内存占用上有显著地改进,是一个切实可行的模式。
:
[1]潘晓,肖珍,孟小峰.位置隐私研究综述[J].计算机科学与探索,2007,1(3):268-281.
[2]XU J,TANG X,HU H,et al.Privacy-conscious location-based queries in mobile environment[J].IEEE Trans.Parallel and Distributed Systems,2010,21(3):313-326.
[3]KIDO H,YANAGISAWA Y,SATOH T.An anonymous communication technique using dummies for location-based service[EB/OL].[2013-03-01].http://wenku.baidu.com/link?url=8cWAfO9q6ra9e-9Ce8CiQi8p9b0HlzRfiGZYGHe692aQNPGVq4EY0gQM8ZcT7ui4ESyOBfv s13n2jL6TgLpaAtwamAI9-c_QWPs4clKd0yq.
[4]HONG J I,LANDY J A .An architecture for privacy-sensitive ubiquitous computing[EB/OL].[2013-03-01].http://wenku.baidu.com/link?url=olsk4mMAunSCY0gL-Ta7iqrvstnge7myfG0eNMqbAlGD5a1Y2vcu RaaQxgpH2urJa4lY3-iS1O2v3SfKM8HHevuViy27U2rPWFtI5ea3zaq.
[5]GEDIK B,LIU L.A customizable k-anonymity model for protecting location privacy[EB/OL].[2013-03-01].https://smartech.gatech.edu/handle/1853/100.