APP下载

自动车辆排中可撤销可追溯的访问控制方案

2024-02-28李宇昕孙建伟

计算机工程与科学 2024年2期
关键词:密文解密密钥

李宇昕,王 峥,王 惠,孙建伟

(太原理工大学计算机科学与技术学院,山西 晋中 030600)

1 引言

随着5G技术[1,2]、自动驾驶[3]和物联网[4]的快速发展,智能交通将取代传统的驾驶方式。自动车辆排AVP(Autonomous Vehicle Platoon)[5]取代单车驾驶模式可以有效减少交通事故,降低燃油污染,提高货运效率。AVP由一个排长和一些排成员组成,排长负责向后面的车辆传递当前的交通信息,排成员之间保持一定的短距离[6,7]。自动车辆排通过车间通信IVC(Inter-Vehicle Communication)[8]将车辆本地传感器的数据共享给同排组其他车辆,并通过边缘计算和云端智能决策,综合研判交通信息,实现车辆排组的行车控制,从而在保证安全行驶的基础上,达到减少风阻[9]、降低能耗[10]、缓解交通拥堵的目的。

车辆资源有限且移动快速,缺乏对大量数据的存储和处理能力。边缘计算[11]将计算数据、应用程序和服务从云服务器转移到网络边缘,通过在边缘网络中提供资源和服务来最小化云的负载,使服务接近最终用户来减少数据时延。边缘计算更加适用于自动车辆排这种对服务的实时性要求较高的应用。

自动车辆排使用开放式的无线网络环境IVC定期传播消息,消息暴露在公开信道上,容易被恶意车辆截取,造成敏感数据泄漏,暴露车辆用户的隐私;恶意车辆可以伪造车辆身份,在车辆排中发送虚假消息,导致交通事故的发生,危害车辆用户的生命和财产安全。因此,在实现灵活的数据共享的同时,如何保证敏感数据的保密性和消息的真实性,是一个关键而紧迫的挑战。属性基加密ABE(Attribute Based Encryption)[12]是一个应对这些安全隐患的理想方案。ABE包括基于密钥策略[13]和基于密文策略CP-ABE(Ciphertext-Policy Attribute Based Encryption)[14]2种方案。在CP-ABE方案中,数据拥有者根据自身需求制定访问策略用于密文的加密,数据访问者根据自身属性集合生成密钥,这样更加符合实际应用场景。

虽然CP-ABE方案可以保护数据的机密性,实现更为灵活的数据共享,但在车辆用户撤销、恶意用户追溯、计算效率方面仍然存在许多问题需要解决。AVP中车辆频繁地进出车队,车辆用户频繁变化,导致访问权限发生变化,存在安全隐患。用户撤销通常通过限制被撤销用户更新私钥或解密密文来实现。Tu等[15]利用复合阶双线性群构造了一个可撤销的CP-ABE,密文可以嵌入任意数量的撤销列表及用户属性,但是由于密文长度较长导致该方案效率不高。Guo等[16]提出的CP-ABE方案第一次利用变色龙哈希函数构造了具有抗碰撞性、不暴露密钥的数据用户私钥来实现撤销,但该方案的系统属性数量会影响密钥、密文的大小以及操作的运行时间。Zhao等[17]通过嵌入密文组件中的撤销列表实现用户撤销,降低了属性数量对方案的影响,但该方案存在撤销列表的维护问题。Zhao等[18]利用中国剩余定理实现了用户撤销,提升了撤销运算的效率,同时避免了撤销列表的维护问题,但车辆侧的解密运算负担较大。Wang等[19]提出了基于标准模型的自适应安全的外包CP-ABE方案,降低了车辆侧的解密负担,但该方案只考虑将解密外包给云服务器,并未考虑外包结果的验证。由于云服务器不可信,Sethi等[20]建立了一个可验证的外包解密ABE方案,该方案使用外包解密改进ABE。

