2. 南开大学 网络空间安全学院,天津 300350;
3. 河南大学 计算机与信息工程学院,河南 开封 475004
2. College of Cybersecurity, Nankai Univ., Tianjin 300350, China;
3. School of Computer and Info. Eng., Henan Univ., Kaifeng 475004, China
移动社交网络中的“社交发现”服务,因其允许用户通过分享自己的个人属性信息,去寻找周边区域中和自己兴趣特点相近的潜在朋友,而越来越受到广大用户的欢迎。然而,由于用户的属性信息中通常包含大量的个人隐私内容,且用户私人资料与用户位置往往又深度结合,如果没有进行有效的防护,攻击者可以很容易地把用户信息和周边某个具体用户联系起来,非法获取一些用户的真实身份和社会关系,造成大面积隐私泄露的严重后果[1]。因此,有一些研究者关注社交发现的隐私保护方案[2-5],这些方案可使用户双方比较它们之间敏感的个人资料而又不互相泄露彼此的隐私信息。
现有的社交发现隐私保护方案,通常分为两大类:第1类,其社交发现不依靠服务器,方案安全性由用户端点对点地提供保证[6],或者服务器仅协助管理密钥[7]。这类方案中所有比较和发现的过程均在用户端执行,如果周边同时响应社交发现服务用户的数目过多,用户端的计算压力将会非常大,很容易造成服务质量严重下降。另外,用户端由于缺乏必要监管,安全性较低,更易被攻击者攻破。第2类,社交发现基于可信服务器,方案安全性有服务器提供保证[8]。服务器承担绝大部分计算任务,社交发现过程将在服务器集中执行。这类方案很大程度上减轻了用户端的负担,检索用户范围大,服务响应时间短,便于大范围部署。但由于服务器参与全部发现过程,有可能存在其被攻破或者服务器自身出于各种目的试图非法获取用户敏感资料的危险。因此,本文关注的焦点是如何使得服务器既能有效地进行社交发现服务,又尽可能少地掌握用户个人的隐私信息。
目前,已有一些针对可信服务器的社交发现隐私保护方案,比如,Guo等[9]把用户待比较的属性信息度量化,用以比较其中的相似程度;Zhu等[10]将用户个人属性信息转换为带有权重的向量,进行细粒度控制使得比较结果更精确;Naini等[11]提出运用加密技术,加密用户个人属性信息的思想;Niu等[12]构建了一个混淆矩阵,将用户个人属性信息转换成密态再进行匹配;Li等[13]对社交网络中每一个节点的度与索引进行比较。通过研究,以上方案都存在两方面隐患:1)大多没有从实际应用角度考虑,社交发现过程缺乏对用户身份的认证机制,攻击者容易通过窃听信道,发起中间人攻击,或者假冒身份进行欺骗攻击;2)为了提高整个社交发现的效率,服务器获得用户个人属性资料信息过多,很难抵御攻击者与服务器的共谋风险。
针对以上安全隐患,本文提出了一种基于密钥协商判定性迪菲–赫尔曼和身份匿名(Diffie–Hellman and Identity anonymity,DH–IA)技术的安全防护方案,下文简称为DH–IA方案。首先,给出一种基于身份访问权限认证技术和密钥协商相结合的双重认证机制,提高社交发现服务中用户认证的安全性,防止合法用户身份泄露和恶意攻击者进行伪造身份攻击;然后,给出一种综合运用双线性对、不可逆哈希函数、随机密钥、对称及非对称加密技术的保护机制,防止恶意攻击者伪造和破解社交发现服务中用户的隐私属性信息。
1 DH–IA方案的系统模型与设计目标 1.1 系统模型在移动社交网络服务中,用户到达一个新的地点后,经常会有搜索周边潜在朋友的需求。用户使用这样的服务前,首先初始化关于自己隐私属性信息的文件。该文件包括很多不同的属性值,比如,反映用户兴趣爱好的信息(如电影、足球、旅游等)。系统会把这些属性值抽象成对应的特征集合,表示为
![]() |
图1 DH–IA方案的系统架构 Fig. 1 System architecture of DH–IA scheme |
用户A和用户B均为移动社交网络服务的注册用户,它们之间的位置距离在查询范围之内。一个完整的社交发现验证过程是:1)用户A发起查询周边潜在好友请求,同时,将自己的兴趣属性集
服务器可以由移动社交网络服务商部署,也可以租用其他公司的专业服务器。因此,服务器是一个不完全可信的第三方服务器,用户不能将其兴趣属性集不加防护地直接发送给服务器,必须先经过可靠的安全防护机制进行处理。
1.2 威胁模式在移动社交网络社交发现服务的过程中,存在两种可能的威胁模式:
1)本方案设定服务器和参加社交发现过程的其他用户,都是“诚实但好奇”(honest but curious)的,它们均能如实地按照规则的要求进行查询服务,返回正确的比较结果,但是它们也会出于某种目的,试图从自己获得的信息中,分析并推测出其他用户更多的敏感资料。
2)恶意攻击者有可能监听用户和服务器之间、用户之间的通信信道,窃取通信信息,进行暴力破解攻击,或者篡改、伪造信息发起中间人攻击及重放攻击[14]。恶意攻击者还有可能伪造或盗用其他用户身份,试图假冒他人与用户联系,非法获得用户个人属性集的信息。
1.3 设计目标针对上述威胁模式,DH–IA方案应在满足移动用户社交发现的服务功能前提下,不泄露用户的个人隐私信息。一方面,恶意攻击者和服务器及其他移动用户都不能通过各种手段,获取用户的个人属性信息文件的具体内容。在DH–IA方案执行过程中,执行社交发现过程的每一个参与者,无论是服务器还是用户,都只能获得比较的结果即“匹配成功”或者“匹配失败”,不能获得其他任何参与比较的属性信息。另一方面,DH–IA方案应有相应的保护机制,使得恶意攻击者即使窃听通信信道获得比较双方交互的信息,也无法将其识别。对于恶意攻击者的欺骗攻击和重放攻击,用户和服务器应能迅速发现,能够快速确定所获得的信息在传输过程中是否完整、是否被恶意篡改。
2 预备知识DH–IA方案为了阻止攻击者通过窃听信息、暴力破解等手段,非法破解用户个人属性信息文件,使用Diffie–Hellman密钥协商机制构建加密方法,使得在用户密态数据可以准确比较的前提下,可以保证恶意攻击者无法破解,提升方案的整体安全性。同时,DH–IA方案为了识破攻击者伪造用户身份的欺骗攻击,综合运用了不可逆哈希函数、密钥认证等技术手段,构建安全的用户身份认证机制,保护合法用户的隐私信息安全。
其中,不可逆哈希函数是一组哈希函数;公钥加密算法采用RSA(Rivest,Shamir,Adleman);D–H密钥协商机制基于椭圆曲线上的双线性对(bilinear pairing)构造。
假设
1)双线性。对于任意群元素
2)非退化性。存在任意群元素
3)可计算性。对于任意群元素
本文设定在一个完整的社交发现过程中,通信双方分别为用户A和用户B,其中,用户A是查询服务请求者,B是查询服务响应者。DH–IA方案共包含用户注册、身份认证、查询和用户建立联系4个部分。
3.1 用户注册服务器选择一个随机的安全系数,生成素数p阶群的双线性映射参数
$\begin{aligned}[b] & S = (p,g,e,e{(g,g)^x},G,{G_T}), \\ & x \in Z_p^*,g,{h_1},{h_2} \in G \end{aligned} $ | (1) |
在每个用户首次使用社交发现服务之前,都需要在服务器上完成注册。以用户A为例,注册时先生成随机数
$\begin{aligned}[b] & {I_{{A}}} = ({g^{x + {a_{{A}}}{u_{{A}}}}},{g^{{u_{{A}}}}},{g^v},h_1^{{u_{{A}}}}h_2^{{v_{{A}}}}), \\ &{a_{{A}}},{u_{{A}}},{v_{{A}}}\in Z_p^*,g,{h_1},{h_2} \in G \end{aligned} $ | (2) |
其他用户以类似用户A的方式完成注册。
3.2 身份认证在每个用户每次使用社交发现服务之前,都需要先在服务器上完成相应的身份认证[15-17],如图2所示,以确定用户的合法性。
![]() |
图2 身份认证过程 Fig. 2 Process of identity authentication |
当用户A向服务器提出查询请求时,需先进行身份验证。用户A选择一随机数
$\begin{aligned} U_{{A}}' =& \frac{{e({C_1},{g^{x + {a_{{A}}}{u_{{A}}}}})}}{{e({g^{{u_{{A}}}}},{C_2})e({g^{{v_{{A}}}}},{C_3})e(h_1^{{u_{{A}}}}h_2^{{v_{{A}}}},{C_1})}} = \\ & \frac{{e({g^y},{g^{x + {a_{{A}}}{u_{{A}}}}})}}{{e({g^{{u_{{A}}}}},{g^{{a_{{A}}}y}}h_1^{ - y})e({g^{{v_{{A}}}}},h_2^{ - y})e(h_1^{{u_{{A}}}}h_2^{{v_{{A}}}},{g^y})}} = \\ & \frac{{e({g^y},{g^x})e({g^y},{g^{{a_{{A}}}{u_{{A}}}}})}}{{e({g^{{u_{{A}}}}},{g^{{a_{{A}}}y}})e({g^{{u_{{A}}}}},h_1^{ - y})e({g^{{v_{{A}}}}},h_2^{ - y})e(h_1^{{u_{{A}}}}h_2^{{v_{{A}}}},{g^y})}} = \\ & \frac{{e({g^y},{g^x})}}{{e{{(h_1^{{u_{{A}}}}h_2^{{v_{{A}}}},{g^y})}^{ - 1}}e(h_1^{{u_{{A}}}}h_2^{{v_{{A}}}},{g^y})}} = \\ & \quad\quad e{(g,g)^{xy}} = {U_{{A}}} \end{aligned} $ |
服务器接到用户A的查询请求,会先进行身份验证,如果
用户A接到“OK”信息后,首先构建用于查询比较的属性集。用户A可以选择自己全部的兴趣点属性集,也可以只选择其中一部分作为本次查询的对象。假设本次查询中用户A的属性集为
然后,用户A利用双线性映射,生成自身密钥
最后,用户A使用在身份认证过程中接收到的服务器公钥
服务器接收到查询信息
接下来,服务器对周边区域内符合条件的所有其他用户发出邀请,假设用户B收到邀请并回应同意,服务器将对用户B进行身份认证,具体过程同上。通过身份认证后,用户B利用双线性映射,生成自身密钥
服务器完成上述准备工作后,对获得的
![]() |
图3 查询比较过程 Fig. 3 Process of query comparison |
3.4 用户建立联系
完成比较工作后,被服务器推荐成为朋友的双方,开始进行联系。假设用户A被推荐的最佳选择是用户B,在用户A和用户B对话之前,为了防止可能的攻击者使用伪造用户B的身份欺骗攻击,非法篡改数据,有必要进行用户身份确认,识别可能的危险,建立安全的联系。
用户A与用户B建立联系,也即把用户B在移动社交网络上的身份标志
$ VM = {E_{ke{y_{{A}}}}}(ID_{{B}}',h(I{D_{ B}})) $ | (3) |
用户A接收到
$ ID_{{B}}' \oplus {\left( {ke{y_{{B}}}} \right)^{RA}} = {\left( {ke{y_{{A}}}} \right)^{RB}} \oplus I{D_{{B}}} \oplus {\left( {ke{y_{{B}}}} \right)^{RA}} $ | (4) |
显然经过两次异或后,式(4)的结果为
![]() |
图4 用户建立联系过程 Fig. 4 Process of establishing user connections |
4 安全性分析
本文提出的DH–IA方案设定了响应的用户对象和服务器都是“诚实但好奇”的,它们均能如实按照规则的要求进行服务。它们也不会相互勾结,但都试图从自己获得的信息中,分析并推测出查询用户的更多个人属性资料信息。同时,还有可能存在恶意攻击者窃听通信信道,伪造虚假身份,企图暴力攻破用户的个人属性集,非法获得用户更多敏感数据。下面针对这两个主要威胁进行安全性分析,证明DH–IA方案是安全的。
定理1 本方案中服务器和响应用户能够成功推测出查询用户个人属性集的概率是可忽略的。
证明:对服务器而言,它确实可以获得由查询用户A提交的,经过单向的不可逆哈希函数
对响应对象用户B而言,在本方案的全部比较过程中,由于只有服务器进行匹配计算,用户B不能获得任何与其他用户个人属性集有关的信息,只从服务器端接收到是否有匹配成功的消息。因此,响应用户B不能推测出查询用户A的个人属性集。
由此,服务器和响应用户成功推测出查询用户个人属性集的概率是可忽略的。定理得证。
定理2 本方案可以阻止恶意攻击者的中间人攻击和重放攻击。
证明:攻击者有可能通过窃听不安全的通信信道,截获用户发送给服务器的查询请求,发起中间人攻击或者重放攻击。本方案中服务器对于每一次的查询请求,都必须先进行身份认证,其安全性可以规约到双线性映射的安全性,故攻击者发起的中间人攻击无法成功。另外,DH密钥协商过程中,用户A、B与服务器的通信,使用了服务器的公钥进行加密。因此,密钥协商过程中,攻击者也无法发起中间人攻击。同时,用户在每次查询信息中加入了时间戳
定理3 本方案可以阻止恶意攻击者的伪造身份攻击。
证明:攻击者有可能在比较成功后,拦截用户联系信息,伪造被匹配者用户B的身份,企图冒名顶替与查询者用户A建立联系。本方案中用户进行交友前,采取针对用户B的社交网络标志
定理4 本方案可以阻止恶意攻击者的暴力破解攻击。
证明:攻击者有可能通过窃听通信数据,利用获得的背景知识,构造攻击字典,进行暴力破解攻击。本方案中用户的个人属性集发送前,要经过附有随机数的不可逆哈希函数的处理和公钥加密,攻击者暴力破解的难度相当于攻破这两个密码学机制,这显然是非常困难的。而且,当用户每次发起新的查询服务时,都会更换新的随机安全参数,生成新的不可逆哈希函数,这意味着攻击者无法窃取到足够的样本进行分析,有效地阻止攻击者的暴力破解攻击。定理得证。
综上所述,与同类方案[3–4,9–13]相比,DH–IA方案在安全性上取得了以下进步:
1)同类方案在密钥交换过程中缺乏用户身份的认证机制,因此很容易遭到中间人攻击和重放攻击。DH–IA方案可有效防止恶意攻击者伪造身份的中间人攻击和重放攻击行为。
2)同类方案中用户一般采用真实身份发送匹配消息,因此恶意攻击者可以通过用户行为分析和暴力破解等技术,获取用户的信息之后能较准确地进行身份比对。DH–IA方案中,恶意攻击者无法获取用户身份信息。
3)同类方案中可信服务器被认为是“绝对可信”,掌握所有用户参与匹配的隐私属性信息的详细细节,存在着可信服务器被攻破或与恶意攻击者共谋的重大风险。DH–IA方案中,在保证可比较的前提下,使得用户隐私属性信息在可信服务器中依然处于加密状态,使得即便可信服务器出现一定的泄露风险,依然能保证用户隐私属性信息的安全。
5 性能评估所有实验运行在一台具有2.4 GHz Intel CPU、4 GB内存、操作系统为Windows 8的PC上。模拟实验在Java环境下应用MyEclipse平台实现;实验数据集利用Brinkhoff提供的移动对象生成器。在DH–IA方案中,用户身份认证时采用的是判定性双线性迪菲–赫尔曼(decisional bilinear Diffie–Hellman,DBDH)机制;用户兴趣点属性值的隐藏采用不可逆的安全散列算法(secure hash algorithm,SHA)中的SHA1机制;密钥协商应用RSA加密算法;密钥长度为512位。模拟实验中应用开源密码算法库jPBC来实现以上算法。
目前,移动社交网络中社交发现的隐私保护的主要方案有Fine-grained[3]、WAS[12]等方法。为了便于与上述方案进行性能比较,设定每次实验都具有相同数目的虚拟用户,共生成1 000名实时在线用户同时参与朋友匹配;在不同实验中每个用户设定兴趣点属性总数也是固定的,变化范围为{10,20,30,40,50}。下面就每一种方案自身的保护机制,分别给出其时间开销如图5所示和通信开销如图6所示,两方面的情况进行对比。
![]() |
图5 社交网络中社交发现各方案时间开销比较 Fig. 5 Time cost comparison of social discovery solutions in social networks |
![]() |
图6 社交网络中社交发现各方案通信开销比较 Fig. 6 Comparisons of communication costs of social discovery schemes in social networks |
由图5可见,在一个1 000人同时进行社交发现服务的高密度模拟环境中,本方案的时间开销最小。这是因为本方案(DH–IA)设计中,最大的时间消耗是使用512位密钥进行的加解密计算,其余计算采用的是复杂度较低的哈希运算和异或运算,相比于其他两个方案中,分别需要进行多次的512位和1 024位的求幂操作,显然更具优势。值得注意的是,本方案由于要对用户每个具体属性值进行逐一处理,增长幅度受属性值总数影响比较明显。由于在实际使用中,用户设定的兴趣点属性总数并不会太多,所以影响在可控范围之内。
由图6可见,在上述高密度模拟实验对比中,本方案的通信开销最小。这是因为本方案的用户属性是由向量表示,每一个属性都具体转化成一个数值,本身并不需要花费多大空间。本方案在运行中用户和服务器不需要频繁的交互数据,只需要服务器返回匹配是否成功的简单结果,这都使得本方案比同类方案[3,12]在通信开销上有着很明显的优势。
6 结 论本文提出了一种基于判定性D–H密钥协商和身份匿名技术的社交发现隐私保护方案。首先,系统对用户身份进行真伪认证;查询用户与响应用户通过身份认证后,开始进行属性匹配。用户属性哈希值集由基于查询用户随机选定的不可逆哈希函数与随机数生成,服务器负责计算所有响应用户与查询用户的属性哈希值集匹配值,根据值的大小向查询用户推荐好友。安全性分析表明,本方案能够防止“好奇的”服务器与用户获取其他查询用户的属性信息,能够抵御恶意攻击者的中间人攻击、重放攻击和伪造身份等多种攻击,有效地实现对用户身份和个人资料的隐私保护。性能测试实验表明,该方案提高了移动社交网络中潜在社会关系推荐的效率,使得有共同兴趣爱好的用户能够更快捷地匹配成功。本方案仍有需要持续改进的地方,例如:由于用户端使用加解密的方式,因此在计算开销上依然还有进一步降低的空间。在下一步工作中,将考虑引入权重计算的匹配方案,从而获得更准确的用户兴趣匹配结果。
[1] |
Shokri R,Theodorakopoulos G,Troncoso C,et al.Protecting location privacy:Optimal strategy against localization attacks[C]//Proceedings of the 2012 ACM Conference on Computer and Communications Security.Raleigh:ACM,2012:617–627.
|
[2] |
Li Ming,Cao Ning,Yu Shucheng,et al.Findu:Privacy-preserving personal profile matching in mobile social networks[C]//Proceedings of the 2011 IEEE International Conference on Computer Communications.Shanghai:IEEE,2011:2435–2443.
|
[3] |
Dong Wei,Dave V,Qiu Lili,et al.Secure friend discovery in mobile socialnetworks[C]//Proceedings of the 2011 IEEE International Conference on Computer Communications.Shanghai:IEEE,2011:1647–1655.
|
[4] |
Kartey K,Somia H,Madawat V,et al. Two-cloud secure database for numeric-related SQL range queries with privacy preserving[J]. IEEE Transactions on Information Forensics and Security, 2017, 12(7): 1596-1608. DOI:10.1109/TIFS.2017.2675864 |
[5] |
Gao Chongzhi,Cheng Qiong,Li Xuan,et al. Cloud-assisted privacy-preserving profile-matching scheme under multiple keys in mobile social network[J]. Cluster Computing, 2019, 22(Supplement 1): 1-9. DOI:10.1007/s10586-017-1649-y |
[6] |
Zhang Rui,Zhang Jinxue,Zhang Yanchao,et al. Privacy-preserving profile matching for proximity-based mobile social networking[J]. IEEE Journal on Selected Areas in Communications, 2013, 31(9): 656-668. DOI:10.1109/JSAC.2013.SUP.0513057 |
[7] |
Luo Entao,Wang Guojun,Liu Qin,et al. Fine-grained secure friend discovery scheme in mobile social networks[J]. Journal of Software, 2018, 29(10): 331-346. [罗恩韬,王国军,刘琴,等. 移动社交网络中细粒度朋友发现隐私保护机制[J]. 软件学报, 2018, 29(10): 331-346. DOI:10.13328/j.cnki.jos.005295] |
[8] |
Jiang Wenjun,Wu Jie,Wang Guojun,et al. Forming opinions via trusted friends:Time-evolving rating prediction using fluid dynamics[J]. IEEE Transactions on Computers, 2016, 65(4): 1211-1224. DOI:10.1109/TC.2015.2444842 |
[9] |
Guo Linke,Zhang Chi,Sun Jinyuan,et al. A privacy-preserving attribute-based authentication system for mobile health networks[J]. IEEE Transactions on Mobile Computing, 2014, 13(9): 1927-1941. DOI:10.1109/TMC.2013.84 |
[10] |
Zhu Xiaoyan,Liu Jie,Jiang Shunrong,et al.Efficient weight-based private matching for proximity-based mobile social networks[C]//Proceedings of the 2014 IEEE International Conference on Communications.Sydney:IEEE,2014:4114–4119.
|
[11] |
Naini F M,Unnikrishnan J,Thiran P,et al. Where you are is who you are:User identification by matching statistics[J]. IEEE Transactions on Information Forensics and Security, 2016, 11(2): 358-372. DOI:10.1109/TIFS.2015.2498131 |
[12] |
Niu Ben,Zhu Xiaoyan,Liu Jie,et al.Weight-aware private matching scheme for proximity-based mobile social networks[C]//Proceedings of the 2013 IEEE Global Communications Conference.Atlanta:IEEE,2013:3170–3175.
|
[13] |
Li Mengyuan,Na Ruan,Qian Qiyang,et al. SPFM:Scalable and privacy-preserving friend matching in mobile cloud[J]. IEEE Internet of Things Journal, 2017, 4(2): 583-591. DOI:10.1007/978-3-540-72540-4_4 |
[14] |
Lindell Y,Pinkas B. An efficient protocol for secure two-party computation in the presence of malicious adversaries[J]. Journal of Cryptology, 2015, 28(2): 312-350. DOI:10.1007/s00145-014-9177-x |
[15] |
Li Yanping,Liu Xiaoxue,Qu Juan,et al. Multi-server anonymous remote authenticated key agreement protocol based on smart card[J]. Journal of Sichuan University(Engineering Science Edition), 2016, 48(1): 91-98. [李艳平,刘小雪,屈娟,等. 基于智能卡的多服务器远程匿名认证密钥协商协议[J]. 四川大学学报(工程科学版), 2016, 48(1): 91-98. DOI:10.15961/j.jsuese.2016.01.014] |
[16] |
Zhang Yulei,Wang Huan,Li Chenyi,et al. Provable secure and compact certificateless aggregate signcryption scheme[J]. Journal of Electronics & Information Technology, 2015, 37(12): 2838-2844. [张玉磊,王欢,李臣意,等. 可证安全的紧致无证书聚合签密方案[J]. 电子与信息学报, 2015, 37(12): 2838-2844. DOI:10.11999/JEIT150407] |
[17] |
Xu Yan,Huang Liusheng,Tian Miaomiao,et al. A provably secure and compact certificateless aggregate signature scheme[J]. Acta Electronica Sinica, 2016, 44(8): 1845-1850. [许艳,黄刘生,田苗苗,等. 一种可证安全的紧致无证书聚合签名方案[J]. 电子学报, 2016, 44(8): 1845-1850. DOI:10.3969/j.issn.0372-2112.2016.08.011] |