APP下载

车联网中权限下放的隐私保护方案*

2019-12-11张爱新

通信技术 2019年12期
关键词:发送给挑战者公钥

刘 源,张爱新

(上海交通大学,上海 200240)

0 引 言

随着物联网[1]的蓬勃发展,车联网(Internet of Vehicle,IoV)[2-3]作为物联网的重要组成部分之一,极大地促进了智能交通系统(Intelligent Transport System,ITS)[4]的发展,在社会中发挥着越来越重要的作用。车联网中,用户可以适时地广播位置、路况等信息。为保证车联网中广播信息的合法性和可信性,用户在广播信息时还需要同时提供其身份信息。换言之,在一条广播信息中,同时存在用户的位置信息和身份信息。文献[5]指出,如果有恶意用户持续收集来自某一固定用户的广播信息,可以推测出该用户的隐私数据。比如,通过广播信息可以跟踪其行驶路线,进而得到其生活习惯或是家庭住址等敏感信息。保护用户的位置隐私对车联网的安全发展至关重要,要保护位置隐私就需要打破位置与身份的对应关系。可以有两种解决方案:一是在广播信息中使用虚拟位置,二是在广播信息中提供用户的虚拟身份。由于在车联网中广播共享的信息大多与位置有关,因此一般不采用虚拟位置进行隐私保护。目前,用户的虚拟身份大多采用生成假名的方式实现。基于假名的车联网隐私保护方案一般由用户、认证中心(Trusted Authority,TA)和路边单元(Roadside Unit,RSU)构成。假名需要具备可认证性和条件可追踪性。可认证性是指通过用户的假名即可验证该用户身份的合法性,同时不会泄露其真实身份信息;可追踪性则是指当需要对可疑用户进行调查取证时,可以从其假名中恢复出该用户的真实身份。

文献[6]通过在用户的真实身份信息中加入随机数生成假名,并经由TA签名后实现基于假名的身份认证与追踪。该方法假设TA是诚实可信的,无法防止来自TA的内部攻击;另外,用户每更换一次假名,都要请求TA进行签名,严重降低了通信效率。文献[7]提出了一种通过哈希链生成假名的方法。首先由用户身份和一个称为种子的随机数经哈希后得到初始假名;后续假名均由上一轮的假名哈希得到,TA要对所有假名进行签名操作。该方案也是建立在TA是诚实可信的基础上,身份认证依然依赖于TA的签名。另外,由于哈希函数的单向性,无法从假名恢复出用户的真实身份。为实现追踪功能,该方案只能遍历所有用户的种子并逐一计算比对,系统效率低下。为提高效率,文献[8]提出在RSU上布设雾节点,以承担部分用户管理功能,但假名的认证和追踪仍然依赖于TA或RSU的签名,没有从本质上解决问题。文献[9]采用零知识证明的思想实现条件隐私保护。首先由TA给合法用户颁发一个证书,用户可以通过此证书生成任意数量的假名,并且不再需要TA签名,大大提高了系统效率,但是该方案依然假定TA是诚实可信的。

综上,目前方案的安全性均依赖于TA是诚实可信的这一前提,TA掌握了系统中所有用户及RSU的全部信息,无法有效抵御内部攻击。为此,本文提出了一种半可信环境下权限下放的隐私保护方法。用户证书不再由TA单方生成,而是由TA、RSU和用户三方共同生成。采用形式化方法对该方案的安全性进行分析,仿真测试表明,与其他方案相比,本文方案具有更好的综合性能。

1 系统模型

本文系统总体架构如图1所示,TA、RSU和用户呈树状结构。

图1 系统总体架构

本文系统形式化定义如下。

(1)params←Setup(1λ):系统初始化,主要用于生成所需的公共参数集合params。

(2)CertR←JoinR(V1,V2,k):RSU加入时,需要向TA进行注册,以便为其他用户提供服务,并分担TA的权限。RSU会生成自身的公私钥对,并经由TA合法化。

(3)CertU←JoinU(u,v,s1,s2,s3):用户加入时要先选定一个RSU。TA、RSU和用户各自生成一个随机数,分别为s1、s2和s3。TA、RSU会通过自己的私钥u、v与用户共同生成用户的证书。即使某一方使用非随机数,仍然无法影响证书的分布。

(4)Pseudonym←PseuGen(CertU):用户可以通过自己的证书CertU生成自身的假名。

(5){1,0}←Verify(Pseudonym):用户可以验证其他用户的假名,以检验该用户身份的合法性。若合法,输出为1;若非法,输出为0。这个过程中,无法获取此假名对应的用户真实身份。

(6)A ← Trace(Pseudonym,u,v,):TA和 RSU使用两方协议追踪用户。通过TA的主私钥u和RSU的主私钥v可以恢复用户的真实身份。

2 系统构造

本系统基于SM2签名算法[10]和条件隐私保护认证算法[11-12]实现,主要流程如下。

(1)params← Setup(1λ)

若G1、G2、GT是3个p阶循环群,p为素数。选取一个双线性映射e:G1×G2→GT,g1和g2分别为G1和G2的生成元。TA选取一个随机数u作为私钥。相应公钥为。运算过程中,选取一个哈希函数H:{0,1}*→Z*q,则系统公共参数集为:

(2)CertR←JoinR(V1,V2,k)

RSU的注册,当有新的RSU想要加入系统时,将进行如下过程:

①将选取一个随机数v,作为主私钥,相应的公钥为V1=gv1、V2=gv2,然后将公钥发送给TA。

②TA产生一个随机数k,并进行如下计算:

③TA将{r,s}发送回正在注册的RSU,RSU将CertR←(r,s,V1,V2)作为自身证书。