在AVP中,开放式的无线网络环境使得车辆用户的隐私容易受到威胁,进而危及驾驶员和乘客的生命财产安全。Raya等[21]首先设计了一个匿名隐私保护认证方案,要求发送者匿名后再发送消息,然后车辆使用其私钥对将要发送的消息进行签名,接收者使用匿名证书来验证匿名消息,追溯恶意用户,但该方案并未考虑撤销问题。Bayat等[22]提出的安全方案中,基于椭圆曲线提出了一种签名认证方案,可以抵抗恶意车辆冒充排内车辆发起的攻击,但不具备细粒度的访问控制。基于双线性配对,Jiang等[23]提出了一种条件隐私保护认证方案,具备细粒度访问控制并采用假名来实现隐私保护,利用基于身份的签名实现批量认证,具有较低的验证开销。但是,由于可信机构TA(Trust Authority)为车辆和路边基础设施RSU(Road-Side Unit)生成了大量假名、相关证书和验证消息,因此具有较高的传输开销。Malhi等[24]设计了一种新的数字签名方案和聚合验证方案,并将基于身份的签名方案用于车到RSU的通信,但验证方案的负担较大。Guo等[25]提出了车辆撤销和恶意车辆追溯2个功能相结合的方案,车辆的属性密钥及其密钥分发结果以交易的形式记录在区块链上,用以追溯恶意车辆,并在RSU的辅助下实现车辆撤销。但是,该方案的计算开销与其管理的属性数量成比例,存储成本较高,不适用于资源有限的自动车辆排。

基于上述考虑,本文在边缘计算环境下构建了一种支持用户撤销、恶意用户追溯、适用于车辆排的CP-ABE方案。该方案引入外包解密以降低车辆侧的计算负担,利用中国剩余定理构建可撤销访问列表,实现车辆的直接撤销,以降低TA的计算复杂度;基于椭圆曲线加密实现隐私保护认证,保证车辆的匿名和恶意车辆的追踪。

2 基础知识

2.1 双线性映射

2.2 线性秘密共享方案

P代表一个集合,定义在域Zp上的一个线性秘密共享方案∏(M,ρ)需满足以下条件[26]:参与者关于秘密值s的共享值构成了域Ζp上的一个向量;存在一个l行n列的访问矩阵M,ρ为属性映射函数,将矩阵的第i∈{1,2,…,l}行唯一映射为属性ρ(i)。随机选取向量v=(s,v2,…,vn)T,s是参与者共享的秘密值,v2,…vn∈Ζp。M·v则是根据秘密共享方案∏生成关于秘密值s的l个份额。

秘密值重构:假设∏是访问结构M′的一个线性秘密共享方案,S是授权集合,集合I是索引集合,I={i∈[1,2,…,l]},并满足ρ(i)∈S。若{λi=(M′·v)i}是关于秘密值s的共享值,则存在{ωi∈Ζp}i∈I,使得∑ωiλi=s,i∈I。而对于非授权集合,则不成立。

2.3 中国剩余定理

中国剩余定理[27,28]指出,假设θ1,θ2,θ3,…,θn为两两互质的一组正整数,则对任意给定的整数a1,a2,a3,…,an,就可以唯一确定如式(1)所示的方程组的解X:

(1)

X可通过以下方法构造:

那么对于两两互质的整数θi,可通过式(2)所示的方程获得解决方案的唯一解X:

X≡(a1+a2+…+an) modθg=

(2)

2.4 椭圆曲线离散对数ECDL问题

2.5 决策性q-BDHE假设

(3)

3 系统概述

3.1 符号说明

本文所使用的符号及其定义如表1所示。

Table 1 Symbols description

3.2 系统模型

车联网体系结构由3个实体组成:可信机构、路边基础设施和车辆。系统模型如图1所示。

(1)可信机构TA(Trust Authority):TA为每辆车生成系统参数和密钥。在本文方案中,每个城市都有一个专门的TA。假设TA具有足够的存储容量,被敌手破坏的概率可以忽略不计。

(2)路边基础设施RSU:RSU具有强大的计算、存储和管理能力通过有线连接到TA。RSU的主要功能相当于中介,在车辆、TA和其他RSU之间存储和转发信息并承担最复杂的解密计算。

(3)车辆:车辆通过无线网络连接到TA。带有车载单元OBU(On-Board Unit)的车辆可以看作是一个高速移动的节点。车辆可以与RSU或其他车辆联系,共享信息。每个OBU都存有车主的真实身份、匿名身份和私钥。每一条来自车辆的原始信息在发送到附近的车辆或RSU之前都需要被签名。车辆既可以是数据拥有者DO(Data Owner),也可以是数据使用者DU(Data User)。

在本文方案中,小间距的实现依赖于协同自适应巡航控制CACC(Cooperative Adaptive Cruise Control)的自动驾驶。CACC既可以实现单跳单播,也可以实现单跳广播。车辆可以通过单跳广播接收到多辆车辆的信息,但最近的前车信息会直接影响车辆的行驶行为,而其他车辆的信息只是作为辅助工具,帮助车辆了解周围的交通环境。因此,本文方案使用单跳单播来描述队列内的通信,即后面的车辆只能接收到前面车辆的信息并将其发送给后面的成员,而不能将信息发送给前面的车辆。即排头可以接收和转发来自其他实体的消息,而排成员可以接收消息,但只能转发来自前面车辆的消息。

