车联网是智能交通系统的基础,是智慧城市的重要组成部分[1-2].车联网使用无线传输技术将参与交通的车辆、路边设施及行人等结连成网,以提供道路安全和交通管理相关服务,及其他增值服务.车联网是一种特殊的移动无线自组织网络,它具备移动自组织网络优点,也有其自身的特点.车联网的通信方式除了“车-车”通信之外,还有“车-基础设施”和“车-行人”等方式;车联网的主要节点高速移动,网络拓扑动态变化且规模不可预测;有足够的电力、计算和存储能力;关键应用的时延敏感,而且有些应用关乎驾乘人员的生命和财产安全,因此对网络安全性要求更高.
车联网最初的设计意图是提高交通参与实体的实时决策准确度,以降低交通事故、减少人身和财产损失;同时,提高交通管理信息化和智能化水平,提升交通效率.随着互联网技术不断发展和智慧城市概念的不断清晰,以车联网为依托的智能交通系统也融入了互联网,成了智慧城市不可或缺的构件.另外,车辆充足的电源、计算和存储能力,以及高速的无线传输技术也使车联网提供增值服务成为可能.除了道路安全和交通管理相关服务,车联网还能够提供自动驾驶服务和内容分发服务.自动驾驶即智能系统代替人工驾驶车辆,把劳累的驾驶员解放为舒适的乘客.提供内容分发服务的是和娱乐资讯、驾乘舒适相关的线上应用.如即时信息、金融资讯、视频会议、流媒娱乐、在线游戏等互联网增值应用.车辆或驾乘人员使用安装于车载应用单元之上的应用程序,通过车载通信单元连接路边基础设施,获取远程“可信”服务提供商提供的各种互联网服务.内容分发服务对车联网的安全性要求虽然不及其他3种苛刻,但仍事关一个高速移动车辆上的驾乘人员,因此相关信息的机密性、完整性和可用性不容轻视.
认证密钥协商协议是保障互联网远程安全通信的主要措施,它能够为车联网增值服务提供信息安全保障.目前,学术界和工业界鲜有面向车联网多服务器环境的认证密钥协商协议被提出.虽然有许多性能良好的面向传统互联网多服务器环境的认证密钥协商协议供参考,但仍有许多问题待解决,主要包括:
1) 强假设.主要有2个方面:一方面假设硬件因子安全可靠,如假设敌手无法有效获取存储在防篡改终端或智能卡中的数据,即对用户侧长期秘密泄露的应对措施考虑不足.事实上,防篡改终端代价昂贵也并非绝对安全,实践中也多采用非抗串扰的硬件因子[3].另一方面假设注册中心为可信第三方,只负责参数生成、凭据颁发,不参与认证过程.这种情况多出现在注册中心离线模式的两方协议中,该类协议不能及时对用户和服务器注册、认证凭据实施撤销和更新,容易导致仿冒攻击.
2) 抗硬件丢失攻击脆弱.随着硬件攻击技术的发展,攻击者有能力从用户侧硬件中导出用户长期秘密以部署离线字典攻击[4-6],进而导致用户仿冒攻击.
3) 抗用户仿冒攻击脆弱.在注册中心离线的两方协议和注册中心在线但不存储用户注册信息的三方协议中,敌手一旦获得用户的长期安全因子,便可部署用户仿冒攻击,导致协议双向认证失效.如谢勇等人[5]提出协议中的车辆识别号泄露且未能及时撤销,敌手就可能向注册中心执行重注册获得合法身份;Lwamo等人[6]提出协议中智能卡信息泄露,敌手就可能绕过用户本地认证实施仿冒攻击.服务器仿冒攻击也有类似情况.
4) 匿名性脆弱.协议的硬件因子中通常存储着敏感信息,这些信息泄露会导致协议匿名性丧失.如谢勇等人[5]提出协议的智能卡中直接存储着车辆的识别号、口令和系统私钥明文,一旦这些信息泄露,敌手不但获得了用户身份信息,而且能根据交互信息追踪到应用足迹.
5) 前向安全性脆弱.有些协议的长期安全因子泄露可能招致前向安全攻击.如Lwamo等人[6]提出的协议,敌手一旦获得了智能卡中信息或服务器的长期秘密因子,就有可能导出会话密钥,Vasudev等人[4]提出的协议也存在类似情况.
为了解决上述5个问题,本文提出了一种新的可证安全的匿名车联网多服务器认证密钥协商协议.我们的主要贡献有:1)分析了车联网内容分发应用的安全需求,评价了已有车联网多服务器密钥认证协商协议的优点和不足;2)设计了一个高效的、强匿名性和前向安全性的车联网多服务器认证密钥协商协议;3)证明了所提协议满足随机预言模型下的AKE(authenticated key exchange)安全性;4)从安全特性、计算效率和通信开销3个方面对所提方案进行了性能评估.
车联网虽然始于汽车工业,但和互联网技术的发展关系紧密.近些年学术界和工业界提出了大量远程认证密钥协商协议,但对适用于车联网多服务器环境的协议研究较少.多服务器密钥认证协议依据加密形式可分为对称加密类和公钥加密类,虽然对称加密类普遍计算效率高但几乎难以有效实现强匿名性;依据协议参与实体类型又可分为注册中心离线的两方协议和注册中心在线的三方协议.
Liao等人[7]在文献[8]的基础上提出了一种动态身份多服务器认证协议,但Hsieh等人[9]认为该协议需要定期更新身份且不能抵抗身份追踪攻击、匿名性差,并给出了改进协议;不幸的是Amin等人在文献[10]中证明Hsieh等人[9]的协议不能抵抗口令猜测攻击和服务器欺骗攻击.谢勇等人[5]认为Amin等人[10]的协议虽然改进了Hsieh等人[9]协议的漏洞,但认证过程需要在线注册中心参与,他们在文献[5]中提出了注册中心离线模式的改进协议,声称该协议适用于车联网多服务器环境.Yoon等人[11]提出一种基于椭圆曲线密码(elliptic curve crypto-graphy, ECC)的多服务器认证协议,但He等人在文献[12]中指出Yoon等人[11]的协议不能抵抗内部特权攻击、智能卡丢失攻击和仿冒攻击并给出了改进协议;Chuang等人也在文献[13]指出Yoon等人[11]的协议存在匿名性脆弱的问题,并提出了一个轻量级的改进方案.2017年,Kumari等人[14]认为Chuang等人[13]的协议不能抵抗中间数据攻击、用户仿冒攻击和前向安全攻击并基于RSA数字签名提出了改进协议,Lwamo等人[6]在2019年发现Kumari等人[14]的协议使用了大量指数运算,导致协议效率低下,为了改善该协议的效率,他们同时使用公钥加密和对称加密改善协议的安全性和计算效率.但Yao等人[15]认为,Lwamo等人[6]的协议不能抵抗智能卡丢失攻击、离线字典攻击,进而导致用户仿冒攻击,甚至丧失匿名性和前向安全性.2017年,Ying等人[16]使用计算Diffie-Hellman问题设计了一种基于智能卡的轻量级车辆认证方案,作者声称其提案具有良好的安全性且计算和通信效率至少是现有方案的2倍.但是2019年Chen等人在文献[17]中揭示,Ying等人[16]的方案不能抵抗ID猜测攻击、会话密钥链接攻击和重放攻击,并给出了针对性的改进方案.2020年,Vasudev等人[4]分析认为Chen等人[17]的改进方案虽然获得了相应的安全性,但也因此导致计算和存储开销过高.虽然Vasudev等人[4]声称其改进方案的安全性和效率均优于现有方案,但我们在本文中将展示该方案不但匿名性和前向安全性脆弱,而且存在任意用户侧设备丢失都会导致系统主密钥泄露,进而导致所有会话密钥泄露的缺陷.
在本节中,我们主要介绍椭圆曲线密码、通信模型等理解文章所需的背景知识.
有限域Fp上的椭圆曲线E是一个满足y2=x3+ax+b(mod p)且包含无穷远点
的有限循环群.其中,a,b∈Fp,4a3+27b2≠0(mod p)[18].E上有加法和标量乘法2种运算,其中标量乘法定义为同点累加.
利用椭圆曲线上的离散对数难题(elliptic curve discrete logarithm problem, EDLP)和椭圆曲线上的计算Diffie-Hellman难题(elliptic curve Diffie-Hellman problem, ECDH)构造的密码系统被广泛引用于加密、认证等密码协议.EDLP和ECDH的安全假设由下述2个引理给出,对于概率多项式时间敌手![]()
引理1[18]. EDLP.已知k∈
p,P∈E,计算Q=kP容易,但已知P,Q∈E,求解k∈
p的优势
由可忽略概率negl(t)界定.
引理2[18]. ECDH.已知P,xP和yP∈E,未知x或y∈
p,求解xyP∈E的优势
由可忽略概率negl(t)界定.
车联网本质上是移动自组织网外延互联网模式[1].因此,适用于车联网内容分发应用的多服务器认证密钥协商协议是互联网多服务器远程认证的特殊情形.本节在已有模型[19-20]的基础上提出适用于车联网内容分发应用的多服务器三方认证模型.该模型中有4种协议实体:注册中心、委托授权方、内容提供商服务器和车辆及其驾乘人员,网络拓扑如图1所示.
1) 注册中心.注册中心RA是用户Hi、服务器Sj、路边单元TAk共同信任的第三方服务器,它拥有充足的电源、强大的计算能力和丰富的存储能力及网络资源,同时假设它能够抵御各类已知互联网安全攻击,Hi和Sj能够在RA和TAk的帮助下实现双向认证和会话密钥协商.
2) 内容提供商服务器.内容提供商服务器Sj是车联网增值服务的载体,它们是若干部署在互联网环境下半诚信服务器或安装了Raspberry Pi类系统的车辆或使用其他智能终端的移动互联网服务提供者,它们/他们为车辆或其驾乘人员提供各种娱乐、资讯等互联网增值服务.
3) 车辆及驾乘者.参与交通行为的车辆是车联网的主体之一,车辆或其驾乘人员Hi使用安装在应用程序单元上的应用程序,通过车载通信单元连接路边基础设施(roadside unit, RSU),向部署在互联网上的内容服务器请求认证并获取相应服务.
4) 委托授权方.为了提高系统性能(如提高系统响应效率、降低RA的负担),我们考虑以车辆及其驾乘人员为中心,RA按就近原则将授权和认证的任务委托给车辆附近的TAk,如已和RA相互认证的RSU.
Fig. 1 Communication model of authentication scheme for value-added services in IoV
图1 面向车联网增值服务的认证方案通信模型
由于车联网主要节点高速移动,网络的信息安全事故很可能引发交通事故和其他安全事故.因此,一个适用于车联网增值服务场景的认证密钥协商协议除了具备协议实体双向认证和安全会话密钥协商的功能外,还应实现3个安全目标:
1) 强匿名性.强匿名性包括2个方面:①敌手无法通过主动或被动攻击获取未完全腐化用户的识别码;②敌手无法通过主动或被动攻击建立特定用户和特定应用之间的链接,即无法追踪到用户的任何网络活动足迹.
2) 强前向安全性.协议具备强前向安全性意味着即使敌手获得了所有协议实体的所有长期安全因子,也无法攻击前期已建立会话密钥的安全性.
3) 抵抗其他攻击.能够抵抗其他已知的互联网攻击,如重放攻击、中间人攻击等.
本节在文献[4]的IV.B节威胁模型的基础上,结合著名的Dolev-Yao威胁模型[21]和Canetti-Krawczyk敌手模型[22],给出威胁面向车联网增值服务的匿名认证方案的敌手能力假设.我们假设PPT(probabilistic polynomial time)敌手
具有如下5个能力:
1) 能够完全控制信道、获得实体间交互信息的副本并提取敏感信息;
2) 能够通过拦截、修改、插入、删除交互信息等手段干扰通信;
3) 能够使用掌握的硬件攻击技术从盗取或拾得的智能卡中导出其中的秘密[23];
4) 由于用户名和口令空间有限,
能够在多项式时间内以不可忽略的成功率实施离线字典攻击,猜出智能卡对应的用户名和口令[24];
5) 能够获得实体的其他信息,如会话状态、临时秘密因子.
本节以Vasudev等人[4]协议的密码分析为例,展示现有面向车联网增值服务的轻量级认证协议在安全性方面的脆弱性.
为了方便理解针对Vasudev等人[4]协议的密码分析,本节先对其注册和认证过程进行简要回顾.方案中使用的符号及其说明如表1所示:
Table 1 Notations and Descriptions
表1 符号及其描述
符号描述s∕PK注册中心服务器RA的私钥∕公钥IDi∕PWi∕SCi用户Hi的ID∕口令∕智能卡IDj∕sj∕PKj服务器Sj的ID∕私钥∕公钥IDk∕sk∕PKk委托授权方TAk的ID∕私钥∕公钥h(·)安全Hash算法∕‖异或∕连接操作符Ti∕ΔT时间戳∕消息生命周期的阀值
Vasudev等人[4]协议中,委托授权方TAk和应用服务器Sj需要向管理机构RA提前注册以获取共享密钥K.用户/驾驶员Hi注册时,先选取可用的用户名IDi、口令PWi及随机数
计算
和
并安全地发送给RA请求注册;RA收到后计算Ai=h(PIDi‖K)和Bi=Ai⊕h(PIDi‖PPWi)并写入智能卡SCi后安全地颁发给Hi;Hi收到后计算
并写入SCi.认证时,Hi和Sj在授权方TAk的帮助下实现相互认证和会话密钥协商,其详情如图2所示.
本节展示Vasudev等人[4]协议不能抵抗2.2节安全威胁下的匿名性攻击、前向安全性攻击等攻击.
1) 不具备强匿名性.协议运行时虽然用户使用了假名PIDi,但可根据交互信息导出定值
可根据该定值就能追踪到{PIDi,IDj}的对应关系.
2) 前向安全性脆弱.若委托授权方TAk和服务器Sj共享秘密K丢失,
可导出已建立的全部会话密钥ssij=h(PIDk‖X2⊕h(K)‖X3⊕X2⊕h(K));任意用户的长期秘密{IDm,PWm,SCm}丢失,
可通过如下步骤导出全部会话密钥:
Hi(IDi,PWi,SCi)TAk(K)Sj(IDj,K)r*i=ZiIDiPWiif Ai=Bih(PIDi‖PPWi),select x∈R ZZ*q,h1=h(T1‖Ai‖PPWi‖x),Y1=h(Bi‖PPWi),X1=xYi,M1={IDj,h1,X1,T1},HiM1→TA.Y*1=h(Bi‖PPWi),x=X1Y*1,if h1=h(T1‖Ai‖PPWi‖x),PIDk=h(PIDi‖IDk‖IDj)h2=h(T2‖PIDk‖K‖x),X2=xh(K),M2={PIDk,h2,X2,T2},TAkM2→Sj.x*=X2h(K),if h2=h(T2‖PIDk‖K‖x*),y∈RZZ*q,ssji=h(PIDk‖x‖y),h3=h(T3‖x‖y‖K),X3=xy,M3={h3,X3,T3},TAkM3←Sj.y*=X3x,if h3=h(T3‖x‖y*‖K),h4=h(x‖y‖PPWi),X4=yPPWi,M4={h4,X4},HiM4←TAk.y*=X4PPWi,if h4=h(x‖y*‖PPWi),ssij=h(PIDk‖x‖y*).
Fig. 2 Authentication process of the Vasudev et al. scheme
图2 Vasudev等人方案的认证过程
①![]()
②![]()
③![]()
3) 不能抵抗临时因子泄露攻击.任意临时因子x*或y*丢失,
可导出已建立的全部会话密钥:
①![]()
② ssij=h(PIDk‖X2⊕h(K)‖X3⊕X2⊕h(K)).
4) 不能抵抗智能卡丢失攻击.用户的IDm智能卡SCm{Am,Bm,Zm}丢失将导致离线字典攻击[24].
因为h4=h(x‖y‖PPWm),而y=X4⊕PPWm,x=X3⊕y,PPWm=h(PWm‖Zm⊕IDm⊕PWm),所以有等式
h4=h(X3⊕X4⊕PPWm‖X4⊕PPWm‖PPWm)
(1)
恒成立.
可通过如下步骤实施离线字典攻击:
① 选取(ID*,PW*);
② 计算PPW*=h(PW*‖Zm⊕ID*⊕PW*)并代入式(1),如果h4=h(X3⊕X4⊕PPWm‖X4⊕PPWm‖PPWm)为真,返回(IDm,PWm)=(ID*,PW*),否则返回执行步骤①.
一旦
获得了任意用户的{IDm,PWm,SCm},就能通过2)导出所有用户的所有会话密钥.
由3.2节的分析可见,Vasudev等人[4]协议除了匿名性和前向安全性脆弱之外,还存在任意用户秘密丢失导致所有会话泄露的致命缺陷.为了解决这些问题,我们使用ECDH安全假设和Hash函数设计了一个安全高效的面向车联网增值服务的认证密钥协商方案.该提案由初始化、注册、授权、认证4个主要阶段组成,其中注册阶段包括授权方注册、服务器注册和用户注册3个算法,授权阶段包括用户临时凭据生成和服务器临时凭据生成2个算法.
注册中心服务器RA初始化系统参数,它选择一个以大素数p为阶的有限域Fp,并在其上定义一个椭圆曲线Eq,在Eq上选择一个阶为q、生成元为P的加法群G,再选取系统私钥s∈![]()
并计算公钥PK=sP;RA选择Hash函数h(·),并发布系统参数{PK,P,Ep,h(·)}.
如图3所示,委托授权方TAk在系统参数初始化完成后即可向RA发起注册请求;RA收到请求后为其选择用户名IDk和随机数
生成长期凭据Crk后安全地将消息{IDk,Crk}发送给TAk,并将消息
写入委托授权方注册表Rk;TAk收到消息后选取私钥sk∈![]()
后一同写入其安全模块TPDk,并计算公钥PKk=skP发布之.
TAk(sk)RA(s)send Rek to RAselect IDk,r*k∈RZZ*q,Crk=h(IDk‖s‖r*k),Rk={IDk,r*k}.TAk {IDk,Crk} ←RA.write {IDk,Crk} into TPDk.
Fig. 3 TAk registration process of the proposed scheme
图3 本提案TAk的注册过程
如图4所示,服务器Sj在系统参数初始化完成后即可向RA发起注册请求,Sj选取合适的用户名IDj发送给RA请求注册;RA收到请求后检查有效性为真后选取随机数
生成长期凭据Crj后安全地将消息{Crj}发送给Sj,并将消息
写入服务器注册表Rj;Sj收到消息后选取私钥sj∈![]()
后一同写入内存,并计算公钥PKj=sjP发布之.
Sj(IDj)RA(s)Rej={IDj},Sj Rej →RAif IDj is true,select r*j∈ZZ*q,Crj=h(IDj‖s‖r*j),Rj={IDj,r*j}.write {IDj,Crj} into cache.Sj Crj ←RA.
Fig. 4 Sj registration process of the proposed scheme
图4 本提案Sj的注册过程
如图5所示,用户Hi在接入系统之前需要向RA注册,Hi选取合适的用户名IDi和口令PWi计算Rei发送给RA请求注册;RA收到请求后检查用户名有效性为真后选取随机数
生成长期凭据
后安全地发送消息
给Hi,并将消息
写入用户注册表Ri;Hi收到消息后将其写入智能卡SCi,注册完成.
Hi(IDi,PWi)RA(s)MPWi=h(IDi‖PWi),Rei={IDi,MPWi}.Vi Rei →RA.if IDi is true,select r*i∈ZZ*q,Cri=h(IDi‖s‖r*i),Cr*i=CriMPWi,Vri=h(IDi‖PWi‖Cri),Ri={IDi,r*i}.write {Cr*i,Vri} into SCi.Hi {Cr*i,Vri} ←RA.
Fig. 5 Hi registration process of the proposed scheme
图5 本提案Hi的注册过程
认证阶段,用户Hi和服务器Sj在委托授权方TAk的帮助下实现相互认证并初始化会话密钥.通常情况下,Hi的车辆驶入某一路段时,会被临近TAk检测到(相互检测),TAk会在通过RA认证后为Hi生成临时凭据Crki和可能访问的服务器凭据Crkj,详情如图6和图7所示.临时凭据的生成过程为:
1) Hi通过登录认证后,选取随机数ri计算riP和假名PIDi,并盲化用户名和假名为MIDi和MPIDi,发送消息{MIDi,MPIDi,riP,h1,T1}给TAk请求认证并将ri写入缓存.
2) TAk验证时间戳有效后,计算摘要h2并发送消息{IDk,MIDi,riP,h1,h2,T2}给RA请求认证.
3) RA验证时间戳和h2有效后,从MIDi中导出IDi、查询用户注册表为真后计算其临时凭据Crki,盲化Crki为MCrki、计算摘要h3并返回消息{MCrki,h3,T3}给TAk.
Hi(IDi,PW'i,TPDi)TAk(sk)↔RA(s)SCiMPW'i=h(IDi‖PW'i),Cr'i=Cr*iMPW'i,if Vri=h(IDi‖PW'i‖Cr'i),↓OBUiselect ri∈ZZ*q,MIDi=IDih(riPK),PIDi=h(IDi‖riP),MPIDi=PIDih(riPKk),Crki=h(IDk‖PIDi‖riPK‖Cr'i),h1=h(T1‖IDi‖IDk‖Crki),M1={MIDi,MPIDi,riP,h1,T1},write [ri] to TPDi.ViM1→TAk.if T2-T1≤ΔT,h2=h(T2‖IDk‖h1‖Crk),M2={IDk,MIDi,riP,h1,h2,T2},TAkM2→RA.if T3-T2≤ΔT and h2 is true,IDi=MIDih(sriP),Crki=h(IDk‖h(IDi‖riP)‖sriP‖Cri),MCrki=Crkih(riP‖Crk),h3=h(T3‖h(IDi‖riP)‖MCrki‖Crk),M3={MCrki,h3,T3},TAk M3 ←RA.if T4-T3≤ΔT and h3 is true,PIDi=MPIDih(skriP),Crki=MCrkih(riP‖Crk),write [PIDi,Crki] to VLk.
Fig. 6 User temporary credential generation algorithm UTCG
图6 用户的临时凭据生成算法UTCG
Sj(IDj,sj)TAk(sk)↔RA(s)h4=h(T4‖IDk‖Crk),M4={IDk,h4,T4},TAk M4 →RA.if T5-T4≤ΔT and h4 is true,select rj∈ZZ*q,Crkj=h(IDk‖IDj‖rjPKj‖Crj),MCrkj=Crkjh(rjP‖Crk),h5=h(T5‖IDj‖MCrkj‖Crk),M5={IDj,MCrkj,rjP,h5,T5},TAk M5 ←RA.if T6-T5≤ΔT and h5 is true,Crkj=MCrkjh(rjP‖Crk),write [IDj,Crkj] to SLk,h6=h(T6‖IDk‖rjP‖Crkj),M6={IDk,rjP,h6,T6},Sj M6 ←TAk.if T7-T6≤ΔT,Crkj=h(IDk‖IDj‖sjrjP‖Crj),if h6=h(T6‖IDk‖rjP‖Crkj),write [IDk,Crkj] to memory.
Fig. 7 Server temporary credential generation algorithm STCG
图7 服务器的临时凭据生成算法STCG
4) TAk验证时间戳和h3有效后,从MPIDi中导出PIDi、从MCrki中导出Crki,最后将消息{PIDi,Crki}写入缓存中的车辆列表VLk以备后用.
5) 与此同时,TAk和RA还要为Hi经常访问的服务器Sj生成新的临时凭据.TAk计算摘要h4后发送消息{IDk,h4,T4}给RA请求认证.
6) RA验证时间戳和h4有效后,选取随机数rj计算服务器临时凭据Crkj,盲化Crkj为MCrkj、计算摘要h5并返回消息{IDj,MCrkj,rjP,h5,T5}给TAk.
7) TAk验证时间戳和h5有效后,从MCrkj中导出Crkj,并将消息{IDj,Crkj}写入缓存中的服务器列表SLk;TAk计算摘要h6后发送{IDk,rjP,h6,T6}给Sj.
8) Sj验证时间戳后,计算Crkj并验证摘要h6有效后将消息{IDk,Crkj}写入缓存以备后用.
如图8所示,当Hi需要访问Sj时,TAk根据其缓存中的临时凭据实现相互认证,而无需RA参与.
9) Hi先选择随机数x并以h(xPKk)盲化其假名,计算临时凭据Crki后生成摘要h11,随后发送消息{MPIDi,IDj,xP,h11,T11}给TAk请求认证.
10) TAk验证时间戳有效后,从MPIDi中导出PIDi,并查询缓存中的VLk,若为假则执行UTCG/STCG算法,否则验证h11,若有效盲化PIDi为
计算摘要h12并发送消息
给Sj请求认证.
Hi(IDi,PW'i,TPDi)TAk(sk)Sj(SIDj,SIK'j)SCiMPW'i=h(IDi‖PW'i),Cr'i=Cr*iMPW'i,if Vri=h(IDi‖PW'i‖Cr'i),↓OBUiselect x∈ZZ*q,PIDi=h(IDi‖riP),MPIDi=PIDih(xPKk),Crki=h(IDk‖PIDi‖riPK‖Cr'i),h11=h(T11‖IDk‖PIDi‖IDj‖xP‖Crki),M11={MPIDi,IDj,xP,h11,T11}.ViM11→TAk.if T12-T11≤ΔTPIDi=MPIDih(skxP),if Lookup(VLk,PIDi) is false,run UTCG∕STCG, elseif h11=h(T11‖IDk‖PIDi‖IDj‖xP‖Crki),MPID'i=PIDih(xP‖Crkj),h12=h(T12‖PIDi‖IDj‖xP‖Crkj),M12={IDk,MPID'i,xP,h12,T12}.TAkM12→Sj.if T13-T12≤ΔTCrkj=h(IDk‖IDj‖sjrjP‖Crj),PIDi=MPID'ih(xP‖Crkj),if h12=h(T12‖PIDi‖IDj‖xP‖Crkj),select y∈Z*q,ssji=h(PIDi‖xyP),h13=h(PIDi‖IDj‖ssji),h14=h(T13‖IDk‖PIDi‖IDj‖h13‖Crkj),M13={yP,h13,h14,T13}.TAk M13 ←Sj.if T14-T13≤ΔT and h14 is trueh15=h(T14‖IDk‖PIDi‖IDj‖yP‖Crki),M14={yP,h13,h15,T14}.Vi M14 ←TAk.OBUiif T15-T14≤ΔT and h15 is truessij=h(PIDi‖xyP),if h13=h(PIDi‖IDj‖ssij)accept ssij.
Fig. 8 Authentication process of the proposed scheme
图8 本提案的认证过程
11) Sj验证时间戳有效后,计算和TAk相关的临时凭据Crkj并从
中导出PIDi再验证h12,若有效则选取随机数y,计算会话密钥ssji=h(PIDi‖xyP)、计算摘要h13和h14并发送消息{yP,h13,h14,T13}给TAk.
12) TAk验证时间戳和h14有效后,计算摘要h15并发送消息{yP,h13,h15,T14}给Hi请求认证.
13) Hi验证时间戳和h15有效后,计算会话密钥ssij=h(PIDi‖xyP)并验证h13,有效则接受该密钥.
本节给出提案在随机预言模型下的AKE安全性证明和其他性质的非形式化分析.
本节在文献[25]中安全模型的基础上,定义了一种随机预言模型下适用于车联网的双向匿名认证密钥协商安全模型.假设
为认证密钥协商协议,协议实体Pi的第α次会话记为
为PPT敌手.
的攻击能力可由挑战者
和
之间的一系列预言询问刻画.
Hash(m,h(m)).
向
查询m的Hash值,
搜索其秘密维护的Hash表,如果存在表项[m,h(m)]则返回h(m)给
否则将返回的随机串赋给h(m),并将[m,h(m)]添加至Hash表中.
该询问模拟
被动攻击的能力,返回值为实体间的所有交互信息副本.
该询问模拟
主动攻击的能力,返回值为实体依据协议规定的响应信息,如重放攻击、仿冒攻击和中间数据攻击.
Corrupt(Hi,TAk).该询问模拟用户SCi中信息泄露时返回值为
的缓存泄露时返回值为{Crki,Crkj}.
Test(Pi).该询问用于刻画会话密钥的语义安全性,不模拟
的攻击能力.如果
赢得掷币游戏返回会话密钥,否则返回与会话密钥等长的随机串.
定义1. 假设Succ表示事件
通过上述Hash,Excute,Send等询问破坏
的AKE安全性,则
获胜的优势可以表达为
如果
可忽略,则
满足随机预言模型下的双向匿名认证密钥协商安全性.
定理1. 假设
是提案的认证密钥协商协议,
是攻击
的AKE安全性的PPT敌手.如果h(·)是随机预言机
攻击ECDH安全假设的优势
是可忽略的,那么
攻击协议
的最大优势为
其中qh,qe,qs为有限时间内Hash(·),Excute(·)和Send(·)请求的次数,l,α,β为Hash函数,ID空间、口令空间的比特长度.
证明.
的AKE安全性由4个挑战者
和敌手
之间的混合游戏Gi刻画.事件Succi表示
赢得Gi,这些游戏从真实场景开始,我们通过使用5.1节中的询问逐步增强
的攻击能力,直到
用尽了除“掷币”之外的所有能力,游戏结束.
G0:该游戏模拟真实场景,依据定义1可得
G1:在G0的基础上增加
询问以模拟
被动攻击的能力.在协议中,Hi和Sj独立计算ss=h(PIDi‖xyP),而PIDi,x和y均隐藏在ECC密文中,
通过窃听消息{Mi}获得上述秘密的优势等于其攻击ECDH安全假设的优势
是可忽略的,因此
Pr(Succ1)=Pr(Succ0).
G2:该游戏在G1的基础上增加
询问以模拟
主动攻击的能力.
Case1:如果Hash询问和随机数询问都出现冲突,则
赢得游戏,依据生日攻击可得
使用猜测结果伪造{Mi}赢得游戏的优势为
G3:该游戏在G2的基础上增加Corrupt(Hi,TAk)询问以模拟Pi被部分腐化时的协议安全性.
Case1:当Hi的SCi中信息泄露时,
通过猜测相应IDi和PWi赢得游戏的优势为
Case2:当TAk的缓存泄露时,
通过猜测IDi和临时证书间对应关系赢得游戏的优势为
G4:最后一个游戏
尝试在5.1节安全模型下解决ECDH难题以赢得游戏,其优势为
否则,G4的优势为Pr(Succ4)=1/2.
综合游戏G1至
凭借5.1节安全模型下的所有攻击能力赢得游戏的优势至多为
证毕.
本节在5.2节安全证明的基础上进一步分析提案的匿名性及其他安全性质.
1) 双向认证.正常情况下,用户Hi和服务器Sj充分相信持有它们长期凭据的实体一定是系统公钥的私钥所有者RA,而由其长期凭据派生的临时凭据持有者是RA信任的实体TAk.因此,Hi和Sj与TAk之间依据Crki和Crkj实现相互认证,而Hi和Sj在TAk帮助下实现间接认证.
2) 强匿名性.在协议的认证和密钥协商阶段,用户Hi的IDi以随机假名形式MPIDi传递,而敌手
破解这些假名的优势等价于其攻击ECDH安全假设的优势,可忽略.因此
获得IDi的优势也可忽略.另外,每次会话的假名都用新鲜随机数的密文封装,依据5.2节的游戏
追踪会话的最大优势为
可忽略.
3) 前向安全性.在协议中,用户Hi和服务器Sj各自独立计算会话密钥ss=h(PIDi‖xyP),随机数x和y每次会话都会临时新鲜选取,而敌手
求解x和y的优势为攻击ECDH安全假设的优势,可忽略.因此
已知Hi的IDi,PWi,Cri和服务器Sj的CRj以及RA的密钥s无法计算已生成的会话密钥,即使
获得了RA上的注册表也无法提高其攻击已有会话密钥的优势.
4) 抵抗仿冒攻击.协议实现的密钥协商过程依赖于RA和TAk的认证,TAk收到用户Hi和服务器Sj认证请求后使用临时凭据Crki和Crkj验证Hi和Sj的签名h11和h12,敌手
没有完全腐化实体之前无法伪造有效的消息通过TAk认证,因此该协议不但能抵抗用户仿冒攻击,还能抵抗服务器仿冒攻击.
5) 抵抗内部特权攻击.协议中,用户Hi的口令以h(IDi‖PWi)形式使用,依据Hash函数的单向安全性,好奇的RA无法获取车辆的PWi;再者,Hi和Sj均独立计算会话密钥ss=h(PIDi‖xyP),RA和TAk要计算该会话密钥还需xyP,依据ECDH安全假设,它们获取xyP的优势可忽略.
6) 抵抗口令猜测攻击.协议中,虽然用户Hi的SCi存储的
中含有h(IDi‖PWi),但它以Hash形式
存在,
无法从中导出部署离线口令猜测攻击的判定条件.
7) 抵抗重放攻击.提案不但按会话引入新鲜随机数,还使用了时间戳认证机制,而且还具有良好的匿名性.因此
无法通过重放消息获得攻击协议的优势.
8) 抵抗中间人攻击.由于该协议具有良好的匿名性,
无法得知用户Hi的IDi,也无法追踪会话,加之TAk分别认证Hi和Sj且帮助它们相互认证,故该协议能够抵抗中间人攻击.
本节分析比较了本提案、Vasudev等人[4]、谢勇等人[5]协议和Lwamo等人[6]协议的安全特性、计算效率和通信效率.结果显示,所提协议在安全性和效率方面都具有一定优势.
本节从双向认证、匿名性等10个方面对比了提案、Vasudev等人、谢勇等人协议和Lwamo等人协议的安全特性.结果显示,提案具有更好的安全性.由表2可见,注册中心离线的协议一旦易失性因子泄漏就可能导致双向认证失效,进而招致用户仿冒攻击,甚至丧失匿名性[5]和前向安全性[6];未使用公钥密码构造的协议匿名性脆弱且容易招致离线口令猜测攻击[4].
Table 2 Comparison of the Security Properties of Authentication Protocol for Value-Added Services in IoV
表2 车联网多服务器密钥协商协议安全性质比较
性质本提案Vasudev等人[4]谢勇等人[5]Lwamo等人[6]P1是是否否P2是否否否P3是否是否P4是是否否P5是是是是P6是是是是P7是否否否P8是是是是P9是是是是P10是否是是
注:P1 双向认证,P2 强匿名性,P3 前向安全性,P4 抗用户仿冒攻击,P5 抗服务器欺骗攻击,P6 抗内部特权攻击,P7 抗口令猜测攻击,P8 抗重放攻击,P9 抗中间人攻击,P10智能卡丢失导致系统主密钥泄露.
为了评估所提协议的计算效率,我们比较了提案及其他3个典型方案的计算耗时.根据文献[6,26]的结论,协议中所涉及的基本操作耗时如表3所示:
Table 3 Time Overhead for Various Operations
表3 基本操作耗时 ms
操作TepaTepmTske∕TskdTpkeTpkd耗时0.02882.2260.00463.853.85
注:Tepa表示ECC点加,Tepm表示ECC点乘,Tske/Tskd表示对称加/解密,Tpke表示公钥加密,Tpkd表示公钥解密.
我们使用表3中的基本耗时评估4个协议认证和密钥协商阶段的计算耗时,详情如表4所示.忽略Hash函数和异或操作耗时,2个基于ECC的协议相比,我们的协议车辆侧耗时差不多是谢勇等人[5]协议的43%,总耗时是他们的58%;相比基于RSA的Lwamo等人[6]协议,车辆侧耗时和总耗时是他们的2倍左右,但该协议匿名性和前向安全性脆弱.虽然Vasudev等人[4]协议的计算开销相比小的可以忽略,但它存在因智能卡丢失导致系统主密钥泄露进而导致所有会话密钥泄露的致命缺陷.
Table 4 Computational Cost Comparison
表4 计算性能比较 ms
协议难题耗时HiSj+TAk总耗时本提案ECDH3Tepm=6.67804Tepm=8.904015.5820谢勇等人[5]ECDH7Tepm+2Tepa=15.63965Tepm+2Tepa=11.187626.8272Lwamo等人[6]RSATpke+2Tske=3.8592Tpkd+2Tske=3.85927.7184Vasudev等人[4]Hash000
为了评估所提协议的通信效率,我们比较了提案和其他3个协议的通信开销.协议中所涉及的数据结构的比特长度如表5所示:
Table 5 Length of Metadata
表5 元数据的长度 b
元数据LhLeccLaesLrsaLidLran长度25616025610242561024
注:Lh表示Hash值长度,Lecc表示ECC点长度,Laes表示AES密钥长度,Lrsa表示密钥长度,Lid表示ID长度,Lran表示随机数长度.
我们使用表5中统计的数据结构比特长度评估4个协议认证和密钥协商阶段的通信开销,详情如表6所示.忽略底层通信协议开销,2个基于ECC的协议相比,所提协议的车辆侧发送的数据量差不多是谢勇等人[5]协议的1/3,总通信开销也减少了近20%;和基于Hash函数的协议相比,所提协议的车辆侧发送的数据量不足Vasudev等人[4]协议的2/3,总通信开销略高;和基于RSA的协议相比,所提协议的车辆侧发送的数据量不足Lwamo等人[6]协议的1/5,总通信开销也只有他们的37%.
Table 6 Communication Cost Comparison
表6 通信开销比较 b
协议难题开销HiSj+TAk总开销本提案ECDHLh+Lid+Lecc=6726Lh+Lid+3Lecc=22722944谢勇等人[5]ECDHLh+Lid+2Lecc+Lran=1856Lh+Lid+Lecc+Lran=16963552Lwamo等人[6]RSA2Lh+3Lrsa+Lid=384015Laes+Lh=40967936Vasudev等人[4]Hash2Lh+2Lid=10246Lh+Lid=17922816
本文首先研究了面向车联网增值服务场景的认证密钥协商协议的安全需求和威胁模型;分析了已有协议存在匿名性和前向安全性脆弱的原因;使用椭圆曲线密码和Hash函数设计了一种可证安全的适用于车联网增值服务场景匿名认证协议,给出了随机预言模型下的安全性证明,并通过与其他典型协议在安全特性、计算效率和通信效率3个方面的对比分析评估了所提协议的性能.结果显示,所提协议具有强匿名性和前向安全性,能够抵抗已知的互联网攻击;相比其他协议,所提协议的安全性更佳,车辆侧的计算量和通信量更低,更符合车联网增值服务场景的实际需求.
作者贡献声明:姚海龙负责方案设计、安全分析、效率评估、初稿撰写;闫巧负责审阅与修改论文.
[1]Gharaibeh A, Salahuddin M, Hussini S, et al. Smart cities: A survey on data management, security, and enabling technologies[J]. IEEE Communications Surveys & Tutorials, 2017, 19(4): 2456-2501
[2]Machardy Z, Khan A, Obana K, et al. V2X access technologies: Regulation, research, and remaining challenges[J]. IEEE Communications Surveys & Tutorials, 2018, 20(3): 1858-1877
[3]Wang Ding, Wang Ping. On the anonymity of two-factor authentication schemes for wireless sensor networks: Attacks, principle and solutions[J]. Computer Networks, 2014, 73(14): 41-57
[4]Vasudev H, Deshpande V, Das D,et al. A lightweight mutual authentication protocol for v2v communication in internet of vehicles[J]. IEEE Transactions on Vehicular Technology, 2020, 69(6): 6709-6717
[5]Xie Yong, Wu Libin, Zhang Yubo, et al. Anonymous mutual authentication and key agreement protocol in multi-server architecture for VANETs[J]. Journal of Computer Research and Development, 2016, 53(10): 2323-2333 (in Chinese)(谢勇, 吴黎斌, 张宇波, 等. 面向车联网的多服务器架构的匿名双向认证与密钥协商协议[J]. 计算机研究与发展, 2016, 53(10): 2323-2333)
[6]Lwamo N, Zhu Liehuang, Xu Chang, et al. SUAA: A secure user authentication scheme with anonymity for the single & multi-server environments[J]. Information Sciences, 2019, 477: 369-385
[7]Liao Yipin, Hsiao C. A novel multi-server remote user authentication scheme using self-certified public keys for mobile clients[J]. Future Generation Computer Systems, 2013, 29(3): 886-900
[8]Choi K, Hwang J, Lee D, et al. ID-based authenticated key agreement for low-power mobile devices [G] //LNCS 3574: Proc of the ACISP 2005: Information Security and Privacy. Berlin: Springer, 2005: 494-505
[9]Hsieh W, Leu J. An anonymous mobile user authentication protocol using self-certified public keys based on multi-server architectures[J]. Journal of Supercomputing, 2014, 70(1): 133-148
[10]Amin R, Biswas G. Design and analysis of bilinear pairing based mutual authentication and key agreement protocol usable in multi-server environment[J]. Wireless Personal Communications, 2015, 84(1): 439-462
[11]Yoon E, Yoo K. Robust biometrics-based multi-server authentication with key agreement scheme for smart cards on elliptic curve cryptosystem[J]. Journal of Supercomputing, 2013, 63(1): 235-255
[12]He Debiao, Wang Ding. Robust biometrics-based authentication scheme for multiserver environment[J]. IEEE Systems Journal, 2015, 9(3): 816-823
[13]Chuang Mingchin, Chen Mengchang. An anonymous multi-server authenticated key agreement scheme based on trust computing using smart cards and biometrics[J]. Expert Systems with Applications, 2014, 41(4): 1411-1418
[14]Kumari S, Om H. Cryptanalysis and improvement of an anonymous multi-server authenticated key agreement scheme[J]. Wireless Personal Communications, 2017, 96: 2513-2537
[15]Yao Hailong, Wang Caifeng, Fu Xingbing, et al. A privacy-preserving RLWE-based remote biometric authentication scheme for single and multi-server environments[J]. IEEE Access, 2019, 7: 109597-109611
[16]Ying B, Nayak A. Anonymous and lightweight authentication for secure vehicular networks[J]. IEEE Transactions on Vehicular Technology, 2017, 66(12): 10626-10636
[17]Chen Chienming, Xiangbin, Liu Yining, et al. A secure authentication protocol for internet of vehicles[J]. IEEE Access, 2019, 7: 12047-12057
[18]Koblitz N. Elliptic curve cryptosystems[J]. Mathematics of Computation, 1987, 48(177): 203-209
[19]Hamida E, Noura H, Znaidi W. Security of cooperative intelligent transport systems: Standards, threats analysis and cryptographic countermeasures[J]. Electronics, 2015, 4(3): 380-423
[20]Odelu V, Das A, Goswami A. A secure biometrics-based multi-server authentication protocol using smart cards[J]. IEEE Transactions on Information Forensics & Security, 2015, 10(9): 1953-1966
[21]Dolev D, Yao A. Onthe security of public key protocols[J]. IEEE Transactions on Information Theory, 1983, 29(2): 198-208
[22]Canetti R, Krawczyk H. Universallycomposable notions of key exchange and secure channels [G] //LNCS 2332: Proc of the Int Conf on the Theory and Applications of Cryptographic Techniques. Berlin: Springer, 2002: 337-351
[23]Wang Chenyu, Wang Ding, Tu Yi, et al. Understanding node capture attacks in user authentication schemes for wireless sensor networks[J/OL]. IEEE Transactions on Dependable and Secure Computing, 2020[2020-04-21]. https://ieeexplore.ieee.org/document/9000589
[24]Wang Ding, Zhang Zijian, Wang Ping, et al. Targeted online password guessing: An underestimated threat [C] //Proc of the 2016 ACM SIGSAC Conf on Computer and Communications Security. New York: ACM, 2016: 1242-1254
[25]Bellare M, Pointcheval D, Rogaway P. Authenticated key exchange secure against dictionary attacks[G] //LNCS 1807: Proc of the Int Conf on the Theory and Applications of Cryptographic Techniques. Berlin: Springer, 2000: 139-155
[26]Kilinc H, Yanik T. A survey of SIP authentication and key agreement schemes[J]. IEEE Communications Surveys & Tutorials, 2014, 16(2): 1005-1023