(3)CertU←JoinU(u,v,s1,s2,s3)

当有新用户想要加入系统时,应当先从TA处查看有哪些RSU可用,然后选择一个合适的RSU进行注册(如本区域或距离自己最近的RSU),最后RSU将自身证书CertR=(r,s,V1,V2)发送给用户。

用户进行如下计算:

若r´=r,则用户接受此RSU,然后TA、RSU和用户将共同计算用户的证书。本文采用文献[13]中所提的全同态加密进行计算,以EncAhom(m)表示以用户A的公钥对消息m进行加密,具体证书生成步骤如下:

③RSU选取一个随机数s2,并使用TA的公钥对vs2进行加密,然后计算

并发送给TA。

⑤TA将{A,s1}发送给用户,RSU将s2发送给用户,用户将CertU={A,s1,s2,s3}作为自身证书。

(4)Pseudonym←PseuGen(CertU)

用户得到CertU={A,s1,s2,s3}后,可以生成自身的假名。当他改变自身位置时,可以重新生成另一个假名。

①用户选取一个随机数x。

②用户选取 7 个随机数 rx、rs1、rs2、rs3、rα、rβ、rγ,然后进行如下计算:

其中i表示此用户所属RSU的编号,CertRi为其证书。

(5){1,0}←Verify(Pseudonym)

其他用户收到此假名后,可以验证此假名对应真实身份的合法性。

①取出CertRi中的信息并计算:

②若r´=r,则进行如下计算:

③核实 c=H(TU||TV||V1||V2||δ1||δ2||δ3||δ4||δ5)是否成立。若成立,则输出1,表示用户为合法用户;否则,输出0,表示用户为非法用户。

(6)A←Trace(Pseudonym,u,v)

若用户违规,其他用户可对其进行究责,将其假名上传至其所属RSU,则此RSU可以和TA共同计算非法用户的证书,步骤如下:

①TA生成一对密钥(pk,sk)=(h=gx,x),然后选取一个随机数r并计算(a,b)发送给RSU,其中:

②收到(a,b)后,RSU计算(c,d)并发送给TA,其中:

③收到(c,d)后,TA计算:

然后TA可以得到违规用户的真实身份。

3 算法性能分析

3.1 正确性

定理1:在系统参与者按照规定协议工作的情况下,本方案是正确的。

证明:当其他用户接收到某一用户k的假名信息后,通过判断 c=H(TU||TV||V1||V2||δ1´||δ2´||δ3´||δ4´||δ5´)是否成立判断用户k的身份信息是否合法,关键在于c中的δi´是否与用户k生成的δi(i=1,2,…,5)相等。

由于:

可知用户身份验证方案是正确的。

3.2 隐私性

在已有的车联网隐私保护方案中,匿名性及可追踪性完全依赖于TA。TA能够独立地由用户假名恢复出其真实身份,造成隐私的泄露。本文将用户的管理权限部分下放给RSU,只有在RSU参与的情况下,TA才可以恢复出用户的身份,大大提高了隐私的安全性。

定理2:如果DDH假设成立,则本方案在没有RSU参与的情况下,TA无法独自判断两个假名是否属于同一用户。

证明:定义以下实验序列,敌手为TA自身。

Expt1:

(1)TA选择两个证书(A1,s11,s12,s13)、(A2,s21,s22,s23),并发送给挑战者。

(2)挑战者用两个证书以及TA和RSU的公钥U1、U2、V1、V2各自生成一个假名 pseu0、pseu1。

(3)挑战者产生一个比特b←{0,1},并将pseub发送给TA。

(4)TA对b进行猜测,并输出一个比特b´。

(5)如果b=b´,输出1;否则,输出0。

Expt2:

(1)TA选择两个证书 (A1,s11,s12,s13)、(A2,s21,s22,s23),并发送给挑战者。

(2)挑战者用两个证书以及TA和另一个RSU 的公钥 U1、U2、V1´、V2´各自生成一个假名pseu0´、pseu1´。

(3)挑战者产生一个比特b←{0,1},并将pseub发送给TA。

(4)TA对b进行猜测,并输出一个比特b´。

(5)如果b=b´,输出1;否则,输出0。

可知pseu0´与pseu1´均为非法假名,然而分布完全随机。

事实1:在DDH假设下,存在可忽略函数negl(·)使得:

事实1证明:

在Expt2中,pseu0´与pseu1´完全随机,所以式(34)成立。

为了证明式(33),构造以下分辨算法D,输入为(X,V,U)∈G:

(1)将X作为公钥交给TA。

(2)TA产生两个等长的证书消息A0、A1,并发送给挑战者。

(3)挑战者随机选择b←{0,1},并将{V,U·Ab}发送给TA。

(4)TA对b进行猜测,并输出一个比特b´。

(5)如果b=b´,输出1;否则,输出0。

根据DDH假设,存在可忽略函数negl(·)使得:

4 结 语

针对车联网隐私保护完全依赖于TA可信性的问题,本文将TA权限下放至RSU,由TA与RSU共同为用户生成证书,并通过协同追踪的方法降低系统对TA的依赖。正确性分析和安全性证明表明,本文方案在提升隐私保护性能的同时,有效解决了TA中心权限过大的问题。

猜你喜欢

发送给挑战者公钥
“挑战者”最后的绝唱
案例教学法在公钥密码体制难点教学中的应用——以ssh服务中双向认证为例
闪电远击侠“挑战者”2
【微信小课堂】:如何向好友发送语音
神奇的公钥密码
国密SM2密码算法的C语言实现
P2X7 receptor antagonism in amyotrophic lateral sclerosis
你说我说大家说
建筑节能领域的挑战者 孟庆林
公告