3.3 系统流程

本文方案的系统流程分2个阶段:系统初始化和数据传播。系统初始化阶段如图2所示,数据传播阶段如图3所示。其中,TA负责安全信道的计算,包含系统初始化、密钥生成、车辆注册、车辆撤销和恶意车辆追溯;RSU负责公开信道的计算,包含数据上传、外包解密和数据发送。

Figure 2 System initialization图2 系统初始化

Figure 3 Data propagation图3 数据传播

每个阶段的具体描述如下所示:

(1) 系统初始化。TA执行Setup(1λ)算法完成系统的初始化,输出系统公钥PK与主密钥MSK并完成公钥的广播。

(2) 车辆注册。TA在收到车辆的属性集S和身份信息id后,首先,执行Sign算法实现车辆的匿名;其次,执行KeyGen算法生成车辆解密所需的属性密钥SK、外包解密所需的盲密钥BK及恢复密钥RK;最后,TA将密钥及签名传播回车辆。

(3) 数据加密。DO根据自身数据访问需求定义访问策略W′后执行Encrypt算法输出密文CT并将其上传至RSU。

(4) 数据解密。DU向RSU发送密文下载请求和盲密钥BK。RSU验证DU是否满足访问结构且未被TA撤销。通过验证后,RSU执行Transform算法输出部分解密密文K1和签名R。DU接收到反馈后,向TA发送验证请求,TA执行Verify算法验证其完整性并反馈结果。验证通过后,DU执行DU.Decrypt算法解密得明文m。

(5) 车辆撤销与追溯。车辆离开排时,TA执行Revocable算法更新排内成员并生成新的公共参数γ′d。若因恶意消息的出现引起交通事故时,TA执行Traceable算法从车辆匿名身份IDi中追溯其真实身份id。

3.4 算法实现

(4)KeyGen(PK,MSK,S)→SK:由TA执行,输入公钥PK、主密钥MSK及车辆属性集S={s1,s2,…,sk}∈Ζp,随机生成参数r,r1,r2,…,rk∈Ζp计算D0=μrgα,D1=gr,{Di,2=gri,Di,3=(γhiσ)rik-r}1≤i≤k,生成属性密钥SK=(S,D0,D1,{Di,2,Di,3})。

(5)Encrypt(PK,m,(M,ρ),IDi)→CT:由DO执行,输入公钥PK、明文数据m、访问策略(M,ρ)和匿名身份IDi,生成密文CT。DO根据数据访问需求制定访问策略,利用线性秘密共享技术将其转化为l行n列的访问矩阵M,ρ是属性映射函数,将矩阵M的某一行映射为具体的系统属性ρ(i),随机选取s,v2,v3,…,vn∈Ζp并定义向量v=(s,v2,v3,…,vn)T与u=(0,v2,v3,…,vn)T,s为用户间共享的秘密值,λi=Mi·v为共享的秘密值份额。用户的属性满足访问策略时,可计算{ωi∈Ζp}i∈I,重构秘密值s=∑ωiλi,其中i∈{1,…,l},Mi代表矩阵的第i行。随机选择t,t1,t2,…,tl∈Ζp,密文CT计算如式(4)所示:

(4)

(6)Decrypt(CT,BK)→m:

Transform(CT,BK)→K1:由RSU执行,输入密文CT和盲密钥BK,根据式(5)进行解密:

(5)

DU.Decrypt(RK,K1,R)→m:由用户执行,输入恢复密钥RK,部分解密密文K1和密文CT,计算如式(6)所示:

(6)

DU利用排密钥kd计算m=C0⊕H4(kd)。

正确性可以通过式(7)验证:

σi·E1=(Si+βi·ri)·E1=Si·E1+

βi·ri·E1=αi·kd·E1+

βi·IDi,1=αi·Kp+βi·IDi,1

(7)

(8)Traceable(IDi,s)→id:由TA执行,可从匿名身份IDi中提取车辆的真实身份,其中包含IDi,1和IDi,22个部分,其中IDi,1=ri·E1,IDi,2=id⊕H1(ri·Pp)。TA根据式(8)计算:

id=IDi,2⊕H1(ri·Pp)=

IDi,2⊕H1(ri·s·E1)=

(8)

IDi,2⊕H1(s·IDi,1)

(9)Revocable(η,ξi,k′d)→γ′d: 在车辆排中有车辆加入或离开时,需更新排密钥。

当车辆加入排时,TA执行以下过程:首先为加入车辆选取相应的签名者密钥θi,执行Register过程:计算参数η′和γ′d=kd×η′。

