APP下载

VANET 中基于区块链的分布式匿名认证方案

2022-10-09冯霞崔凯平谢晴晴王良民

通信学报 2022年9期
关键词:信誉批量攻击者

冯霞,崔凯平,谢晴晴,王良民

(1.江苏大学汽车与交通工程学院,江苏 镇江 212013;2.江苏大学计算机科学与通信工程学院,江苏 镇江 212013;3.东南大学网络空间安全学院,江苏 南京 211110)

0 引言

车载自组网(VANET,vehicular ad-hoc network)作为智能交通系统(ITS,intelligent transportation system)的重要组成部分,能够有效促进实时交通信息的传播,成为缓解现有交通问题的关键技术。在实际交通场景中,车辆能够通过VANET 实时获取与安全相关的交通信息(如周围车辆的速度和方向、危险路况等)来提高驾驶体验与行车安全性。然而,VANET 具有动态拓扑结构、节点分布不均匀、网络规模庞大及移动轨迹可预测等特点[1],使其更容易受到窃听攻击、中间人攻击、篡改攻击等,因此隐私安全问题成为制约VANET 发展的重要因素[2]。匿名认证是解决隐私安全问题的有效手段之一。传统的匿名认证算法比较复杂,尤其是车辆在高密度交通条件下同时发送认证消息时,认证效率相对较低[3]。并且,在网络带宽和计算能力有限的情况下,大量的消息传输会产生较大的计算开销和通信开销[4-6]。因此,提高匿名认证效率、降低计算与通信开销是VANET 认证方案的必然要求。

针对VANET 匿名认证方案中的效率与计算开销问题,研究者提出了一系列批量认证与轻量级认证方案[7-12]。Zhang 等[7]提出了一种用于路侧单元(RSU,road side unit)和车载单元(OBU,on board unit)之间通信的批量认证方案,使RSU 能够同时对多个车辆进行身份认证,但该方案对OBU 的安全性和算力要求较高。Chim 等[8]提出了一种基于隐私保护的批量认证方案,允许完成身份认证的车辆在没有RSU 的参与下以群组的方式进行车与车之间的安全通信,但该方案无法抵御伪造攻击,攻击者能够伪装成合法车辆发布交通信息或者与其他车辆进行通信。Jiang 等[9]基于二进制认证树实现了一种针对消息签名的批量认证方案,但该方案需要依赖半可信RSU 的参与。Jiang 等[10]在批量认证方案中提出使用哈希消息验证码(HMAC,hash message authentication code)来代替证书撤销列表(CRL,certificate revocation list),该方案虽然克服了检索CRL 导致的认证开销,但却过分依赖于公钥基础设施(PKI,public key infrastructure)。Ying 等[11]提出了一种轻量级的认证方案,利用哈希函数能够快速计算的特点,实现了OBU、RSU 及可信机构(TA,trusted authority)三者之间的相互认证,但该方案无法有效抵御重放攻击与篡改攻击。Cui 等[12]提出了一种基于雾的身份认证方案,利用雾节点来代替RSU 实现OBU 与TA 之间的认证,但无法实现对恶意车辆身份的快速追溯。另外,针对聚合签名技术也有许多研究[13-17],然而它们都存在计算开销较大的问题。

区块链[18]具有去中心化、可扩展及匿名性等特点。利用区块链技术可以建立分布式系统架构,能够有效解决VANET 中的广播冲突、资源调度和隐私保护等诸多问题[19]。国内外许多学者提出了基于区块链的认证方案[20-23]。然而,现有基于区块链的认证方案在应用过程中仍存在三方面的不足:1) 验证者利用智能合约完成消息认证,在共识阶段会产生额外的时间开销;2) 缺乏信誉评估机制,无法实现对车辆行为的有效约束;3) 部分方案在缺乏有效身份管理机制的情况下将数字证书存储在区块链上,造成了存储资源的浪费。

综上所述,现有研究提出的认证方案大多不能满足VANET 的高效认证需求,并且对车辆匿名性、可追溯性及有效撤销等安全问题考虑不够全面。本文针对已有研究的不足,提出了一种基于区块链的分布式匿名认证方案。本文主要的研究工作如下。

1) 提出一种基于区块链的分布式匿名认证方案。该方案能够利用零知识证明对VANET 中车辆进行快速匿名认证,并采用非线性对的聚合签名来实现快速批量认证,有效减少认证过程中产生的计算量,提高消息认证效率。

