技术应用

面向VANETs的轻量级匿名认证密钥协商协议

  • 刘静婷 ,
  • 刘高 , * ,
  • 王宁 ,
  • 向涛
展开
  • 重庆大学计算机学院,重庆 402676

网络出版日期: 2025-01-25

基金资助

国家重点研发计划(2022YFB3103500);国家自然科学基金(62302070,62101079,62272073,62402202,62202071);重庆市自然科学基金(cstc2021jcyj-msxm0465,cstc2021jcyj-msxmX0273);重庆市留学人员回国创业创新支持计划(cx2021012);成都市科技计划(2023-YF11-00020-HZ);中国博士后科学基金(2023M740399,2022M710520,2022M710518);教育部装备预研联合基金(8091B032127)

版权

版权所有©《网络空间安全科学学报》编辑部 2024

A lightweight anonymous authenticated key agreement protocol for VANETs

  • LIU Jingting ,
  • LIU Gao , * ,
  • WANG Ning ,
  • XIANG Tao
Expand
  • College of Computer Science, Chongqing University, Chongqing 402676, China

Online published: 2025-01-25

Copyright

Copyright ©2024 Journal of Aeronautical Materials. All rights reserved.

摘要

车辆与路边单元(RoadSide Units,RSUs)之间的认证密钥协商(Authenticated Key Agreement,AKA)协议在车联网(Vehicular Ad-hoc Networks,VANETs)中至关重要。然而,现有的解决方案仍然存在效率低下的问题。为了解决这个问题,提出一种面向VANETs的轻量级匿名AKA协议,支持车辆与RSUs之间的轻量级匿名认证和密钥协商。通过轨迹规划,将车辆的认证信息提前同步到目标RSUs,加速认证,使得RSUs可以在车辆到达之前做好身份验证的准备,并防止可信权威机构(Trusted Authority,TA)干涉车辆与RSUs之间的AKA。采用轻量级加密操作,降低了计算开销和通信开销,确保AKA的高效性。安全分析表明,本方案不仅可以实现匿名性、条件隐私性、假名不可链接性、免密钥托管和物理安全,而且能够抵御大多数已知攻击。对比实验结果表明,此方案在轻量化设计方面优于现有方案。

本文引用格式

刘静婷 , 刘高 , 王宁 , 向涛 . 面向VANETs的轻量级匿名认证密钥协商协议[J]. 网络空间安全科学学报, 2024 , 2(5) : 87 -98 . DOI: 10.20172/j.issn.2097-3136.240508

Abstract

Authenticated key agreement (AKA) protocol between roadside units (RSUs) and vehicles is a crucial aspect of vehicular ad-hoc networks (VANETs). Nevertheless, existing solutions still have the problem of low efficiency. In order to resolve this issue, a lightweight anonymous AKA protocol specifically designed for VANETs was proposed. It supported lightweight anonymous authentication and key agreement between vehicles and RSUs simultaneously. The trajectory planning was employed to synchronize the authentication information of vehicles to target RSUs in advance for accelerating the authentication, ensuring that RSUs were ready for identity authentication before the vehicles arrive, and eliminating the need for the trusted authority (TA) to participate in each mutual AKA instance. By employing only lightweight cryptographic operations, the computational and communication overheads were reduced, guaranteeing the efficiency of AKA. Security analysis demonstrates that this protocol not only achieve anonymity, conditional privacy, pseudonym unlinkability, key escrow freeness and physical security, but also withstand most known attacks. Comparative experimental results indicate this protocol’s superiority compared to existing protocols in terms of efficiency.

0 引言

车联网(Vehicular Ad-hoc Networks,VANETs) 通过无线通信技术实现车辆之间以及车辆与路边单元(RoadSide Units,RSUs)之间的通信,以支持各种应用,如交通管理和信息服务[1-2]。车辆配备车载单元(On-Board Units,OBUs),通过专用短程通信(Dedicated Short Range Communication,DSRC)协议与RSUs通信获取交通信息,保障交通安全[3]。具体来说,车辆可以通过DSRC协议直接与道路基础设施的RSUs通信。RSUs可以收集车辆的实时交通信息,并将其传输给其他车辆,从而帮助车辆做出适当的驾驶决策。因此,车辆与RSUs之间的通信提高了整个运输系统的效率和安全性。尽管VANETs具有显著的优势,但仍存在很多挑战[4-6]
首先是通信安全的困境。由于开放的电磁环境,车辆与RSUs之间的通信很容易被窃听和篡改。在许多场景中,攻击者甚至可以通过物理接触来窃取秘密数据(如私钥),如通过使用侧信道攻击技术。因此,如何在通信中实现全面的认证和机密性是一个至关重要但悬而未决的问题。
其次是车辆隐私的困境。为了保护车辆隐私,可以利用假名隐匿车辆真实身份,并保证新旧假名之间不可关联。但当车辆违反法律法规时,及时识别并确定这些违规者也是必要的。
不幸的是,现有的认证密钥协商(Authenticated Key Agreement,AKA)解决方案很难同时解决这两个困境。现有的AKA方案大致可分为传统AKA方案[7-14]和基于物理不可克隆函数(Physical Unclable Function,PUF)的AKA方案[15-20]。传统的AKA方案通常部署一个可信的权威机构(Trusted Authority,TA),如交通管理中心来管理车辆和RSUs的注册,并协助车辆与RSUs之间的相互AKA。因此,它们通常会由于复杂的交互[7, 11, 13]而导致效率低下。此外,它们中的大多数都无法抵抗物理捕获攻击。为了解决上述问题,基于PUF的AKA方案利用PUF在AKA之前检测设备的安全状态。然而,大多数基于PUF的AKA方案需要一个TA参与车辆与RSUs之间的相互AKA, 这导致很高的通信开销和计算开销[15, 19]。为了确保匿名性,这两种方案通常都允许车辆使用假名与RSUs通信[7-19]。但这类方案很少考虑假名更新和不可关联性,以避免车辆行为的联动。因此,现有的AKA方案很难提供具有全面安全保证的轻量级匿名身份验证。
为了填补这一空白,本文提出了一种轻量级匿名AKA方案,该方案可以支持车辆与RSUs之间的轻量级匿名认证和密钥协议。为了加速认证,车辆的认证信息通过轨迹规划提前同步到目标RSUs。这样,RSUs就可以在车辆到达之前做好身份验证的准备,并且可以防止TA参与车辆与RSUs之间的相互AKA。此外,在AKA期间只采用轻量级加密操作,降低了计算开销和通信开销。
本文的主要贡献如下:
(1)提出了一种轻量级匿名AKA协议,支持基于轻量级密码操作的车辆与RSUs之间的轻量级匿名认证和密钥。
(2)提出了一种高效的匿名认证方法,利用轨迹规划将车辆的认证信息提前同步到目标RSUs。
(3)使用BAN(Burrows,Abadi,Needham)逻辑对协议进行了正式分析,并辅以非正式分析。分析结果表明,本方案不仅满足匿名性、条件隐私性、不可链接性、免密钥托管和物理安全性,而且能够抵御大多数已知的攻击。
(4)从计算开销和通信开销方面评估了协议的性能。实验结果表明,与相关工作相比,本方案在计算和通信方面都是高效的。

1 研究现状

本节首先从传统认证方案和基于PUF的认证方案两方面回顾相关工作。然后指出它们面临的挑战,并将本文方案与表1中的相关工作进行比较,以显示本方案的优越性。
表 1 本方案与相关工作的比较

Table 1 Comparison of our scheme with related works