车辆接收到参数γ′d时,通过一次取模操作即可获得与车辆排已有成员相同的排密钥kd。

当车辆离开排时,TA必须更新排密钥,防止旧车辆使用新排的密钥。当车辆离开排时,TA执行以下过程:从η中减去ξi,即η′=η-ξi,然后,TA随机选择k′d,并将其乘以η′,即γ′d=k′d×η′,当车辆接收到新的排密钥γ′d时,通过一次取模运算即可获得k′d。

4 安全性分析

4.1 CP-ABE安全分析

本文基于q-BDHE(q-Billinear Diffie-Hellman Exponent)困难假设证明本文方案的安全性。

定理1若q-BDHE假设成立,则表明敌手找不到一个多项式算法以不可忽略的优势解决q-BDHE问题。

证明假设存在敌手Α,能在多项式时间内以不可忽略的优势ξ攻破本文方案,则同样可构造一个挑战者Β以相同的优势解决q-BDHE问题。

初始化:敌手Α选定挑战的访问结构(M*,ρ*),挑战者Β接受一个q-BDHE挑战(y,T)。其中M*是l*×n*的访问矩阵且n*≤q。

系统建立:挑战者Β选择随机数α′∈Ζp使得α=α′+pq+1。然后Β随机选择γ′,κ′,σ′∈Ζp,根据式(9)为Α提供参数:

(9)

(10)

其中,r=(t+v1aq+v2aq-1+…+vn*aq-n*+1)。

X表示满足ρ*(i)=x的所有i值的集合,挑战者B对所有x分别计算Di,2和Di,3,如式(11)~式(14):

Di,2=gri

(11)

Di,3= (γhiσ)riκ-r=

(12)

(13)

(14)

最后挑战者Β把SK=(S,D0,D1,{Di,2,Di,3})发送给敌手Α。

挑战:敌手Α向挑战者Β提交2条信息m0和m1,挑战者Β选取参数β∈{0,1},并对信息mβ加密。构造向量u=(s,sa+y′2,sa2+y′3,…,san*-1+y′n*),其中y′2,…,y′n*∈Ζp。计算式(15):

(15)

根据式(16)生成挑战密文发送给敌手Α:

CT=〈(M,ρ),C1,C2,{Ci,1,Ci,2,Ci,3}1≤i≤l,R〉

(16)

阶段2:重复阶段1。

若T=R′,此时敌手Α没有任何优势,则可表示为pr[Β(y,T=R)=0]=1/2。

4.2 签名安全性分析

车辆与各实体间都采用无线通信技术,通信信道可能被恶意攻击者攻击,导致出现漏洞。为此,本节将证明本文签名方案是安全的,可以抵抗自适应选择消息攻击。

(17)

其中i*∈{1,2,…,n}。

模拟者Β选择随机数kd,计算公钥Kp=kdE′1。然后,B发送公共参数params=(G,E′1,Kp,H1,H2)和匿名集SID给Α。

σi·E′1=αi·Kp+βi·IDi,1=

αi·Kp+σi·E′1-αi·Kp=σi·E′1

(18)

反之,若i≠i*,那么Β具有一个有效签名并直接输出这个有效签名。

σi·E′1=αi·Kp+βi·IDi,1

(19)

(20)

根据式(19)和式(20),可以简化推导出式(21):

(21)

基于上述模拟,下面给出事件R1和R2的定义:

(1)事件R1:Α返回一个有效的伪造签名;

(2)事件R2:Α能够伪造匿名身份IDi≠IDi*。

因为pr[R1]=ε和pr[R2]=1/q可以得到式(22):

(22)

5 性能评估

5.1 理论分析

本文方案与其他方案的功能比较如表2所示。其中,文献[17]方案即时撤销的实现存在撤销列表的维护问题,文献[18]方案不需维护撤销列表但排密钥的更新仍存在较大的计算负担,文献[23]方案不具备细粒度的访问控制。而本文提出的方案在自动车辆排中实现了细粒度的访问控制,优化了文献[18]方案中排密钥的更新算法,降低了计算负担且加入了消息验证和可追溯功能,进一步提升了方案安全性。

Table 2 Function comparison

首先给出本文关于存储成本和执行时间的符号定义:

(3)Tm和Te:分别代表在群中进行一次乘法运算、指数运算的时间。

(5)Th:表示执行一次哈希函数操作的时间。

(6)Ta′·G′:表示执行一次与椭圆曲线有关的标量乘法运算a′·G′所消耗的时间,其中G′∈G,a′∈Ζq。