2) 在认证安全方面,本文方案可以实现对恶意车辆身份的匿名追溯,并基于区块链对其身份进行快速撤销;还可以基于本地密钥对车辆的短期匿名身份进行及时更新,保证车辆的匿名性和签名的新鲜性。

3) 安全分析结果表明,和现有研究相比,本文提出的基于区块链的分布式匿名认证方案在VANET 拓扑动态变化特性的基础上,对消息认证性、身份隐私性及不可否认性等安全问题考虑得更加全面。仿真结果表明,相较于现有同类方案,本文方案能有效降低计算开销与通信开销,并显著提高认证效率。

1 预备知识

1.1 椭圆曲线密码学

1) 几何加法。假设曲线E上存在2 个随机点P1和P2,若的连线和曲线E相交于点-P3,则有反之,若则有

2) 标量乘法。定义椭圆曲线E上的标量乘法为nP=P+P+… +P(n-1次加法),其中n> 0。

3) 椭圆曲线点的阶。定义椭圆曲线上一点P的阶为满足nP=Θ的最小正整数n。

1.2 安全性假设

本文提出的分布式匿名认证方案基于2 种难破解问题,即椭圆曲线离散对数问题(ECDLP,elliptic curve discrete logarithm problem)[24]和椭圆曲线计算Diffie-Hellman 问题(ECDHP,computational Diffie-Hellman problem)[25]。

椭圆曲线离散对数问题(ECDLP)。给定素数q和椭圆曲线E,选定曲线E上任意一点Q,且满足Q=xP。其中,整数x,y∈[2,q-1],P,Q∈G,G为q阶加法循环群,P为群的生成元。攻击者在已知P,Q的情况下计算x是困难的。

椭圆曲线计算Diffie-Hellman 问题(ECDHP)。给定素数q和椭圆曲线E,选定曲线E上任意两点Q,V,且满足Q=xP和V=yP。其中,整数x,y∈[2,q-1],P,Q,V∈G,G为q阶加法循环群,P为群的生成元。在随机数x,y未知的情况下,攻击者在概率多项式时间内计算得到xyP∈G是困难的。

1.3 系统模型

如图1 所示,本文提出的匿名认证方案的系统架构分为两层,主要由区块链和4 种实体组成,即根机构(RA,root authority)、区域性可信机构(RTA,regional trusted authority)、RSU 和OBU。架构上层主要由RA 和RTA 组成,它们之间能够进行安全通信,并负责维护区块链网络。架构下层主要由车辆和RSU 组成,车辆可以利用OBU 通过专用短程通信(DSRC,dedicated short range communication)技术与 RSU 通信,RSU 能够通过安全传输协议(如有线传输层安全协议)与RTA 通信[3]。

图1 系统架构

1) RA。RA 是一个完全可信的机构,且拥有强大的计算与存储能力。在VANET 系统中,RA 主要负责生成系统参数、对OBU 和RSU 进行注册以及维护区块链网络。RA 是唯一存储车辆真实身份信息以及能够揭露车辆真实身份的机构。当有注册车辆发生恶意行为时,RA 会对该车辆的身份进行准确追溯和有效撤销。另外,本文假设RA 不会妥协以及与任何实体进行合谋。

2) RTA。RTA 是完全可信的机构,且拥有足够的计算与存储能力。在VANET 系统中,RTA 负责验证、分析来自RSU 和车辆的消息,从而准确预测交通分布以优化实时交通信号灯控制等。RTA 受RA 的监督,尤其当RTA 检测到恶意车辆时,RTA需要将该车辆的匿名身份信息上传至RA,以实现RA 对该恶意车辆身份的准确追溯。同时,RTA 和RA 作为区块链共识节点,共同负责维护区块链网络。另外,本文假设RTA 不会妥协以及与任何实体进行合谋。

3) RSU。RSU 是一个固定在路边且拥有计算与通信能力的装置。它比OBU 具有更多的计算能力,与OBU 共同负责收集实时的车辆及路况信息。本文假设RSU 为半可信装置,并在通信环境较差时辅助车辆向RTA 提交交通信息。

4) OBU。在VANET 系统中,每辆车都配备OBU。OBU 是一种防篡改设备,可以防止攻击者获取存储在其中的数据。OBU 具备有限的计算能力,与RSU 共同负责收集实时路况信息。