方案 文献 An Un CP KEF PS RI RMM RR RKS AHC FA
传统AKA方案 [7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
基于PUF的AKA方案 [15]
[16]
[17]
[18]
[19]
[20]
Ours

注:An:匿名性;Un:不可链接性;CP:条件隐私性;KEF:免密钥托管;PS:物理安全性;RI:抵御冒充攻击;RMM:抵御中间人攻击;RR:抵御重放攻击;RKS:抵御已知会话密钥攻击;AHC:避免计算和通信方面的沉重负担;FA:形式分析;●:支持;○:不支持或未考虑;—:不适合评估。

1.1 传统的认证方案

Sutrala等[7]和Tahir 等[13]设计了一个以用户密码、 移动设备和个人生物特征为因素的三因素用户认证方案,支持注册用户与设备之间的相互认证和密钥协商安全通信。Tahir等的方案允许车辆不直接存储秘密,而是通过与密码的异或操作(Exclusive OR,XOR)来隐藏秘密,从而保证物理安全。然而,用户和设备之间的相互认证是借助软件定义网络的控制节点[7]和可信方代理[13]来执行的,这可能会降低系统的效率。此外,Sutrala等[7]未考虑不可链接性、条件隐私性和物理安全性,Tahir等[13]未考虑不可链接性和免密钥托管。
Wei等[8]提出了一种轻量级且安全的AKA方案,提供车辆与雾节点之间的安全通信信道。该方案采用多可信权威(Multi-Trusted-Authority,Multi-TA)模型来解决单点故障问题。然而,每个TA负责服务一个指定的雾节点,并参与指定雾节点与车辆之间的认证和密钥协商过程,因此TA的频繁参与可能会给计算和通信带来沉重的负担。为了提高网络的效率并减少不必要的计算负担,Son等[9]提出了一种安全且轻量级的车载到基础设施(Vehicle-to-Infrastructure,V2I)切换认证方案。在车辆与RSUs之间的交接认证过程中,该方案不需要TA的参与,而是利用区块链共享交接认证信息。车辆可以通过仅使用哈希和XOR操作与RSUs进行身份验证,因为相应的信息已经提前存储在区块链中。但是,该方案并没有考虑有条件的隐私保护,这意味着如果车辆存在恶意行为,TA无法追踪到车辆的真实身份。
Zhang等[10]提出了一种切换认证方案,利用变色龙哈希函数的陷门碰撞特性来验证用户和接入点的合法性。该方案可实现完美前向保密、主密钥前向保密、已知随机性保密、免密钥托管、鲁棒性和可追踪性,但未考虑假名的不可关联性和物理安全性。
Li等[12]和Xiong等[14]提出了两种VANETs的条件保密认证方案。它们可以实现双向认证和隐私保护。同时,Li等[12]部署了TA,Xiong等[14]部署了跟踪权限,以确保可追溯性。然而,这两种方案都不支持物理安全。

1.2 基于PUF的认证方案

PUF是一种依赖于硬件设备特性的硬件功能实现电路,它被广泛应用于各个领域(如设备认证、安全密钥生成等安全相关应用),为设备提供物理安全性。因此,为了抵抗物理捕获攻击,近年来一些工作采用了PUF。
Othman等[15]提出了一种物理安全的隐私保护信息认证方案,可以保证安全性和即使在内存泄露的情况下,也能抵御被动和主动攻击的隐私保护。但是,TA需要参与车辆与RSUs之间的认证,这可能会对系统的效率产生负面影响。
Liang等[16]提出了一种物理安全且条件保密的VANETs AKA协议,将椭圆曲线密码体制与PUF相结合,实现了车辆与RSUs之间的相互认证和密钥协议。它在认证和密钥协商过程中不需要TA。但是车辆在注册阶段公布其长期公钥,这使得攻击者可以根据未改变的长期公钥链接车辆的假名。
Xie等[17]基于椭圆曲线密码体制提出了一种支持批量验证的V2I和V2V (Vehicle-to-Vehicle)身份认证方案。RSUs可以在不借助TA的情况下批量认证车辆,提高了系统的性能,降低了系统开销。该方案将PUF与生物密钥相结合,抵御RSUs捕获攻击和OBUs入侵攻击。但是该方案没有考虑免密钥托管。
Ma等[18]基于椭圆曲线密码学和PUF提出了一种匿名认证协议,该协议支持智能电表与服务提供商之间的相互认证和密钥协议,但没有考虑不可链接性、条件隐私性和免密钥托管。
Bansal等[19]设计了一种基于PUF的认证和密钥协商方案,该方案可以抵御电动汽车(Electrical Vehicle,EV)和智能电网之间的物理捕获攻击。但是,车辆与电网之间的相互认证要划分为聚合器与电网之间的认证和聚合器与车辆之间的认证,这会造成较大的计算负担。
Harishma等[20]提出了一种相互认证的密钥交换方案,可以在资源受限的智能电表上保证物理安全。该方案使用了轻量级的密码原语,可以应用于其他资源受限的物联网设备。但智能电表使用自己的身份与服务器建立会话,因此匿名性无法保证。
将本方案与表1中的相关工作在匿名性、不可链接性、条件隐私性、免密钥托管、物理安全性、计算和通信方面的负担、形式分析以及对冒充攻击、中间人攻击、重放攻击和已知会话密钥攻击的抵抗力方面进行了比较。如表1所示,现有的大多数方案都不支持具有不可链接性和物理安全保证的VANETs的轻量级和有条件的隐私保护AKA。

2 问题陈述

2.1 系统模型

图1为本方案的系统模型,该模型主要涉及三种实体,即TA、车辆和RSUs。每个实体的详细描述如下:
图 1 系统模型

Fig.1 System model

(1)TA
TA扮演可信实体的角色,在整个系统中只有它是可信的,不会被泄露。TA具有强大的计算和存储能力,主要负责初始化、注册以及认证的准备和更新。需要注意,在车辆注册前,车辆可将起始地址和目的地发送给TA,TA本地执行路径规划并返回路径。但车辆获得路径的过程超出了本文范围。因此,假设注册前车辆已获得其路径。
(2)车辆(V)
每辆车辆配备OBUs和PUF。OBUs是一种安装在车辆上的电子设备,用于记录交通和驾驶数据,它可以通过DSRC协议向路边装置和其他车辆提供无线连接。此外,采用PUF为车辆提供物理安全。
(3)RSUs
RSUs部署在路边,作为接入点。它可以对车辆进行身份验证,并为车辆提供通信支持。

2.2 安全模型

TA被认为是可信的,并且永远不会被破坏。TA可以在注册、认证准备和更新过程中与RSUs和车辆建立安全通道。假设RSUs是半可信的,即它们遵循预设的协议,但对车辆的敏感信息(如车辆的真实身份和长期公钥)感到好奇[16]。由于车辆可能在没有授权的情况下试图与RSUs通信以获取服务,所以不能假定车辆是诚实的。攻击者试图通过发动物理捕获攻击,从涉及实体的记忆中窃取秘密信息。假设TA可以创建自己的公钥/私钥对$ ({x}_{\mathrm{T}\mathrm{A}},{y}_{\mathrm{T}\mathrm{A}}={x}_{\mathrm{T}\mathrm{A}}P) $。在身份验证期间,车辆不应该频繁地与TA交互,因为频繁交互会对车辆访问RSUs的效率产生负面影响。车辆和RSUs的时间可以通过握手协议与TA的时间同步[21]

2.3 安全目标

根据潜在的攻击,本方案应该确保以下安全和隐私属性:
(1)相互认证
车辆驶入RSUs覆盖区域时,车辆应与RSUs进行相互认证。
(2)密钥协议
在相互认证过程中,应为车辆和RSUs之间的未来安全通信创建会话密钥。
(3)匿名
通过保护车辆真实身份保证身份隐私。
(4)条件隐私
当车辆有恶意行为时,TA能够根据其假名显示恶意车辆的真实身份。
(5)不可关联性
攻击者可以根据公开信息将车辆的新旧假名联系起来,因此假名的不可关联性应该得到保证。
(6)免密钥托管
车辆的密钥不应该完全由其他实体创建。
(7)物理安全
为了抵御物理捕获攻击,防止攻击者从设备(如车辆、RSUs、TA)中提取敏感信息,需要保证每个实体的物理安全。
(8)抵抗攻击
本方案应该能够抵御众所周知的攻击,包括冒充攻击、重放攻击、中间人攻击和已知的会话密钥攻击。

2.4 理论准备

2.4.1 密码问题

G是椭圆曲线上素数阶为q的循环群,PG的生成器,为了保证安全性和隐私性,本方案采用两种类型的密码困难问题。
(1)离散对数(Discrete Logarithm,DL)问题
给定$ (P,R=rP) $,攻击者从$ R=rP $计算$ r $是不可行的。
(2)计算Diffie-Hellman(Computational Diffie-Hellman,CDH)问题
给定$ (P,aP,bP) $,攻击者计算$ abP $是不可行的。

2.4.2 PUF

PUF[22]利用硬件设备的独特物理特性生成随机和唯一的标识符,通常被称为$ \mathrm{c}\mathrm{h}\mathrm{a}\mathrm{l}\mathrm{l}\mathrm{e}\mathrm{n}\mathrm{g}\mathrm{e} $。这种$ \mathrm{c}\mathrm{h}\mathrm{a}\mathrm{l}\mathrm{l}\mathrm{e}\mathrm{n}\mathrm{g}\mathrm{e} $来自于电子元件制造过程中发生的固有的、不可控的变化。因此,PUF可以为给定的输入$ \mathrm{c}\mathrm{h}\mathrm{a}\mathrm{l}\mathrm{l}\mathrm{e}\mathrm{n}\mathrm{g}\mathrm{e} $生成不可克隆的输出,可以将其定义为$ \mathrm{R}\mathrm{e}\mathrm{s}\mathrm{ }={\mathrm{P}\mathrm{U}\mathrm{F}}_{X}\left(\mathrm{c}\mathrm{h}\mathrm{a}\mathrm{l}\mathrm{l}\mathrm{e}\mathrm{n}\mathrm{g}\mathrm{e}\right) $,其中$ X $是使用该函数的实体,$ \mathrm{R}\mathrm{e}\mathrm{s} $是输出。如果攻击者试图捕获节点,PUF的内部结构及其对输入的响应将受到影响。因此,PUF可以提供物理安全性。然而,由于环境的变化(如温度和热噪声),PUF的输出可能不稳定,因此,可以采用模糊提取器(Fuzzy Extractor)来减轻这一问题的影响。

2.4.3 模糊提取器

模糊提取器是一种加密结构,用于从嘈杂或不完美的源中提取稳定和统一的加密密钥,这些源通常来自生物特征数据(如指纹和虹膜)或具有噪声的物理设备(如PUF)[23]。如果输入数据和模板之间的差异在一定范围内,就可以成功地进行识别。在本方案中,通过部署模糊提取器来减轻PUF执行过程中噪声的影响。模糊提取器可分为两部分,称作生成算法$ \mathrm{F}\mathrm{Z}.{\mathrm{G}\mathrm{e}\mathrm{n}}_{X}\left(\mathrm{*}\right) $和再生成算法$ \mathrm{F}\mathrm{Z}.{\mathrm{R}\mathrm{e}\mathrm{p}}_{X}\left(\mathrm{*}\right) $
(1)$ \mathrm{F}\mathrm{Z}.{\mathrm{G}\mathrm{e}\mathrm{n}}_{X}\left(\mathrm{*}\right) $可以定义为$ (K,\mathrm{h}\mathrm{d})=\mathrm{F}\mathrm{Z}.{\mathrm{G}\mathrm{e}\mathrm{n}}_{X}\left(\mathrm{R}\mathrm{e}\mathrm{s}\right) $,其中$ K $是秘密消息,$ \mathrm{h}\mathrm{d} $是辅助字符串,$ \mathrm{R}\mathrm{e}\mathrm{s} $是PUF执行的输出,$ \mathrm{R}\mathrm{e}\mathrm{s}={\mathrm{P}\mathrm{U}\mathrm{F}}_{X}\left(\mathrm{c}\mathrm{h}\mathrm{a}\mathrm{l}\mathrm{l}\mathrm{e}\mathrm{n}\mathrm{g}\mathrm{e}\right) $
(2) 给定一个有噪声的输入$ \mathrm{R}\mathrm{e}\mathrm{s}^\prime $、一个辅助字符串$ \mathrm{h}\mathrm{d} $以及预定的最大误差修正距离$ \varDelta $,将复制算法定义为$ K=\mathrm{F}\mathrm{Z}.{\mathrm{R}\mathrm{e}\mathrm{p}}_{X}(\mathrm{R}\mathrm{e}\mathrm{s}^\prime,\mathrm{h}\mathrm{d}) $。若距离$ \mathrm{D}\mathrm{i}\mathrm{s}\mathrm{t}\mathrm{a}\mathrm{n}\mathrm{c}\mathrm{e}\mathrm{ }(\mathrm{R}\mathrm{e}\mathrm{s}, \mathrm{R}\mathrm{e}\mathrm{s}^\prime)\leqslant \varDelta $,则$ K $可由$ \mathrm{F}\mathrm{Z}.{\mathrm{R}\mathrm{e}\mathrm{p}}_{X}\left(\mathrm{*}\right) $恢复。如果距离$ \mathrm{D}\mathrm{i}\mathrm{s}\mathrm{t}\mathrm{a}\mathrm{n}\mathrm{c}\mathrm{e}\mathrm{ }(\mathrm{R}\mathrm{e}\mathrm{s},\mathrm{R}\mathrm{e}{\mathrm{s}}^{\prime}) > \varDelta ,\mathrm{则}K $无法再现。

3 方案设计

本节详细介绍本方案的设计思路,为了便于表述,本文中主要采用的符号如表2所示。
表 2 符号

Table 2 Notions

符号 描述
$ ({x}_{X},{y}_{X}) $ 实体X的公钥/私钥对
$ {\mathrm{P}\mathrm{U}\mathrm{F} }_{X}\left(*\right) $ X的物理克隆函数
$ \mathrm{F}\mathrm{Z}.{\mathrm{G}\mathrm{e}\mathrm{n} }_{X}\left(*\right) $ X运行的模糊提取器的生成算法
$ \mathrm{F}\mathrm{Z}.{\mathrm{R}\mathrm{e}\mathrm{p} }_{X}\left(*\right) $ X运行的模糊提取器的再生成算法
$ (\mathrm{I}\mathrm{K},\mathrm{C}\mathrm{K}) $ 车辆的验证密钥V
$ {\mathrm{E}\mathrm{n}\mathrm{c} }_{\mathrm{C}\mathrm{K} }\left(*\right) $ 密钥CK的对称加密算法
$ {\mathrm{D}\mathrm{e}\mathrm{c} }_{\mathrm{C}\mathrm{K} }\left(*\right) $ 密钥CK的对称解密算法
$ {\mathrm{H}\mathrm{M}\mathrm{A}\mathrm{C} }_{\mathrm{I}\mathrm{K} }\left(*\right) $ 带有密钥IK的哈希信息验证码

3.1 初始化

在这个阶段,TA生成系统参数并释放公共参数,步骤如下:
(1)给定一个安全参数$ \lambda $,TA在有限域$ \mathbb{F}\mathrm{z} $上生成一个椭圆曲线$ E\left(\mathbb{F}\mathrm{z}\right) $,其中$ z $为素数幂。$ E\left(\mathbb{F}\mathrm{z}\right) $使用生成器$ P $$ E\left(\mathbb{F}\mathrm{z}\right) $的加群中选择一个子群$ G $,其中$ q $$ P $的素数阶。
(2)TA选择一个安全哈希函数$ H:\{0,1\}\mathrm{*}\to {Z}_{q}^{*} $
(3)TA创建自己的公钥/私钥对$ ({x}_{\mathrm{T}\mathrm{A}}\in {Z}_{q}^{*},{y}_{\mathrm{T}\mathrm{A}}= {x}_{\mathrm{T}\mathrm{A}}P) $,并采用$ {\mathrm{P}\mathrm{U}\mathrm{F}}_{\mathrm{T}\mathrm{A}}\left(\mathrm{*}\right) $和模糊提取器生成算法$ {\mathrm{F}\mathrm{Z}.\mathrm{G}\mathrm{e}\mathrm{n}}_{\mathrm{T}\mathrm{A}}\left(\mathrm{*}\right) $来隐藏其私钥$ {x}_{\mathrm{T}\mathrm{A}} $,由此抵御物理捕获攻击。具体来说,首先,TA选择它的$ {\mathrm{c}\mathrm{h}\mathrm{a}}_{\mathrm{T}\mathrm{A}}\in {Z}_{q}^{*} $,并计算$ {\mathrm{R}\mathrm{e}\mathrm{s}}_{\mathrm{T}\mathrm{A}}={\mathrm{P}\mathrm{U}\mathrm{F}}_{\mathrm{T}\mathrm{A}} \left({\mathrm{c}\mathrm{h}\mathrm{a}}_{\mathrm{T}\mathrm{A}} \right) $$ \left( {K}_{\mathrm{T}\mathrm{A}},{\mathrm{h}\mathrm{d}}_{\mathrm{T}\mathrm{A}} \right)=\mathrm{F}\mathrm{E}.{\mathrm{G}\mathrm{e}\mathrm{n}}_{\mathrm{T}\mathrm{A}}\left({\mathrm{R}\mathrm{e}\mathrm{s}}_{\mathrm{T}\mathrm{A}}\right) $。然后,TA计算$ {\theta }_{\mathrm{T}\mathrm{A}}= H\left({\mathrm{c}\mathrm{h}\mathrm{a}}_{\mathrm{T}\mathrm{A}}\right|\left|{y}_{\mathrm{T}\mathrm{A}}\right|\left|{K}_{\mathrm{T}\mathrm{A}}\right|\left|{\mathrm{h}\mathrm{d}}_{\mathrm{T}\mathrm{A}}\right)\oplus{x}_{\mathrm{T}\mathrm{A}} $,用于加密TA的私钥$ {x}_{\mathrm{T}\mathrm{A}} $$ {\mathrm{c}\mathrm{h}\mathrm{e}}_{\mathrm{T}\mathrm{A}}=H\left({x}_{\mathrm{T}\mathrm{A}}\right|\left|{\theta }_{\mathrm{T}\mathrm{A}}\right) $来保证数据完整性。最后,TA存储$ \{{\mathrm{c}\mathrm{h}\mathrm{a}}_{\mathrm{T}\mathrm{A}},{y}_{\mathrm{T}\mathrm{A}},{\mathrm{h}\mathrm{d}}_{\mathrm{T}\mathrm{A}},{\theta }_{\mathrm{T}\mathrm{A}},{\mathrm{c}\mathrm{h}\mathrm{e}}_{\mathrm{T}\mathrm{A}}\} $,以便将来提取其私钥以供使用。
(4)TA公开公共参数$ \{q,P,G,H,{y}_{\mathrm{T}\mathrm{A}}\} $

3.2 注册和认证准备

在这个阶段,车辆需要向TA进行注册,并通过安全信道提前向TA准备相关的认证信息,以加快车辆与RSUs之间的相互认证过程和密钥生成速率。

3.2.1 车辆注册

(1)如图2所示,首先,车辆V选择$ {x}_{V},{\alpha }_{V}\in {Z}_{q}^{*} $,并计算$ {y}_{V}={x}_{V}P $$ {A}_{V}={\alpha }_{V}{y}_{V} $。然后,车辆V采用$ {\mathrm{P}\mathrm{U}\mathrm{F}}_{V}\left(\mathrm{*}\right) $和模糊提取器生成算法$ {\mathrm{F}\mathrm{Z}.\mathrm{G}\mathrm{e}\mathrm{n}}_{V}\left(\mathrm{*}\right) $保护和存储它的私钥$ {x}_{V} $,以抵御物理捕获攻击,这类似于TA的私钥隐藏方法。最后,车辆V存储$ \{{\mathrm{I}\mathrm{D}}_{V},{y}_{V}\} $并向TA发送$ \{{\mathrm{I}\mathrm{D}}_{V},{y}_{V},{A}_{V}\} $,其中$ {\mathrm{I}\mathrm{D}}_{V}\in {Z}_{q}^{*} $,代表车辆V的真实身份。
图 2 车辆注册

Fig.2 Vehicle registration

(2)在接收到车辆V发送过来的$ \left\{{\mathrm{I}\mathrm{D}}_{V},{y}_{V},{A}_{V}\right\} $后,TA选择$ {\beta }_{\mathrm{T}\mathrm{A}},{\mathrm{s}\mathrm{e}\mathrm{q}}_{0},{\mathrm{s}\mathrm{e}\mathrm{q}}_{1}\in {Z}_{q}^{*} $。TA通过$ {\mathrm{P}\mathrm{U}\mathrm{F}}_{\mathrm{T}\mathrm{A}}\left(\mathrm{*}\right) $ 和模糊提取器再现算法$ {\mathrm{F}\mathrm{Z}.\mathrm{R}\mathrm{e}\mathrm{p}}_{\mathrm{T}\mathrm{A}}\left(\mathrm{*}\right) $恢复并检查它的私钥$ {x}_{\mathrm{T}\mathrm{A}} $。具体来说,首先,TA计算$ {\mathrm{R}\mathrm{e}\mathrm{s}^\prime}_{\mathrm{T}\mathrm{A}}={\mathrm{P}\mathrm{U}\mathrm{F}}_{\mathrm{T}\mathrm{A}}\left({\mathrm{c}\mathrm{h}\mathrm{a}}_{\mathrm{T}\mathrm{A}}\right) $$ {K^\prime}_{\mathrm{T}\mathrm{A}}= \mathrm{F}\mathrm{E}.{\mathrm{R}\mathrm{e}\mathrm{p}}_{\mathrm{T}\mathrm{A}}\left({\mathrm{R}\mathrm{e}{\mathrm{s}}^{\prime}}_{\mathrm{T}\mathrm{A}},{\mathrm{h}\mathrm{d}}_{\mathrm{T}\mathrm{A}}\right) $$ {x^\prime}_{\mathrm{T}\mathrm{A}}={\theta }_{\mathrm{T}\mathrm{A}} \oplus H\big({\mathrm{c}\mathrm{h}\mathrm{a}}_{\mathrm{T}\mathrm{A}}\big|\big|{y}_{\mathrm{T}\mathrm{A}}\big|\big|{{K}^{\prime}}_{\mathrm{T}\mathrm{A}}\big|\big| {\mathrm{h}\mathrm{d}}_{\mathrm{T}\mathrm{A}}\big) $。然后,TA检查$ H^\prime\left({x}_{\mathrm{T}\mathrm{A}}\right|\left|{\theta }_{\mathrm{T}\mathrm{A}}\right)={\mathrm{c}\mathrm{h}\mathrm{e}}_{\mathrm{T}\mathrm{A}} $以确定$ {x}_{\mathrm{T}\mathrm{A}}= {x^\prime}_{\mathrm{T}\mathrm{A}} $。如果验证成功,TA选择$ {\beta }_{\mathrm{T}\mathrm{A}}\in {Z}_{q}^{*} $并计算$ {B}_{\mathrm{T}\mathrm{A}}={\beta }_{\mathrm{T}\mathrm{A}}{y}_{\mathrm{T}\mathrm{A}} $$ {K}_{\mathrm{T}\mathrm{A}}={{x}_{\mathrm{T}\mathrm{A}}\beta }_{\mathrm{T}\mathrm{A}}{A}_{V} $$ {K}_{\mathrm{V}\mathrm{S}}=H\left({K}_{\mathrm{t}\mathrm{v}}\left|\left|{\mathrm{I}\mathrm{D}}_{V}\right|\right|{\mathrm{s}\mathrm{e}\mathrm{q}}_{0}\right) $以及车辆V的假名$ {\mathrm{P}\mathrm{I}\mathrm{D}}_{V}=H\left({K}_{\mathrm{t}\mathrm{v}}\right|\left|{\mathrm{s}\mathrm{e}\mathrm{q}}_{1}\right)\oplus{\mathrm{I}\mathrm{D}}_{V} $。最后,TA向车辆V发送$ \{{B}_{\mathrm{T}\mathrm{A}},{\mathrm{s}\mathrm{e}\mathrm{q}}_{0},{\mathrm{s}\mathrm{e}\mathrm{q}}_{1},{T}_{\mathrm{e}\mathrm{x}}\} $,并利用$ {\mathrm{P}\mathrm{U}\mathrm{F}}_{\mathrm{T}\mathrm{A}}\left(\mathrm{*}\right) $$ {\mathrm{F}\mathrm{Z}.\mathrm{G}\mathrm{e}\mathrm{n}}_{\mathrm{T}\mathrm{A}}\left(\mathrm{*}\right) $存储$ \{{\mathrm{I}\mathrm{D}}_{V},{\mathrm{P}\mathrm{I}\mathrm{D}}_{V},{K}_{\mathrm{V}\mathrm{S}}\} $,其中$ {T}_{\mathrm{e}\mathrm{x}} $$ {\mathrm{P}\mathrm{I}\mathrm{D}}_{V} $的有效期。
(3)车辆V在接收到TA的信息后,通过$ {\mathrm{P}\mathrm{U}\mathrm{F}}_{V}\left(\mathrm{*}\right) $$ {\mathrm{F}\mathrm{Z}.\mathrm{R}\mathrm{e}\mathrm{p}}_{V}\left(\mathrm{*}\right) $提取其私钥$ {x}_{V} $,这与TA私钥的提取方法类似。首先,车辆V计算$ {K}_{\mathrm{v}\mathrm{t}}={x}_{V}{\propto }_{V}{B}_{\mathrm{T}\mathrm{A}} $, $ {K}_{\mathrm{V}\mathrm{S}}= H\left({K}_{\mathrm{v}\mathrm{t}}\left|\left|{\mathrm{I}\mathrm{D}}_{V}\right|\right|{\mathrm{s}\mathrm{e}\mathrm{q}}_{0}\right) $$ {\mathrm{P}\mathrm{I}\mathrm{D}}_{V}=H\big({K}_{\mathrm{v}\mathrm{t}}\big|\big|{\mathrm{s}\mathrm{e}\mathrm{q}}_{1}\big)\oplus{\mathrm{I}\mathrm{D}}_{V} $。然后,车辆V使用$ {\mathrm{P}\mathrm{U}\mathrm{F}}_{V}\left(\mathrm{*}\right) $$ {\mathrm{F}\mathrm{Z}.\mathrm{G}\mathrm{e}\mathrm{n}}_{V}\left(\mathrm{*}\right) $加密并存储$ {K}_{\mathrm{V}\mathrm{S}} $,以抵御物理捕获攻击。最后,车辆V存储$ \{{\mathrm{P}\mathrm{I}\mathrm{D}}_{V},{T}_{\mathrm{e}\mathrm{x}}\} $

3.2.2 认证准备

在此阶段,车辆V和TA准备相关的认证信息并将信息同步到目标RSUs。如3.1中假设,车辆和TA已确定车辆的路径Path[24,25]
(1)TA确定Path中涉及的各个RSUs的身份IDRSUs,并通过$ {\mathrm{P}\mathrm{U}\mathrm{F}}_{\mathrm{T}\mathrm{A}}\left(\mathrm{*}\right) $$ {\mathrm{F}\mathrm{Z}.\mathrm{R}\mathrm{e}\mathrm{p}}_{\mathrm{T}\mathrm{A}}\left(\mathrm{*}\right) $提取$ \{{\mathrm{I}\mathrm{D}}_{V},{\mathrm{P}\mathrm{I}\mathrm{D}}_{V}, {K}_{\mathrm{V}\mathrm{S}}\} $,计算$ \left(\mathrm{I}\mathrm{K},\mathrm{C}\mathrm{K}\right)=H\left({K}_{\mathrm{V}\mathrm{S}}\left|\left|{\mathrm{P}\mathrm{I}\mathrm{D}}_{V}\right|\right|{\mathrm{I}\mathrm{D}}_{\mathrm{R}\mathrm{S}\mathrm{U}}\right) $,其中$ \left|\mathrm{I}\mathrm{K}\right|=\left|\mathrm{C}\mathrm{K}\right| $。最后,TA向各RSUs发送认证信息$ \{\mathrm{P}{\mathrm{I}\mathrm{D}}_{V}, \mathrm{I}\mathrm{K},\mathrm{C}\mathrm{K},{T}_{\mathrm{e}\mathrm{x}}\} $
(2)在接收到TA发送的信息后,各个RSUs采用$ {\mathrm{P}\mathrm{U}\mathrm{F}}_{\mathrm{R}\mathrm{S}\mathrm{U}}\left(\mathrm{*}\right) $$ {\mathrm{F}\mathrm{Z}.\mathrm{G}\mathrm{e}\mathrm{n}}_{\mathrm{R}\mathrm{S}\mathrm{U}}\left(\mathrm{*}\right) $加密和存储$ \left(\mathrm{I}\mathrm{K},\mathrm{C}\mathrm{K}\right) $。此外,各个RSUs存储$ \{\mathrm{P}{\mathrm{I}\mathrm{D}}_{V},{T}_{\mathrm{e}\mathrm{x}}\} $。注意,$ \{\mathrm{P}{\mathrm{I}\mathrm{D}}_{V},{T}_{\mathrm{e}\mathrm{x}}\} $$ \left(\mathrm{I}\mathrm{K},\mathrm{C}\mathrm{K}\right) $的密文存储在一起。

3.2.3 相互认证和密钥协商

RSUs可以定期向车辆V广播自己的身份$ {\mathrm{I}\mathrm{D}}_{\mathrm{R}\mathrm{S}\mathrm{U}{\mathrm{s}}} $。因此,当车辆V驶入RSUs覆盖区域时,可以根据接收到的$ {\mathrm{I}\mathrm{D}}_{\mathrm{R}\mathrm{S}\mathrm{U}{\mathrm{s}}} $与RSUs进行相互AKA,进行安全通信。如图3所示,车辆V和RSUs通过以下过程实现相互AKA:
图 3 相互认证和密钥协商

Fig.3 Mutual authentication and key negotiation

(1)车辆V选择一个随机数$ {N}_{1}\in {Z}_{q}^{*} $,通过$ {\mathrm{P}\mathrm{U}\mathrm{F}}_{V}\left(\mathrm{*}\right) $$ {\mathrm{F}\mathrm{Z}.\mathrm{R}\mathrm{e}\mathrm{p}}_{V}\left(\mathrm{*}\right) $提取K_{VS}。然后,车辆V计算
$ \left(\mathrm{I}\mathrm{K},\mathrm{C}\mathrm{K}\right)=H{(K}_{\mathrm{V}\mathrm{S}}\left|\left|{\mathrm{P}\mathrm{I}\mathrm{D}}_{V}\right|\right|{\mathrm{I}\mathrm{D}}_{\mathrm{R}\mathrm{S}\mathrm{U}}) $
$ {E}_{V}={\mathrm{E}\mathrm{n}\mathrm{c}}_{\mathrm{C}\mathrm{K}}\left({N}_{1}\right) $
$ {M}_{1}={\mathrm{H}\mathrm{M}\mathrm{A}\mathrm{C}}_{\mathrm{I}\mathrm{K}}\left({\mathrm{P}\mathrm{I}\mathrm{D}}_{V}\right|\left|{\mathrm{I}\mathrm{D}}_{\mathrm{R}\mathrm{S}\mathrm{U}}\right|\left|{N}_{1}\right|\left|{T}_{1}\right) $
其中T1是一个时间戳。车辆V发送$ {\mathrm{R}\mathrm{E}\mathrm{Q}}_{V}= \{\mathrm{P}{\mathrm{I}\mathrm{D}}_{V}, {E}_{V},{M}_{1},{T}_{1}\} $给RSUs。
(2)在接收到$ {\mathrm{R}\mathrm{E}\mathrm{Q}}_{V} $后,RSUs验证$ {T}_{1} $的新鲜性并在本地搜索$ {\mathrm{P}\mathrm{I}\mathrm{D}}_{V} $,得到$ \{{\mathrm{P}\mathrm{I}\mathrm{D}}_{V},{T}_{\mathrm{e}\mathrm{x}}\} $$ \left(\mathrm{I}\mathrm{K},\mathrm{C}\mathrm{K}\right) $的密文。如果$ {T}_{1} \leqslant {T}_{\mathrm{e}\mathrm{x}} $,RSUs通过$ {\mathrm{P}\mathrm{U}\mathrm{F}}_{\mathrm{R}\mathrm{S}\mathrm{U}{\mathrm{s}}}\left(\mathrm{*}\right) $$ {\mathrm{F}\mathrm{Z}.\mathrm{R}\mathrm{e}\mathrm{p}}_{\mathrm{R}\mathrm{S}\mathrm{U}{\mathrm{s}}}\left(\mathrm{*}\right) $从它们的密文中提取$ \left(\mathrm{I}\mathrm{K},\mathrm{C}\mathrm{K}\right) $。然后,RSUs采用$ \mathrm{C}\mathrm{K} $$ {E}_{V} $进行解密,得到$ {N}_{1} $,并使用$ \mathrm{I}\mathrm{K} $$ {M}_{1} $进行校验。如果验证成立,RSUs选择一个随机数$ {N}_{2}\in {Z}_{q}^{*} $,并计算
$ {K}_{\mathrm{R}\mathrm{V}}=H(\mathrm{I}\mathrm{K}\oplus\mathrm{C}\mathrm{K}|\left|{\mathrm{P}\mathrm{I}\mathrm{D}}_{V}\right|\left|{N}_{1}\right|\left|{N}_{2}\right) $
$ {E}_{\mathrm{R}\mathrm{S}\mathrm{U}{\mathrm{s}}}={\mathrm{E}\mathrm{n}\mathrm{c}}_{\mathrm{C}\mathrm{K}}({N}_{1}+1|\left|{N}_{2}\right) $
$ {M}_{2}={\mathrm{H}\mathrm{M}\mathrm{A}\mathrm{C}}_{\mathrm{I}\mathrm{K}}\left({\mathrm{P}\mathrm{I}\mathrm{D}}_{V}\right||{{\mathrm{I}\mathrm{D}}_{\mathrm{R}\mathrm{S}\mathrm{U}{\mathrm{s}}}\left|\right|N}_{1}+1|\left|{N}_{2}\right|\left|{T}_{2}\right) $
其中$ {T}_{2} $是一个时间戳。最后,RSUs向TA发送$ {\mathrm{R}\mathrm{E}\mathrm{P}}_{\mathrm{R}\mathrm{S}\mathrm{U}{\mathrm{s}}}=\{{\mathrm{I}\mathrm{D}}_{\mathrm{R}\mathrm{S}\mathrm{U}{\mathrm{s}}},{{E}}_{\mathrm{R}\mathrm{S}\mathrm{U}{\mathrm{s}}},{M}_{2},{T}_{2}\} $
(3)在接收到RSUs发来的信息后,车辆V检查$ {T}_{2} $并使用$ \mathrm{C}\mathrm{K} $解密$ {E}_{\mathrm{R}\mathrm{S}\mathrm{U}{\mathrm{s}}} $以获得$ {N}_{1}+1 $$ {N}_{2} $。然后, 车辆V检查$ {N}_{1}+1 $$ {M}_{2} $。如果所有信息验证成功,车辆V计算会话密钥$ {K}_{\mathrm{V}\mathrm{R}}=H(\mathrm{I}\mathrm{K}\oplus\mathrm{C}\mathrm{K}|\left|{\mathrm{P}\mathrm{I}\mathrm{D}}_{V}\right|\left|{N}_{1}\right|\left|{N}_{2}\right)={K}_{\mathrm{R}\mathrm{V}} $

3.2.4 假名更新

车辆与RSUs进行认证时,如果发现假名即将到期,车辆需要向TA请求新的假名。TA为车辆生成新的假名,并将其发送给车辆。当车辆收到新的假名后,存储新的假名并删除旧的假名。具体来说,车辆V向TA发送假名更新请求,包含车辆的当前假名和认证信息。TA验证车辆V的身份后,为车辆V生成新的假名,并将新的假名和有效期发送给车辆V。车辆V收到新的假名$ {\mathrm{P}\mathrm{I}\mathrm{D}^\prime} _{V} $后,更新本地存储的假名信息,并通知RSUs新的假名。
需要注意的是,车辆V和TA决定的期望路径可能因现实驾驶情况而变化,如交通拥堵导致之前决定的期望路径不可达。针对这种问题,首先,车辆需要向TA发起重新路径规划的请求,并获得相应路径;随后,车辆与TA执行类似车辆注册的过程,生成假名;最后,TA执行认证准备,将车辆的认证信息同步到新路径中的RSUs。因此,现实变化的驾驶情况不会影响方案的可用性。

4 分析与性能评估

此部分析了本方案的特性,并通过仿真评估了本方案的性能。

4.1 性能分析

从正式安全和非正式安全两个方面讨论了本方案的安全性。

4.1.1 形式化安全分析

基于BAN逻辑形式化分析了本方案的安全性。BAN逻辑是一种基于知识和信任的逻辑分析形式,由Burrows、Abadi和Needham提出[26]。它可根据认证的具体情况制定合理的假设,并利用逻辑规则推导出关于理想化协议和假设的结论,判断协议是否能够实现其预期目标。如果在协议结束时能够对共享的会话密钥、参与者身份等因素建立信任,则协议可以被认为是安全的。BAN逻辑的符号和规则如表3表4所示。
表 3 BAN逻辑符号

Table 3 Notations of BAN-logic

符号 描述
$ P|\equiv X $ 实体P相信公式X
$ P\lhd X $ P接收到包含X的信息
$ P|\sim X $ P曾经发送过包含X的信息
$ P|\Rightarrow X $ PX有管辖权
$ \#\left(X\right) $ X是新鲜的
$ \{{X\}}_{K} $ 密钥K加密X后的密文
$ \stackrel{K}{\mapsto} P $ KP的公开密钥
$ P\stackrel{K}{\leftrightarrow }Q $ PQ共享私密密钥K
表 4 BAN逻辑规则

Table 4 Rules of BAN-logic

规则 含义
$ \dfrac{P|\equiv \#\left(X\right)}{P|\equiv \#(X,Y)} $ 新鲜性规则
$ \dfrac{P|\equiv \#\left(X\right),P|\equiv Q|~X}{P|\equiv Q|\equiv X} $ 临时值验证规则
$ \dfrac{P|\equiv X,P|\equiv Y}{P|\equiv (X,Y)} $ 组合规则
$ \dfrac{P|\equiv Q|\equiv (X,Y)}{P|\equiv Q|\equiv X},\dfrac{P|\equiv (X,Y)}{P|\equiv X} $ 分解规则
$ \dfrac{P|\equiv Q|\Rightarrow X,P|\equiv Q|\equiv X}{P|\equiv X} $ 仲裁规则
$ \dfrac{P|\equiv P\stackrel{K}{\leftrightarrow }Q,P\lhd\{{X\}}_{K}}{P\left|\equiv Q\right|~X} $ 信息含义规则
在BAN逻辑中,最终目标是每个实体(即车辆V和RSU)必须相信会话密钥K,并且相信另一个实体相信K。根据文献[27]和[28],需要证明本方案所描述的目标。
目标1:$ V|\equiv V\stackrel{K}{\leftrightarrow }\mathrm{R}\mathrm{S}\mathrm{U} $
目标2:$ \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\equiv V\stackrel{K}{\leftrightarrow }\mathrm{R}\mathrm{S}\mathrm{U} $
目标3:$ V|\equiv \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\equiv V\stackrel{K}{\leftrightarrow }\mathrm{R}\mathrm{S}\mathrm{U} $
目标4:$ \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\equiv V|\equiv V\stackrel{K}{\leftrightarrow }\mathrm{R}\mathrm{S}\mathrm{U} $
根据本方案的描述,提出如下假设。
假设1:$ V|\equiv \#({N}_{1}) $
假设2:$ \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\equiv \#({N}_{2}) $
假设3:$ V|\equiv \{V\stackrel{\mathrm{C}\mathrm{K}}{\leftrightarrow }\mathrm{R}\mathrm{S}\mathrm{U},V\stackrel{\mathrm{I}\mathrm{K}}{\leftrightarrow }\mathrm{R}\mathrm{S}\mathrm{U}\} $
假设4:$ \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\equiv \{V\stackrel{\mathrm{C}\mathrm{K}}{\leftrightarrow }\mathrm{R}\mathrm{S}\mathrm{U},V\stackrel{\mathrm{I}\mathrm{K}}{\leftrightarrow }\mathrm{R}\mathrm{S}\mathrm{U}\} $
假设5:$ V|\equiv \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\equiv \{V\stackrel{\mathrm{C}\mathrm{K}}{\leftrightarrow }\mathrm{R}\mathrm{S}\mathrm{U},V\stackrel{\mathrm{I}\mathrm{K}}{\leftrightarrow }\mathrm{R}\mathrm{S}\mathrm{U}\} $
假设6:$ \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\equiv V|\equiv \{V\stackrel{\mathrm{C}\mathrm{K}}{\leftrightarrow }\mathrm{R}\mathrm{S}\mathrm{U},V\stackrel{\mathrm{I}\mathrm{K}}{\leftrightarrow }\mathrm{R}\mathrm{S}\mathrm{U}\} $
假设7:$ V|\equiv \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\Rightarrow {\mathrm{R}\mathrm{E}\mathrm{P}}_{\mathrm{R}\mathrm{S}\mathrm{U}} $
假设8:$ \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\equiv V|\Rightarrow {\mathrm{R}\mathrm{E}\mathrm{Q}}_{V} $
然后,对本方案进行分析。
定理1 本方案可以安全地实现车辆V与RSU之间的相互AKA。
证明 首先,描述在相互AKA期间车辆V与RSU之间传输的信息。然后,根据BAN逻辑规则和假设证明本方案实现了安全目标。具体内容如下。
M1: $ V\to \mathrm{R}\mathrm{S}\mathrm{U} $: $ {\mathrm{R}\mathrm{E}\mathrm{Q}}_{V}=\{{\mathrm{P}\mathrm{I}\mathrm{D}}_{V},{\left\{{N}_{1}\right\}}_{\mathrm{C}\mathrm{K}},{M}_{1},{T}_{1}\} $
M2: $ \text{RSU →}V $: $ {\mathrm{R}\mathrm{E}\mathrm{P}}_{\mathrm{R}\mathrm{S}\mathrm{U}}=\{{\mathrm{I}\mathrm{D}}_{\mathrm{R}\mathrm{S}\mathrm{U}},{\left\{{N}_{1}+1, {N}_{2}\right\}}_{\mathrm{C}\mathrm{K}}, {M}_{2}, {T}_{2}\} $
根据M1,可以得到
步骤1: $ \mathrm{R}\mathrm{S}\mathrm{U}{\lhd\mathrm{R}\mathrm{E}\mathrm{Q}}_{V} $
在本方案中,RSU验证T1的新鲜性并在本地搜索$ {\mathrm{P}\mathrm{I}\mathrm{D}}_{V} $。如果$ {\mathrm{P}\mathrm{I}\mathrm{D}}_{V} $存在,根据步骤1和假设8,可以推导出
步骤2:$ \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\equiv V|~{\mathrm{R}\mathrm{E}\mathrm{Q}}_{V} $
根据假设1和新鲜性规则,可以推导出
步骤3:$ \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\equiv \#({\mathrm{R}\mathrm{E}\mathrm{Q}}_{V}) $
根据步骤2、步骤3和临时值验证规则,可以推导出
步骤4:$ \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\equiv V|\equiv {\mathrm{R}\mathrm{E}\mathrm{Q}}_{V} $
根据步骤4和分解规则,可以推导出
步骤5:$ \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\equiv V|\equiv {\mathrm{P}\mathrm{I}\mathrm{D}}_{V} $
根据假设4、步骤1和信息含义规则,可以推导出
步骤6:$ \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\equiv V|\sim{N}_{1} $
根据步骤3、步骤6和临时值验证规则,可以推导出
步骤7:$ \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\equiv V|\equiv {N}_{1} $
在本方案中,RSU选择一个随机数$ {N}_{2}\in {Z}_{q}^{*} $,并计算会话密钥$ K={K}_{\mathrm{R}\mathrm{V}}=H\left(\mathrm{I}\mathrm{K}\oplus\mathrm{C}\mathrm{K}\right|\left|{\mathrm{P}\mathrm{I}\mathrm{D}}_{V}\right|\left|{N}_{1}\right|\left|{N}_{2}\right) $。根据假设6、步骤5、步骤7和组合规则,可以推导出
步骤8:$ \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\equiv V|\equiv V\stackrel{K}{\leftrightarrow }\mathrm{R}\mathrm{S}\mathrm{U} $ (目标4)
根据假设8、步骤4和仲裁规则,可以推导出
步骤9:$ \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\equiv {\mathrm{R}\mathrm{E}\mathrm{Q}}_{V} $
根据分解规则,可以推导出
步骤10:$ \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\equiv {\mathrm{P}\mathrm{I}\mathrm{D}}_{V} $
根据假设8、步骤7和仲裁规则,可以推导出
步骤11:$ \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\equiv {N}_{1} $
注意,$ K={K}_{\mathrm{R}\mathrm{V}}=H\left(\mathrm{I}\mathrm{K}\oplus\mathrm{C}\mathrm{K}\right|\left|{\mathrm{P}\mathrm{I}\mathrm{D}}_{V}\right|\left|{N}_{1}\right|\left|{N}_{2}\right) $。根据假设4、步骤10、步骤11和组成规则,可以推导出
步骤12:$ \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\equiv V\stackrel{K}{\leftrightarrow }\mathrm{R}\mathrm{S}\mathrm{U} $ (目标2)
根据$ {\mathrm{M}}_{2} $,可以得到
步骤13:$ V{\lhd\mathrm{R}\mathrm{E}\mathrm{P}}_{\mathrm{R}\mathrm{S}\mathrm{U}} $
V验证T2的新鲜性抵御重放攻击。根据假设7和步骤13,得到
步骤14:$ V|\equiv \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\sim{\mathrm{R}\mathrm{E}\mathrm{P}}_{\mathrm{R}\mathrm{S}\mathrm{U}} $
根据假设2和新鲜性规则,可以推导出
步骤15:$ V|\equiv \#\left({\mathrm{R}\mathrm{E}\mathrm{P}}_{\mathrm{R}\mathrm{S}\mathrm{U}}\right) $
根据步骤14、步骤15和临时值验证规则,可以推导出
步骤16:$ V|\equiv \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\equiv {\mathrm{R}\mathrm{E}\mathrm{P}}_{\mathrm{R}\mathrm{S}\mathrm{U}} $
根据假设3、步骤13和信息含义规则,可以推导出
步骤17:$ V|\equiv \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\sim\{{N}_{1},{N}_{2}\} $
根据步骤15、步骤17和临时值验证规则,可以推导出
步骤18:$ V|\equiv \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\equiv \{{N}_{1},{N}_{2}\} $
注意,$ K={K}_{\mathrm{V}\mathrm{R}}=H\left(\mathrm{I}\mathrm{K}\oplus\mathrm{C}\mathrm{K}\right|\left|{\mathrm{P}\mathrm{I}\mathrm{D}}_{V}\right|\left|{N}_{1}\right|\left|{N}_{2}\right) $。根据假设5、步骤18和组成规则,可以推导出
步骤19:$ V|\equiv \mathrm{R}\mathrm{S}\mathrm{U}\mathrm{ }|\equiv V\stackrel{K}{\leftrightarrow }\mathrm{R}\mathrm{S}\mathrm{U} $ (目标3)
根据假设7、步骤18和仲裁规则,可以推导出
步骤20:$ V|\equiv \{{N}_{1},{N}_{2}\} $
注意,$ K={K}_{\mathrm{V}\mathrm{R}}={K}_{\mathrm{R}\mathrm{V}} $。根据步骤20和组成规则,得到
步骤21:$ V|\equiv V\stackrel{K}{\leftrightarrow }\mathrm{R}\mathrm{S}\mathrm{U} $ (目标1)
基于上述分析,本方案实现了4个目标,表明车辆V和RSU相信共享的会话密钥是可信的,并且相信彼此是合法的。

4.1.2 非形式化安全性分析

此部分给出了非正式证明,来展示本方案的安全保证。
(1)相互认证和密钥协议
RSUs和车辆V可以互相检查对方的合法性并共享会话密钥$ K={K}_{\mathrm{V}\mathrm{R}}={K}_{\mathrm{R}\mathrm{V}} $。为了检查车辆V的合法性,RSUs可以在本地搜索车辆V的假名并提取相应的$ \left(\mathrm{I}\mathrm{K},\mathrm{C}\mathrm{K}\right) $。然后,它可以通过使用$ \left(\mathrm{I}\mathrm{K},\mathrm{C}\mathrm{K}\right) $解密$ {E}_{V} $和验证$ {M}_{1} $去检查车辆V的合法性。同样,为了检查RSUs的合法性,车辆V具备计算正确的$ \left(\mathrm{I}\mathrm{K},\mathrm{C}\mathrm{K}\right) $、解密$ {E}_{\mathrm{R}\mathrm{S}\mathrm{U}{\mathrm{s}}} $和验证$ {M}_{2} $的能力。在密钥协议方面,车辆V和RSUs可以共享公共参数$ \left(\mathrm{I}\mathrm{K},\mathrm{C}\mathrm{K}\right) $,因此它们可以在AKA过程中共享相同的$ \{{N}_{1},{N}_{2}\} $,并计算相同的会话密钥$ K={K}_{\mathrm{V}\mathrm{R}}=H\left(\mathrm{I}\mathrm{K}\oplus\mathrm{C}\mathrm{K} \right| \left|{\mathrm{P}\mathrm{I}\mathrm{D}}_{V}\right|\left|{N}_{1}\right|\left|{N}_{2}\right)={K}_{\mathrm{R}\mathrm{V}} $
(2)匿名性
在本方案中,车辆V使用假名$ {\mathrm{P}\mathrm{I}\mathrm{D}}_{V} $代替真实身份$ {\mathrm{I}\mathrm{D}}_{V} $与RSUs进行相互AKA,从而保证了车辆V的身份隐私。
(3)条件隐私
除了车辆V和TA,没有人可以根据车辆V的假名$ {\mathrm{P}\mathrm{I}\mathrm{D}}_{V} $推断出车辆V的真实身份。然而,当检测到车辆V使用$ {\mathrm{P}\mathrm{I}\mathrm{D}}_{V} $进行恶意行为时,TA可以根据$ {\mathrm{P}\mathrm{I}\mathrm{D}}_{V} $在本地搜索$ {\mathrm{I}\mathrm{D}}_{V} $,从而揭示车辆V的真实身份。
(4)免密钥托管
在车辆注册中,本方案允许车辆V自行选择私钥。因此,支持免密钥托管。
(5)物理安全性
在本方案中,攻击者可以物理攻击实体(即TA、车辆和RSUs)以获取机密数据。例如,攻击者企图通过物理捕获攻击获得车辆V$ {K}_{\mathrm{V}\mathrm{S}} $,目的是推导出$ \left(\mathrm{I}\mathrm{K},\mathrm{C}\mathrm{K}\right)=H\left({\mathrm{K}}_{\mathrm{V}\mathrm{S}}\left|\left|{\mathrm{P}\mathrm{I}\mathrm{D}}_{V}\right|\right|{\mathrm{I}\mathrm{D}}_{\mathrm{R}\mathrm{S}\mathrm{U}}\right) $并计算车辆V和RSUs之间的会话密钥$ {K}_{\mathrm{R}\mathrm{V}}=H\left(\mathrm{I}\mathrm{K}\oplus\mathrm{C}\mathrm{K}\right|\left|{\mathrm{P}\mathrm{I}\mathrm{D}}_{V}\right|\left|{N}_{1}\right|\left|{N}_{2}\right)={K}_{\mathrm{V}\mathrm{R}} $。因此,车辆V采用PUF和模糊提取器保护$ {K}_{\mathrm{V}\mathrm{S}} $。具体来说,首先,车辆V选择一个$ {\mathrm{c}\mathrm{h}\mathrm{a}}_{V} $并计算$ {\mathrm{R}\mathrm{e}\mathrm{s}}_{V}= {\mathrm{P}\mathrm{U}\mathrm{F}}_{V}\left({\mathrm{c}\mathrm{h}\mathrm{a}}_{V}\right) $$ \left({{K}_{V},\mathrm{h}\mathrm{d}}_{V}\right)= {\mathrm{F}\mathrm{E}.\mathrm{G}\mathrm{e}\mathrm{n}}_{V}\left({\mathrm{R}\mathrm{e}\mathrm{s}}_{V}\right) $。然后,为了保护数据完整性,车辆V计算$ {\theta }_{V}=H\left({K}_{V}\left|\left|{\mathrm{I}\mathrm{D}}_{V}\right|\right| {\mathrm{P}\mathrm{I}\mathrm{D}}_{V}\left|\left|{\mathrm{c}\mathrm{h}\mathrm{a}}_{V}\right|\right|{\mathrm{h}\mathrm{d}}_{V}\right)\oplus{K}_{\mathrm{V}\mathrm{S}} $以保护$ {K}_{\mathrm{V}\mathrm{S}} $$ {\mathrm{c}\mathrm{h}\mathrm{e}}_{V}=H\left({K}_{\mathrm{V}\mathrm{S}}\right|\left|{\theta }_{V}\right) $。在AKA期间,车辆V使用PUF和模糊提取算法提取$ {K}_{\mathrm{V}\mathrm{S}} $。具体来说,车辆V根据$ {\mathrm{c}\mathrm{h}\mathrm{a}}_{V}{\text{和}}{\mathrm{K}^\prime}_{V}= {\mathrm{F}\mathrm{E}.\mathrm{R}\mathrm{e}\mathrm{p}}_{V} \left({\mathrm{R}\mathrm{e}{\mathrm{s}}^{\prime}}_{V},{\mathrm{h}\mathrm{d}}_{V}\right) $计算$ {\mathrm{R}\mathrm{e}\mathrm{s}^\prime}_{V}={\mathrm{P}\mathrm{U}\mathrm{F}}_{V}\left({\mathrm{c}\mathrm{h}\mathrm{a}}_{V}\right) $${K^\prime}_{VS}= \theta _{V}\oplus H \left({{K}^\prime}_{V}\left|\left|{\mathrm{I}\mathrm{D}}_{V}\right|\right|{\mathrm{P}\mathrm{I}\mathrm{D}}_{V}\left|\left|{\mathrm{c}\mathrm{h}\mathrm{a}}_{V}\right|\right|{\mathrm{h}\mathrm{d}}_{V}\right) $。为了保证数据安全性,检查提取的$ {K{'}}_{\mathrm{V}\mathrm{S}} $是否满足$ H\left({{K}^{\prime}}_{\mathrm{V}\mathrm{S}}||{\theta }_{V}\right)= {\mathrm{c}\mathrm{h}\mathrm{e}}_{V} $。值得注意的是,车辆V嵌入了PUF。由于PUF不可克隆的特性[29],当车辆受到物理攻击时,其PUF输出不一致的值。这意味着被妥协的车辆V无法获得预期的参数$ {\mathrm{R}\mathrm{e}\mathrm{s}^\prime}_{V} $,因此无法获得$ {K}_{\mathrm{V}\mathrm{S}} $。另外,车辆V中嵌入的PUF不能被攻击者重构。因此,本方案具有物理安全性。
(6)抵御冒充攻击
本方案可以抵御攻击者在相互AKA期间冒充TA或合法车辆V和RSUs欺骗他人。一方面,如果一个攻击者企图冒充一个合法车辆V,它应该计算$ \left(\mathrm{I}\mathrm{K},\mathrm{C}\mathrm{K}\right)=H\left({K}_{\mathrm{V}\mathrm{S}}\left|\left|{\mathrm{I}\mathrm{D}}_{\mathrm{R}\mathrm{S}\mathrm{U}}\right|\right|{\mathrm{P}\mathrm{I}\mathrm{D}}_{V}\right) $。但是,车辆V会使用PUF和模糊提取器来保护$ {K}_{\mathrm{V}\mathrm{S}} $,攻击者会由于PUF的安全特性而无法捕获$ {K}_{\mathrm{V}\mathrm{S}} $。因此,攻击者不能冒充合法车辆V。另一方面,当攻击者想要冒充RSUs,它应该具有获得$ \left(\mathrm{I}\mathrm{K},\mathrm{C}\mathrm{K}\right) $的能力。同样,$ \left(\mathrm{I}\mathrm{K},\mathrm{C}\mathrm{K}\right) $通过PUF和模糊提取器被RSUs保护。攻击者无法捕获$ \left(\mathrm{I}\mathrm{K},\mathrm{C}\mathrm{K}\right) $。因此,攻击者不能冒充合法RSUs。同时,根据上述分析,攻击者无法通过获取TA的私钥来冒充TA。因此,本方案可以抵御冒充攻击。
(7)抵御重放攻击
本方案在车辆V和RSUs相互AKA时传输的报文中使用时间戳{$ {T}_{1},{T}_{2} $}。如果攻击者企图拦截车辆V和 RSUs之间传输的信息以发起重放攻击,车辆V或RSUs可以通过验证信息中涉及的时间戳来检查信息的新鲜性。因此,本方案可以抵御重放攻击。
(8)抵御中间人攻击
中间人攻击允许攻击者把自己放置在车辆V和RSUs通信之间,并与车辆V和RSUs分别建立独立的连接,使他们认为在直接与对方通信。但是,本方案要求车辆V和RSUs 验证彼此的合法性。如果攻击者想要成功地发起中间人攻击,它必须具有模拟合法车辆V和RSUs的能力,这与前面的模拟攻击抵抗分析相矛盾。因此,本方案可以抵御中间人攻击。
(9)抵御已知会话密钥攻击
在本方案中,车辆V和RSUs协商一个会话密钥$ K={K}_{\mathrm{R}\mathrm{V}}=H\left(\mathrm{I}\mathrm{K}\oplus\mathrm{C}\mathrm{K}\right|\left|{\mathrm{P}\mathrm{I}\mathrm{D}}_{V}\right|\left|{N}_{1}\right|\left|{N}_{2}\right)={K}_{\mathrm{V}\mathrm{R}} $,其中$ {N}_{1} $$ {N}_{2} $是随机数,$ \left(\mathrm{I}\mathrm{K},\mathrm{C}\mathrm{K}\right)=H\left({K}_{\mathrm{V}\mathrm{S}}\left|\left|{\mathrm{I}\mathrm{D}}_{\mathrm{R}\mathrm{S}\mathrm{U}}\right|\right|{\mathrm{P}\mathrm{I}\mathrm{D}}_{V}\right) $。因此,如果攻击者可以破坏会话密钥$ K $,则无法推导出之前和后继的会话密钥。因为$ {N}_{1} $$ {N}_{2} $是随机选择的,$ {K}_{\mathrm{V}\mathrm{S}} $受到安全哈希函数不可逆性的保护,所以本方案可以支持前向和后向保密,并且可以抵抗已知会话密钥攻击。

4.2 性能评估

此部分通过仿真评估了本方案的性能,并将本方案与相关工作[7~91617]在计算和通信开销方面进行比较。
(1)计算开销
此部分比较了本方案和相关工作的计算开销。本文主要考虑的是车辆和RSUs之间相互AKA。为了更容易比较,模拟了原始的密码操作。利用Python中的pycryptodomex[30]、pyPUF[31]和python-fuzzy-extractor库[32],在配备Intel core i7-13700F CPU @2.10 GHz和16 GB RAM的主机上实现了模拟。特别是,pycryptodomex是加密原语的Python包,pyPUF是用于测试和攻击PUF的工具箱,python-fuzzy-extractor是模糊提取器的Python实现。表5显示了每个操作的执行时间。
表 5 密码操作的执行时间

Table 5 Execution time of cryptographic operations

描述符号执行时间(ms)
哈希操作$ {T}_{h} $0.001
PUF操作$ {T}_{\mathrm{p}\mathrm{u}\mathrm{f}} $0.324
模糊提取操作$ {T}_{\mathrm{f}\mathrm{e}} $0.229
椭圆曲线标量乘法$ {T}_{\mathrm{s}\mathrm{m}} $17.000
椭圆曲线点加法$ {T}_{\mathrm{p}\mathrm{a}} $0.051
对称加密/解密操作$ {T}_{\mathrm{s}\mathrm{y}\mathrm{m}} $0.265
HMAC操作$ {T}_{\mathrm{h}\mathrm{m}} $0.025
XOR操作$ {T}_{\mathrm{x}\mathrm{o}\mathrm{r}} $0.001
在本方案中,车辆执行1次PUF和模糊提取,2次XOR操作、4次哈希操作、2次HMAC操作和2次对称加/解密操作,因此车辆的计算开销为$ {T}_{\mathrm{p}\mathrm{u}\mathrm{f}}+{T}_{\mathrm{f}\mathrm{e}}+ \mathrm{ }2{T}_{\mathrm{x}\mathrm{o}\mathrm{r}}+\mathrm{ }4{T}_{h}+\mathrm{ }2{T}_{\mathrm{h}\mathrm{m}}+\mathrm{ }2{T}_{\mathrm{s}\mathrm{y}\mathrm{m}}=\mathrm{ }1.139\;\mathrm{ }\mathrm{m}\mathrm{s} $。RSUs执行2次PUF和模糊提取、3次XOR操作、5次哈希操作、2次HMAC操作和2次对称加/解密操作,因此,RSUs的计算开销为$ 2{T}_{\mathrm{p}\mathrm{u}\mathrm{f}}+2{T}_{\mathrm{f}\mathrm{e}}+\mathrm{ }3{T}_{\mathrm{x}\mathrm{o}\mathrm{r}}+ {5T}_{h}+ 2{T}_{\mathrm{h}\mathrm{m}}+ \mathrm{ }2{T}_{\mathrm{s}\mathrm{y}\mathrm{m}} = \mathrm{ }1.694 \mathrm{m}\mathrm{s} $。因此,本方案AKA的总计算开销为2.833 ms。类似地,其他相关方案AKA的计算开销也可以用同样的方法计算。 由表6图4(a)可以看出,本方案AKA的计算开销远低于文献[7~91617]的方案。图4(b)给出了AKA总计算开销与车辆数量的关系。当数量增加时,所有方案AKA的总计算开销线性增加, 但本方案保持较低的时间成本。
表 6 计算开销对比

Table 6 Comparison of computation overhead

方案 车辆V计算开销(ms) RSUs/TA计算开销(ms) 总计算开销(ms)
文献[7] Tfe+ 24Th+9Tsm+ 3Tpa=153.406 9Th+ 3Tsm+ 2Tpa=51.111 204.517
文献[8] 6Th+ 2Tsm=34.006 13Th+ Tsm=17.013 51.019
文献[9] 6Th=0.006 12Th+ 4Tsm+ Tpa=68.063 68.069
文献[16] 3Tpuf+ 8Th+ 5Tsm+ 4Tpa+Txor=86.185 3Tpuf+ 9Th+ 6Tsm+ Tpa+2Txor=103.034 189.219
文献[17] Tfe+ 5Th+ 5Tsm+ Tpa+2Txor=85.287 5Tsm+ 2Tpa+ 4Th+Tpuf+2Txor=85.432 170.719
本方案 Tpuf+ Tfe+ 4Th+ 2Thm+ 2Tsym+2Txor=1.139 2Tpuf+ 2Tfe+5Th+ 2Thm+ 2Tsym+3Txor=1.694 2.833
图 4 计算开销的对比

Fig.4 Comparison of the computation overhead

(2)通信开销
此部分结合文献[7~91617]相关工作 对本方案的通信开销进行分析。主要考虑的是车辆与RSUs之间相互AKA过程中涉及的通信开销。将假名、哈希函数、HMAC值和随机数的长度设置为$ {l}_{\mathrm{p}\mathrm{i}\mathrm{d}}={l}_{h}= {l}_{r}=160\;\mathrm{ }\mathrm{b}\mathrm{i}\mathrm{t}\mathrm{s} $,身份和时间戳的长度设置为$ {l}_{\mathrm{i}\mathrm{d}}= {l}_{\mathrm{t}\mathrm{s}}= 32\mathrm{ }\;\mathrm{b}\mathrm{i}\mathrm{t}\mathrm{s} $, ECC点的长度设置为$ {l}_{p}=320\mathrm{ }\;\mathrm{b}\mathrm{i}\mathrm{t}\mathrm{s} $,密文长度设置为$ {l}_{\mathrm{c}\mathrm{i}\mathrm{p}}=\mathrm{ }256\;\mathrm{ }\mathrm{b}\mathrm{i}\mathrm{t}\mathrm{s} $
在本方案中,车辆需要向RSUs发送$ {\mathrm{R}\mathrm{E}\mathrm{Q}}_{V}= \{\mathrm{P}{\mathrm{I}\mathrm{D}}_{V},{E}_{V},{M}_{1},{T}_{1}\} $,因此车辆的通信开销为$ {l}_{\mathrm{p}\mathrm{i}\mathrm{d}}+{l}_{\mathrm{c}\mathrm{i}\mathrm{p}}+ {l}_{\mathrm{t}\mathrm{s}}+{l}_{h}=76\;\mathrm{ }\mathrm{b}\mathrm{y}\mathrm{t}\mathrm{e}\mathrm{s} $。RSUs需要向车辆发送$ {\mathrm{R}\mathrm{E}\mathrm{P}}_{\mathrm{R}\mathrm{S}\mathrm{U}}= \{{\mathrm{I}\mathrm{D}}_{\mathrm{R}\mathrm{S}\mathrm{U}},{{E}}_{\mathrm{R}\mathrm{S}\mathrm{U}},{M}_{2},{T}_{2}\} $,因此RSUs的通信开销为$ {l}_{\mathrm{p}\mathrm{i}\mathrm{d}}+{l}_{\mathrm{c}\mathrm{i}\mathrm{p}}+ {l}_{\mathrm{t}\mathrm{s}}+{l}_{h}=60\;\mathrm{ }\mathrm{b}\mathrm{y}\mathrm{t}\mathrm{e}\mathrm{s} $。因此,本方案的AKA的总通信开销为136 bytes。同样,其他相关方案[7~91617]的通信开销也可以用同样的方法计算。表7给出了本方案和相关方案在AKA通信开销方面的比较。可以观察到,本方案的总通信开销比文献[781617]的方案要低得多,但略高于文献[9]的方案。然而,本方案可以保证文献[9]的方案所不支持的不可链接性、条件隐私性、免密钥托管和物理安全性。
表 7 通信开销对比

Table 7 Comparison of communication overhead

方案 车辆V通信开销(bytes) RSUs/TA通信开销(bytes) 总通信开销(bytes)
文献[7] $ {l}_{r}+4{l}_{h}+{l}_{p}+{l}_{\mathrm{t}\mathrm{s}}=144 $ $ {l}_{r}+5{l}_{h}+3{l}_{p}+4{l}_{\mathrm{t}\mathrm{s}}=256 $ 400
文献[8] $ {l}_{\mathrm{p}\mathrm{i}\mathrm{d}}+{l}_{p}+{l}_{\mathrm{t}\mathrm{s}}+{l}_{h}=84 $ $ {{l}_{\mathrm{i}\mathrm{d}}+l}_{\mathrm{p}\mathrm{i}\mathrm{d}}+4{l}_{\mathrm{t}\mathrm{s}}+{l}_{p}+5{l}_{h}+5{l}_{r}=280 $ 364
文献[9] $ {l}_{\mathrm{t}\mathrm{s}}+{3l}_{h}=64 $ $ {l}_{\mathrm{t}\mathrm{s}}+3{l}_{h}=64 $ 128
文献[16] $ {l}_{\mathrm{p}\mathrm{i}\mathrm{d}}+{l}_{p}+{l}_{\mathrm{t}\mathrm{s}}+{l}_{h}=84 $ $ {{l}_{\mathrm{i}\mathrm{d}}+l}_{p}+{l}_{h}+2{l}_{\mathrm{t}\mathrm{s}}=72 $ 156
文献[17] $ 2{l}_{p}+{l}_{r}+{l}_{h}+{l}_{\mathrm{t}\mathrm{s}}=124 $ $ {l}_{p}+2{l}_{h}+{l}_{\mathrm{t}\mathrm{s}}=84 $ 208
本方案 $ {l}_{\mathrm{p}\mathrm{i}\mathrm{d}}+{l}_{\mathrm{c}\mathrm{i}\mathrm{p}}+{l}_{\mathrm{t}\mathrm{s}}+{l}_{h}=76 $ $ {l}_{\mathrm{i}\mathrm{d}}+{l}_{\mathrm{c}\mathrm{i}\mathrm{p}}+{l}_{\mathrm{t}\mathrm{s}}+{l}_{h}=60 $ 136

5 结束语

本文提出了一种轻量级匿名AKA方案,该方案支持车辆与RSUs之间的轻量级匿名认证和密钥协议。通过提前将车辆的认证信息同步到目标RSUs,加快了认证速度。通过使用轻量级的密码操作,如哈希函数、异或和对称加密和解密,本方案具有较低的计算和通信开销。正式和非正式的安全性分析证明了本方案具有吸引人的优点。实验结果表明,本方案在减少开销和提高认证速度方面优于现有的AKA方案,这使得本方案成为VANETs中高效且可靠的AKA协议解决方案,满足了对高效认证的关键需求。
1
JAKUBIAK J,KOUCHERYAVY Y. State of the art and research challenges for VANETs[C]//Consumer Communications and Networking Conference. 2008:912-916.

2
ZEADALLY S, HUNT R, CHEN Y S, et al. Vehicular ad hoc networks (VANETS): status, results, and challenges[J]. Telecommunication Systems, 2012, 50, 217- 241.

DOI

3
CUNHA F, VILLAS L, BOUKERCHE A, et al. Data communication in VANETs: protocols, applications and challenges[J]. Ad Hoc Networks, 2016, 44, 90- 103.

DOI

4
HUBAUX J, CAPKUN S, LUO J. The security and privacy of smart vehicles[J]. IEEE Security & Privacy, 2004, 2 (3): 49- 55.

5
QU F, WU Z, WANG F, et al. A security and privacy review of VANETs[J]. IEEE Transactions on Intelligent Transportation Systems, 2015, 16 (6): 2985- 2996.

6
KUMAR V, MISHRA S, CHAND N. Applications of VANETs: present & future[J]. Communications and Network, 2013, 5 (1): 12- 15.

DOI

7
SUTRALA A K, OBAIDAT M S, SAHA S, et al. Authenticated key agreement scheme with user anonymity and untraceability for 5G-enabled softwarized industrial cyber-physical systems[J]. IEEE Transactions on Intelligent Transportation Systems, 2022, 23 (3): 2316- 2330.

DOI

8
WEI L, CUI J, ZHONG H, et al. A lightweight and conditional privacy-preserving authenticated key agreement scheme with multi-TA model for fog-based VANETs[J]. IEEE Transactions on Dependable and Secure Computing, 2021, 20 (1): 422- 436.

9
SON S, LEE J, PARK Y, et al. Design of blockchain-based lightweight V2I handover authentication protocol for VANET[J]. IEEE Transactions on Network Science and Engineering, 2022, 9 (3): 657- 662.

10
ZHANG Y, DENG R H, BERTINO E, et al. Robust and universal seamless handover authentication in 5G HetNets[J]. IEEE Transactions on Dependable and Secure Computing, 2021, 18 (2): 858- 874.

DOI

11
ZHU F, YI X, ABUADBBA A, et al. A security-enhanced certificateless conditional privacy-preserving authentication scheme for vehicular ad hoc networks[J]. IEEE Transactions on Intelligent Transportation Systems, 2023, 24 (10): 10456- 10466.

12
LI Q, HE D, YANG Z, et al. Lattice-based conditional privacy-preserving authentication protocol for the vehicular ad hoc network[J]. IEEE Transactions on Vehicular Technology, 2022, 71 (4): 4336- 4347.

13
TAHIR H, MAHMOOD K, AYUB M F, et al. Lightweight and secure multi-factor authentication scheme in VANETs[J]. IEEE Transactions on Vehicular Technology, 2023, 72 (11): 14978- 14986.

14
XIONG H, CHEN J, MEI Q, et al. Conditional privacy-preserving authentication protocol with dynamic membership updating for VANETs[J]. IEEE Transactions on Dependable and Secure Computing, 2020, 19 (3): 2089- 2104.

15
OTHMAN W, FUYOU M, XUE K, et al. Physically secure lightweight and privacy-preserving message authentication protocol for VANET in smart city[J]. IEEE Transactions on Vehicular Technology, 2021, 70 (12): 12902- 12917.

DOI

16
LIANG Y, LUO E, LIU Y. Physically secure and conditional privacy authenticated key agreement for VANETs[J]. IEEE Transactions on Vehicular Technology, 2023, 72 (6): 7914- 7925.

17
XIE Q, DING Z, ZHENG P. Provably secure and anonymous V2I and V2V authentication protocol for VANETs[J]. IEEE Transactions on Intelligent Transportation Systems, 2023, 24 (7): 7318- 7327.

DOI

18
MA H, WANG C, XU G, et al. Anonymous authentication protocol based on physical unclonable function and elliptic curve cryptography for smart grid[J]. IEEE Systems Journal, 2023, 17 (4): 6425- 6436.

19
BANSAL G, NAREN N, CHAMOLA V, et al. Lightweight mutual authentication protocol for V2G using physical unclonable function[J]. IEEE Transactions on Vehicular Technology, 2020, 69 (7): 7234- 7246.

20
HARISHMA B, MATHEW P, PATRANABIS S, et al. Safe is the new smart: PUF-based authentication for load modification-resistant smart meters[J]. IEEE Transactions on Dependable and Secure Computing, 2022, 19 (1): 663- 680.

DOI

21
LI S, XUE K, WEI D S L, et al. SecGrid: a secure and efficient SGX-enabled smart grid system with rich functionalities[J]. IEEE Transactions on Information Forensics and Security, 2019, 15, 1318- 1330.

22
MAES R,VERBAUWHEDA I. Physically unclonable functions:a study on the state of the art and future research directions[C]//Towards Hardware-Intrinsic Security:Foundations and Practice. 2010:3-37.

23
DODIS Y,REYZIN L,SMITH A. Fuzzy extractors:How to generate strong keys from biometrics and other noisy data[C]//Advances In Cryptology-EUROCRYPT 2004:International Conference on The Theory And Applications Of Cryptographic Techniques. 2004:523-540.

24
CHIM T W, YIU S M, HUI L C K, et al. VSPN: vanet-based secure and privacy-preserving navigation[J]. IEEE Transactions on Computers, 2014, 63 (2): 510- 524.

25
SUMRA I A, HASBULLAH H B. Trust levels of vehicular ad hoc network (VANET)[J]. International Journal of Information Technology and Electrical Engineering, 2014, 3 (5): 7- 16.

26
BURROWS M, ABADI M, NEEDHAM R M. A logic of authentication[J]. ACM Transactions on Computer Systems, 1990, 8 (1): 18- 36.

DOI

27
WANG M, ZHAO D, YAN Z, et al. XAuth: secure and privacy-preserving cross-domain handover authentication for 5G HetNets[J]. IEEE Internet of Things Journal, 2023, 10 (7): 5962- 5976.

DOI

28
LI X, LIU T, OBAIDAT M S, et al. A lightweight privacy-preserving authentication protocol for VANETs[J]. IEEE Systems Journal, 2020, 14 (3): 3547- 3557.

DOI

29
VIJAYAKUMAR P, AZEES M, KOZLOV S A, et al. An anonymous batch authentication and key exchange protocols for 6G enabled VANETs[J]. IEEE Transactions on Intelligent Transportation Systems, 2022, 23 (2): 1630- 1638.

DOI

30
pycryptodomex[EB/OL]. (2024-01-10)[2024-06-17]. https://pypi.org/project/pycryptodomex.

31
pypuf [EB/OL]. (2021-11-15)[2024-06-17]. https://github.com/nils-wisiol/pypuf.

32
python-fuzzy-extractor[EB/OL]. (2023-06-14)[2024-06-17]. https://github.com/carter-yagemann/python-fuzzy-extractor/tree/master.

文章导航

/