存储成本是决定访问控制方案能否适用于资源有限车辆的重要因素。本文方案与其他方案的存储成本比较如表3所示。用户端的存储成本主要来源于密文和密钥。由表3可以看出,其他方案中用户密钥长度随用户属性个数线性增长,此长度相比文献[17]方案和文献[18]方案的较短,故存储成本较低。

Table 3 Comparison of storage cost 表3 存储成本比较 B

本文方案与其他方案各阶段计算开销的比较如表4和表5所示。

Table 4 Computational complexity comparison of open channels

Table 5 Computational complexity comparison of secure channels

在密钥生成阶段,各方案计算开销均与属性数量呈正相关,但本文方案具有比文献[17]方案更低的增长速度。在用户加密阶段,本文方案的计算开销低于文献[17]方案和文献[18]方案的。文献[17]方案和文献[18]方案同样支持解密外包,但本文方案中外包解密的计算开销更低。在用户解密阶段,本文将绝大部分解密运算移至RSU进行,解密计算开销不会随着属性数量的增加而线性增加,在本地仅需进行1次乘法和1次指数运算,运算效率更高。

在签名和验证阶段,本文方案相较于文献[23]方案删减了乘法运算。在可撤销阶段,其余方案都与排内成员数或撤销列表数相关,而本文方案不随车辆排成员的更改而变化,仅需进行1次标量乘法运算和1次哈希运算,运算效率更高。同样在可追溯阶段,本文方案相较于文献[23]方案也将运算固定为1次乘法和1次哈希运算,降低了计算成本。

5.2 实验及结果分析

本文方案使用JPBC库计算基本加密操作的执行时间。为了便于方案之间的比较分析,本文方案将采用与文献[23]方案相同的执行时间,如表6所示。

Table 6 Execution time of encryption operations

相关方案密钥生成时间的比较如图4所示。

Figure 4 Comparison of key generation time图4 密钥生成时间比较

方案的加密时间均随着属性数量的增加而线性增加,其中文献[17]方案随着属性数量的增加,加密时间的增长速度最快,消耗时间也最长,而本文方案加密所耗时间低,适合于资源有限的车辆。DO加密时间的比较如图5所示。与密钥生成时间的比较类似,其中文献[17]方案所消耗的时间与属性数量的增加呈正相关,而本文方案降低了加密所需的时间,更适用于对实时性要求较高的自动车辆排。

Figure 5 Comparison of DO encryption time图5 DO加密时间比较

本文方案与文献[17]方案外包解密时间的比较如图6所示。相较于文献[17]方案,本文方案具有更低的解密时间,增长速率也更低,因此具有更高的外包运算效率。单次签名和消息验证的时间比较如图7所示,相较于文献[22]方案和文献[24]方案,本文方案所用时间显著增加,相较于文献[23]方案单次提升并不明显,但在批量验证阶段,车流量提升时具备更低的计算开销。

Figure 6 Comparison of outsourced decryption time图6 外包解密时间比较

本文方案与其余方案车辆撤销时间的比较如图8所示。文献[17]与文献[23]的撤销方案是通过管理撤销列表控制车辆的访问,撤销时间长且与撤销列表长度的增加成正比,还存在撤销列表的维护问题。文献[18]方案与本文方案同样采取中国剩余定理管理车辆排,但文献[18]方案的撤销时间会随着排内车辆的增长而增加,而本文方案的撤销成本是固定的,降低了撤销开销。

Figure 8 Comparison of revocation time图8 撤销时间比较

6 结束语

针对自动车辆排访问控制,本文提出了一种边缘计算中支持外包解密的可撤销可追溯访问控制方案。首先,将双线性解密运算外包给边缘计算单元,降低了车辆侧的计算成本。其次,基于中国剩余定理实现了车辆的即时撤销,避免了撤销列表的维护问题。接着,利用椭圆曲线点乘法降低签名的负担,实现了恶意用户的追溯。最后,对本文方案进行了安全性分析、功能比较以及实验结果分析。分析结果表明,本文方案在保证安全的前提下运算效率较高,完成了边缘计算下自动车辆排中安全高效的细粒度访问控制。但是,整个方案中密钥均由TA生成,存在单点故障问题,因此下一步的工作可在增加属性密钥机构、实现本文方案的多授权功能方面进行进一步分析研究。

猜你喜欢

密文解密密钥
探索企业创新密钥
解密“热胀冷缩”
一种针对格基后量子密码的能量侧信道分析框架
一种支持动态更新的可排名密文搜索方案
基于模糊数学的通信网络密文信息差错恢复
解密“一包三改”
密码系统中密钥的状态与保护*
炫词解密
一种对称密钥的密钥管理方法及系统
基于ECC的智能家居密钥管理机制的实现