5) 区块链。在本文方案中,RA 与RTA 作为区块链的共识节点,负责维护区块链网络。区块链技术主要应用于车辆身份管理与认证信息检索,并且可以有效实现车辆信息共享与跨区域认证。在车辆身份管理方面,RA 将车辆的匿名身份存储在区块链状态数据库中。匿名身份的更新与撤销需要RTA 在该数据库中对车辆匿名身份的状态标识进行修改(见2.5 节和2.6 节)。在认证信息检索方面,RTA 根据车辆提供的匿名身份检索区块链状态数据库,以获得该匿名身份对应的认证参数,从而完成零知识证明过程(见2.3 节)。另外,本文利用智能合约实现对区块链状态数据库的读写以及车辆匿名身份的更新和撤销。因此,RTA 能够通过调用部署在区块链上的智能合约来完成车辆身份更新及认证信息检索过程。

1.4 安全需求

为确保VANET 的通信安全,认证方案应该具备完整性、匿名性及不可链接性等属性。本文应满足以下安全要求。

1) 匿名性。VANET 具有开放性,因此车辆在通信过程中必须以匿名的方式与其他实体进行信息交互,并且网络内的任何实体(RA 除外)都无法获得某个网络参与者的真实身份,即参与者的真实身份对RA 以外的任何实体都是机密的。

2) 可追溯性。车辆以匿名的方式与其他实体进行通信。当车辆发生恶意行为时,例如广播虚假路况信息以扰乱正常的交通秩序,RA 能够对车辆的真实身份进行准确追溯并拒绝其再次访问系统。

3) 不可链接性。任何实体都无法将接收到的2 个或多个消息链接到同一车辆。

4) 消息验证及完整性。RTA 验证消息发送主体的身份合法性,并确保消息没有被其他实体修改。

同时,本文方案应确保能抵御以下常见攻击[26]。

1) 重放攻击。攻击者将先前获得的合法消息重新发送给接收者。通过重新发送消息,攻击者能够利用之前的消息误导其他车辆并扰乱正常的交通秩序。

2) 伪造攻击。攻击者通过伪造授权车辆的签名以冒充合法车辆。攻击者使用虚假的合法身份向其他车辆/基础设施发送伪造信息,进而造成交通事故或交通拥堵以及扰乱交通秩序等。

3) 篡改攻击[27]。攻击者对验证消息进行删除、修改等,导致合法车辆认证失败或令恶意车辆成功欺骗认证者。

4) 中间人攻击。攻击者同时与相互通信的双方保持通信连接,并且使相互通信的双方相信彼此在一个安全的连接中进行信息交互,从而获得有用信息,以达到攻击的目的[28]。另外,攻击者还可能会拦截认证请求者发送的消息,然后将伪造的消息发送给接收者。中间人攻击会导致严重的通信数据泄露。

2 基于区块链的分布式匿名认证方案

为满足VANET 通信过程中的安全与隐私保护需求,本文提出的基于区块链的分布式匿名认证方案包含6 个阶段,即系统初始化阶段、匿名身份生成阶段、签名及认证阶段、信誉评估阶段、匿名身份更新阶段、匿名身份撤销阶段,如图2 所示。方案涉及的参数及定义如表1 所示。

表1 方案涉及的参数及定义

图2 方案流程

2.1 系统初始化阶段

RA 与RTA 负责系统初始化,详细步骤如下。

1) RA 设定安全参数λ。如1.1 节所述,RA 基于椭圆曲线E上的点及无穷远点Θ构建一个椭圆曲线加法群Gp。加法群Gp的阶为q,生成元为P。

2) RA 生成系统主密钥用于加密车辆真实身份。RA 选取随机数作为系统私钥skm,并计算相应公钥pkm。RTA 同样生成本地密钥对用于认证车辆身份。RTA 选取随机数作为本地私钥skr,并计算相应公钥pkr。

4) 车辆vi基于参数集合向RA发送包含真实身份IDi的注册信息,RA 与RTA 将为车辆生成匿名身份(见2.2 节)。同时,RSU 也在初始化阶段注册,并以安全的方式获取系统参数。

2.2 匿名身份生成阶段

RA 与RTA 为车辆生成匿名身份。在消息认证过程中,车辆将以匿名身份发送认证信息,以保护其真实身份信息不被泄露。同时,通过匿名身份,系统可以实现有条件的隐私保护。在必要时,RA可以通过认证消息揭露车辆的真实身份。车辆匿名身份生成过程如图3 所示,其具体流程如下。

图3 车辆匿名身份生成过程

4) RA 设置车辆的初始信誉值Cr,并将IDip和字段以键值对的形式存储在区块链状态数据库中。RA 将含有匿名身份的消息发送给车辆vi。车辆将存储在OBU 中。

2.3 签名及认证阶段

在认证过程中,为保证消息的真实性和完整性,车辆必须对发送的认证进行签名。具体来说,车辆vi基于匿名身份IDi利用签名私钥对消息Mi进行签名,其过程如图4 所示,具体流程如下。

图4 消息签名及认证过程

1) 车辆vi选取一个随机数,并且计算Ri=Pτ。

3) 车辆vi向RTA 发送包含交通信息的认证消息

在认证过程中,RTA 可能同时收到来自不同车辆的签名。通过聚合签名可以有效提高RTA 对签名的验证效率,其过程如图5 所示,具体流程如下。

图5 基于聚合签名的消息认证过程

4) 当出现无效签名导致聚合签名验证失效时,可以通过二进制搜索来验证聚合签名[23],即RTA 先将接收到的签名进行排序,并将签名均分为两部分;然后,将这两部分的签名分别进行聚合、验证。对验证失败的那部分签名重复进行均分、聚合、验证操作,直至找到全部无效的签名。该方法可以有效避免聚合验证失败后所有签名都被判定为无效的问题。

2.4 信誉评估阶段

为了对车辆行为进行有效约束,本文方案在区块链架构的基础上引入了信誉评估机制[29]。RA 首先设置一个信誉阈值并广播。基于信誉评估机制,当车辆提供有效交通信息时,其信誉值会增加;反之其信誉值会被扣除。当车辆的信誉值低于信誉阈值时,车辆的匿名身份会被撤销。具体而言,针对车辆vi提供的交通信息,只有当n辆车提供与之相同或相似的交通信息时,车辆vi提供的交通信息才会被RTA 接收。另外,本文设定即车辆vi信誉值越低,就需要越多的其他车辆提供与之相同或相似的交通信息;车辆vi提供的交通信息越难被接收,车辆的信誉值就越难恢复,以此有效约束车辆行为。

本文方案中的信誉值计算方法为

其中,ni表示车辆在单位时间内车辆提交有效交通信息的数量,ΔTc表示一个单位时间,ωj表示第j个交通信息的权重,该值由RTA 进行计算。

其中,mi表示车辆i的恶意行为总数,t表示目前时间,tj表示车辆i第j次恶意行为的时间,α(β)表示惩罚系数。

在进行消息验证后,RTA 基于车辆提供的交通信息的有效性重新评估车辆的信誉值,并将包含车辆最新信誉值'Cr 的字段与参数IDp重新存储在区块链状态数据库中。

2.5 匿名身份更新阶段

当车辆的匿名身份失效时,车辆需要对匿名身份进行更新,具体流程如下。

基于该匿名身份更新机制,本文方案可以采用预加载若干匿名身份的方法来抵抗可链接性。车辆可以基于较短的匿名身份有效期ΔT加载一个匿名身份池,匿名身份池中装载的匿名身份在失效时能够进行及时的更新。

2.6 匿名身份撤销阶段

当车辆进行恶意行为时,RTA 与RA 能够对车辆身份进行有效追溯,并对其全部的匿名身份进行撤销,具体流程如下。

另外,当车辆主动申请撤销某一匿名身份时,RTA与RA 需要验证车辆密钥的合法性,具体流程如下。

3 方案分析

针对所提方案在消息认证过程中的具体实现,本节从正确性与安全性的角度对其进行验证和分析。

3.1 正确性分析

3.2 安全性分析

本节将从安全要求与抵御攻击两方面对本文协议进行安全性分析。针对安全要求,本节将从匿名性、可追溯性、不可链接性以及消息验证及完整性等方面展开。同时,考虑到密钥更新的安全性,本文还对密钥生成过程中涉及的前向和后向安全性进行分析。针对安全要求的分析细节如下。

2) 可追溯性。本文方案中,只有RA 可以揭露车辆的真实身份。RTA 根据恶意车辆的匿名身份可以计算得到向RA 发送加密字段基于本地私钥从该字段中恢复出参数,并通过计算等式最终得到车辆的真实身份IDi。因此,本文方案可以有效实现对恶意车辆的身份追溯。

本节对常见的抵御攻击进行分析,主要包括重放攻击、伪造攻击、篡改攻击及中间人攻击,其分析细节如下。

1) 重放攻击。车辆在验证消息中添加时间戳ti即,并对其签名以确保其为最新消息。RTA 能够基于时间戳检测重放攻击。因此本文方案能够有效抵御重放攻击。

2) 伪造攻击。根据前文的证明,基于ECDLP,攻击者无法获取RTA 或签名者的私钥。因此,攻击者无法假冒签名者的身份来伪造验证消息并使该消息满足等式

4) 中间人攻击。当攻击者在OBU 与RTA 之间进行中间人攻击时,需要假冒成OBU 向RTA 发送验证消息,同时假冒成RTA 向OBU 发送反馈消息。然而,所提方案能够有效抵御伪造攻击,因此攻击者无法仿冒为其他合法实体。另外,由于消息签名的存在,攻击者只能截获和转发消息,而无法篡改消息。

4 仿真与性能对比分析

VANET 系统具有车辆移动速度快、动态网络拓扑等特点,下面将从安全性、计算开销和通信开销等方面对本文方案进行有效分析。

4.1 实验预设

本文使用AMD Ryzen 7 5800H、Radeon Graphics CPU @ 3.20 GHz CPU、16 GB RAM 进行仿真实验,并基于Hyperledger Fabric v2.0.0 搭建联盟链网络。本文在区块链网络中使用Raft 共识机制,并基于Golang编写智能合约。基于本文方案架构,本文在Fabric 联盟链中构建了2 个组织,组织内的节点分别代表RA和RTA。RA 和RTA 作为背书节点,当来自背书节点的有效签名数量超过2n+1 个时,网络内的交易将被提交至排序节点,进而被打包至区块。本文实验构建了单通道下的4 个peer 节点(分别属于2 个组织,即org1和org2)、3 个order 节点和一个客户端节点。此外,由于车辆的移动性和有限的计算能力,车辆不会作为背书节点并且无权访问区块链通道。

4.2 安全性分析

安全性是VANET 系统中车辆利用通信协议与其他实体进行信息交互的最基本需求。本节将所提方案与几种VANET 系统中的认证方案进行了对比,具体包括Kamil 方案[30],Gayathri 方案[31],Liu方案[32]、Sikarwar 方案[33]、Wang 方案[34]及Yang方案[35]。本文方案与其他方案主要在匿名性、可追溯性、可撤销性及抵御攻击等方面进行比较,具体比较细节如表2 所示。其中,Kamil 方案能够实现匿名性、可追溯性以及批量认证等,且能够有效抵御重放攻击、中间人攻击、篡改攻击以及伪造攻击等,但该方案缺乏对车辆身份可撤销性的分析。Gayathri 方案和Liu 方案能够有效实现匿名性、可撤销性及可追溯性,但没有分析是否能够有效抵御重放攻击以及中间人攻击。Sikarwar 方案能够有效实现匿名性、可追溯性等,但不能满足可撤销性。Wang 方案能够满足常见的安全需求,但不支持高效的批量认证。Yang 方案能够满足可撤销性、可追溯性以及批量认证等,且能够有效抵御篡改攻击及伪造攻击等,但该方案没有对中间人攻击等其他常见攻击进行分析。通过与其他方案比较,本文方案满足常见的安全需求,且能够实现高效的批量认证。

表2 本文方案与其他方案的安全性对比

4.3 计算开销分析

为了更有效地分析本文方案的计算开销,且考虑到需要与不同类型的方案进行对比,本文选择2 种基于双线性配对的方案,即Liu 方案与Sikarwar 方案;以及4 种基于非双线性配对的方案,即Gayathri 方案、Kamil 方案、Wang 方案和Yang 方案作为对比方案。本文使用C/C++密码学库MIRACL 对几种方案设计的密码学操作进行了模拟测试。考虑到测试的准确性,每一种密码学操作都基于1 000 次计算并取平均值作为最终结果,具体如表3 所示。其中,Tbp、Tsbp、分别表示进行一次双线性配对操作、基于双线性配对的标量乘法计算、基于双线性配对的MapToPoint 哈希操作、基于双线性配对的点加操作、基于椭圆曲线的标量乘操作、基于椭圆曲线的点加操作、哈希运算的执行时间。

表3 密码学运算的平均执行时间

表4 给出了各方案在身份认证过程中的计算开销。Kamil 方案生成签名的计算开销为3Tsec+2Tpec+3Th≈0.493 ms,进行单一认证的计算开销为4Tsec+3Tpec+3Th≈0.657 ms,批量认证的计算开销为(3n+1)Tsec+3nTpec+3nTh。Gayathri 方案生成签名的计算开销为2Tsec≈0.324 ms,进行单一认证的计算开销为5Tsec+3Tpbp≈0.813 ms,批量认证的计算开销为5nTsec+3nTpbp。Liu 方案生成签名的计算开销为3Tsec+3Th≈0.489 ms,进行单一认证的计算开销为2Tbp+2Tsbp+2Th≈8.246 ms,批量认证的计算开销为2Tbp+(n+1)Tsbp+2nTh。Sikarwar 方案生成签名的计算开销为Tsec+Th≈0.163 ms,进行单一认证的计算开销为3Tbp+Tsbp+Th≈11.695 ms,批量认证的计算开销为3Tbp+nTsbp+3nTpbp+nTh。Wang 方案生成签名的计算开销为4Tsec+Tpec+5Th≈0.655 ms,进行单一认证的计算开销为4Tsec+Tpec+6Th≈0.656 ms,批量认证的计算开销为4nTsec+nTpec+6nTh。Yang 方案生成 签名的 计算开销为2Tsec+Tpec+4Th≈0.33 ms,进行单一认证的计算开销为4Tsec+2Tpec+4Th≈0.656 ms,批量认证的计算开销为4nTsec+2nTpec+4nTh。本文方案生成签名的计算开销为2Tsec+Th≈0.325 ms,进行单一认证的计算开销为4Tsec+Tpec+2Th≈0.652 ms,进行批量认证的计算开销为(2n+2)Tsec+(2n-1)Tpec+2nTh。

表4 各方案在身份认证过程中的计算开销

当车辆数量分别为20、40、60、80、100、120时,各方案进行批量认证的计算开销如图6 所示。从图6 中可以看出,随着车辆数量的不断增加,各方案的计算开销也逐渐增大。其中,Gayathri 方案的计算开销最大,本文方案的计算开销最低。当车辆数量为100 时,本文方案的计算开销分别比Kamil 方案、Gayathri 方案、Liu 方案、Sikarwar 方案、Wang 方案及Yang 方案减少了约32.9%、59.01%、20.1%、26.54%、49.2%及49.2%。

图6 各方案进行批量认证的计算开销

4.4 通信开销分析

本文构建双线性配对为e:G1×G1→G2。G1为加法循环群,该群元素的大小为64 × 2=128 byte。基于椭圆曲线E上的点及无穷远点Θ构建椭圆曲线加法群G,该群元素大小为20 × 2=40 byte 。时间戳大小为4 byte,哈希值大小为20 byte,整数域中的元素大小为20 byte。各方案在认证过程中的通信开销如表5 所示。

表5 各方案在认证过程中的通信开销

各方案认证过程中通信开销对比如图7 所示。从图7 中可以看出,本文方案的通信开销低于其他方案。这是由于本文方案在认证过程中没有依赖于双线性配对操作,且基于区块链使用更少计算步骤完成身份认证过程,因此相较于其他方案,本文方案需要传输的消息元组体积更小,通信开销也相对较少。

图7 各方案认证过程中通信开销对比

4.5 认证时延分析

为了更好地分析车载自组网场景下的实际需求,本文进一步考虑了通信时延对认证开销的影响。因此,基于实际车载自组网场景利用Network Simulator 2 对各方案的通信模块进行了仿真,结果如图8 所示。当车辆数量分别为20、40、60、80、100时,Kamil 方案的通信时延为46.641 ms、90.732 ms、137.112 ms、182.839 ms、228.139 ms;Gayathri 方案的通信时延分别为46.991 ms、91.332ms、137.055 ms、182.982 ms、228.147 ms;Liu 方案的通信时延分别为39.445 ms、78.245 ms、116.646 ms、156.105 ms、193.479 ms;Sikarwar 方案的通信时延分别为73.805 ms、145.039ms、217.473 ms、289.726 ms、360.320 ms;Wang 方案的通信时延分别为32.265 ms、63.798 ms、94.232 ms、125.265 ms、157.385 ms;Yang 方案的通信时延分别为24.398 ms、49.652 ms、73.745 ms、94.532 ms、120.645 ms;本文方案的通信时延分别为21.182 ms、40.191 ms、61.845 ms、80.534 ms、102.276 ms。在通信时延方面,本文方案具有相较于其他方案更短的通信时延。这是由于本文方案的通信开销低于其他方案,因此会产生更短的通信时延。

图8 各方案通信时延对比

在考虑通信时延的情况下,本文计算了各方案的实际认证开销,如图9 所示。从图9 中可以看出,各方案的认证时延与车辆数呈近线性关系。其中,当车辆数量为100 时,Sikarwar 方案认证开销最高,而本文方案的总体认证开销分别比Kamil 方案、Gayathri方案、Liu 方案、Sikarwar 方案、Wang 方案及Yang方案减少了约40.54%、56.23%、42.41%、66.61%、39.26%及27.28%。这是因为本文方案在计算复杂度与通信复杂度方面均优于其他方案。在计算复杂度方面,本文方案没有使用计算成本较高的双线性配对操作,并且相较于其他方案具有更少的计算步骤。因此,本文方案具有更少的计算开销。在通信复杂度方面,本文方案基于区块链实现,验证者通过检索区块链状态数据库获得部分认证参数,有效减少了车辆在实际认证过程中的数据通信需求。因此,本文方案具有更少的通信开销。综上,在车载自组网实际应用场景中,本文方案具有更低的总体认证开销。

图9 各方案认证时延对比

4.6 信誉评估机制分析

为了更加清晰地分析本文方案中的信誉评估机制,本文选取参数λ1=1,λ2=0.5,ΔTc=20 s,α(β)=0.5。交通信息权重值ω需要由RTA 进行评定计算,这里本文只做举例。假设在消息认证过程中,车辆vi在18 s 时进行了一次恶意行为。由图10可知,当时间为0~18 s 时,车辆vi无恶意行为,此时负向影响值正向影响值曲线与信誉值曲线重合。当时间为18 s 时,车辆在消息认证过程中进行了一次恶意行为,导致负向影响值绝对值急剧增大,同时,该车辆vi的信誉值也随之下降。恶意行为导致车辆vi在时间为19~40 s 时提供的交通信息较少地被RTA 接收,正向影响值也随之下降,车辆vi的信誉值此时处于较低的水平。当时间为40~60 s 时,车辆vi的正向影响值逐渐升高,负向影响值绝对值逐渐降低,此时车辆vi的信誉值逐渐恢复到正常水平。当车辆出现较多恶意行为时,信誉值恢复至正常水平的时间将会大幅增加;当车辆的信誉值低于信誉阈值时,车辆的匿名身份将会被撤销。因此,本文方案的信誉值评估机制能够有效约束车辆行为。

图10 信誉评估分析

5 结束语

本文提出一种基于区块链的分布式匿名认证方案。车辆利用签名私钥对认证消息进行签名,而区域性可信机构能够利用零知识证明对签名消息进行快速认证。另外,区域性可信机构能够利用签名聚合机制可以将来自不同车辆的单一签名聚合为一个短签名进行批量认证。在认证安全方面,本文方案能够利用签名信息对恶意车辆身份进行准确追溯,并通过区块链状态数据库对车辆身份实现快速撤销。另外,该方案在区块链架构的基础上引入了信誉评估机制,实现对车辆行为的有效约束。最后,安全分析与仿真实验表明,本文方案能够满足匿名性、不可链接性等多种安全需求,且相较于现有同类方案,本文方案能有效降低计算与通信开销,并显著提高认证效率。本文虽然已经涉及车辆信誉评估,但是缺少具体的激励机制,基于所提方案,考虑如何设置合理的激励机制是下一步的主要工作方向。

猜你喜欢

信誉批量攻击者
以质量求发展 以信誉赢市场
基于单片机MCU的IPMI健康管理系统设计与实现
机动能力受限的目标-攻击-防御定性微分对策
批量提交在配置分发中的应用
信誉如“金”
正面迎接批判
基于VBA井斜数据批量校正方法
江苏德盛德旺食品:信誉为翅飞五洲
有限次重复博弈下的网络攻击行为研究
在数控车床上批量钻铰孔类工件的实践