首页> 中国专利> 一种面向VANET的无证书和签名的条件匿名认证方法

一种面向VANET的无证书和签名的条件匿名认证方法

摘要

一种面向VANET的无证书和签名的条件匿名认证方法,用户申请加入车联网,TA存储车辆信息ID并向其分发私钥,TA判断私钥与已经分配的私钥是否重复,若重复则重新进行分发私钥,若不重复则将TA分配的私钥作为其私钥;发送者vi发送消息m的MAC码cert(m)=ω0||t1||T1||T2||...||Tk||y"1||y"2||...||y"k||m||σ(m);当车辆vj接收到消息cert(m)时,利用自己私钥中的进行验证,判断是否接受消息;若接收消息后发现消息为恶意消息,TA对恶意车辆进行追踪,从而完成认证。本发明没有使用证书和签名,不存在复杂的证书管理问题,具有效率高、实用性强的优点,并且满足私钥可靠性、匿名认证性、可追踪性、不可关联性、不可否认性和可撤销性等安全属性。

著录项

  • 公开/公告号CN109379372A

    专利类型发明专利

  • 公开/公告日2019-02-22

    原文格式PDF

  • 申请/专利权人 长安大学;

    申请/专利号CN201811391013.0

  • 申请日2018-11-21

  • 分类号H04L29/06(20060101);H04L9/00(20060101);H04L9/08(20060101);H04L9/32(20060101);

  • 代理机构61200 西安通大专利代理有限责任公司;

  • 代理人安彦彦

  • 地址 710064 陕西省西安市碑林区南二环路中段

  • 入库时间 2024-02-19 07:28:30

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-10-11

    授权

    授权

  • 2019-03-19

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20181121

    实质审查的生效

  • 2019-02-22

    公开

    公开

说明书

技术领域

本发明属于车联网安全技术领域,具体涉及一种面向VANET的无证书和签名的条件匿名认证方法。

背景技术

作为移动自组网技术在交通领域的应用,车联网已成为未来智能交通系统的重要组成部分。利用车联网技术,可以改善道路通行状况,降低车辆事故,并且可以提供定制性娱乐服务,使得行车更安全、便捷、舒适。在VANET中,配备有车载单元(OBU)的车辆可以与其他人无线通信,称为V2V通信,或者与固定的路侧单元(RSU),称为V2R通信。通过V2V或V2R通信,车辆共享其交通信息,例如车辆的身份、行驶速度、方向、道路状况、位置、时间、驾驶状态等。通过接收这些共享信息,车辆能够意识到更大区域的交通状况,并且可以尽早做出反应以避免交通堵塞或交通事故。根据专用短程通信标准(DSRC),车辆需要在100-300ms内发送有关其自身交通信息的消息。为了说服向其他车辆发送消息的真实性和可靠性,车辆需要将其身份与这些消息绑定。然而,车辆的身份与驾驶员的隐私有很大关系。考虑到隐私泄露,司机可能不愿意共享自己的消息,这是VANET的主要问题。

在现有的匿名认证方案中,基于证书的匿名身份或假名机制被广泛用于保护车辆的身份免于泄露,其中证书由受信任机构(TA)生成和分发。在这种情况下,为了提供不可关联性,假名只能在有限的时间内使用。如果车辆无法及时更新其证书,则会面临隐私泄露的风险。因此,车辆必须存储许多匿名证书并定期更新,这对TA(Trusted Authority)造成了沉重的负担。此外,一些恶意车辆可能为了自己的利益滥用匿名,共享欺诈性消息。在这种情况下,VANET系统必须能够跟踪这些恶意车辆的真实身份,这意味着匿名必须是有条件的。在 Debiao He和Lei Z的匿名认证机制中,TA将VANET系统的主密钥存储在车辆配备的防篡改设备(TPD)中,使用此主密钥车辆可以自己生成匿名证书。但此方案的主要问题是对TPD的安全性假设太强。实际上,攻击者可以使用各种旁路攻击从TPD获取主密钥的大量信息。Zhang等人提出了一种分布式匿名认证方案,其中不需要将主密钥存储在TPD中。但是当RSU在首次对车辆进行验证时,需要从TA获得帮助。考虑到VANET中的车辆数量,TA可能成为车辆认证的瓶颈。2017年Maria等人提出的匿名认证方案中,它的匿名证书也是由车辆本身产生的,但是此方案中车辆的匿名身份没有更新,这意味着他们的方案不支持不可关联性。2017年Vipin Singh Sehrawat等人针对VANET提出了一种无证书和签名的匿名认证方案,这个方案可在V2V通信中提供身份验证、授权、匿名、不可否认、重放保护和撤销性。但是,该方案基于一种具有抗共谋和同态性的特殊双变量多项式,如何构造即满足安全性又满足高效率的这种多项式还没有有效的方法,因此该方案不具有可行性。

发明内容

本发明的目的是提供一种面向VANET的无证书和签名的条件匿名认证方法。

为实现上述目的,本发明所采用的技术方案如下:

一种面向VANET的无证书和签名的条件匿名认证方法,包括以下步骤:

1)参数设定:受信任机构TA初始化公共参数;具体过程如下:

设p和q为2个大素数,满足q|p-1,g是乘法群Zp*上阶为q的本原元,使得在Zp*上求解以g为底的离散对数为困难问题;另设H:为一抗碰撞Hash函数,HMACkey(m)为一安全MAC算法,其中密钥key∈{0,1}L,L为固定正整数;TA任选随机数令y0=R并计算Y0=gR;另任选计算公布p,q,g,H,HMAC(x),Y0,...,Yk为公开参数;

2)用户注册:用户车辆申请加入车联网,TA存储车辆信息ID并生成一个私钥;TA判断此私钥与存储在追踪列表中的私钥是否重复,若重复,则重新为车辆生成私钥,若不重复,则TA向车辆分发该私钥作为车辆的私钥;

3)消息生成:发送者vi将用于消息验证的相关信息附加在消息m之后,生成消息cert(m),cert(m)=ω0||t1||T1||T2||...||Tk||y"1||y"2||...||y"k||m||σ(m);

4)消息验证:当车辆vj接收到来自发送者vi的消息cert(m)时,车辆vj利用自己私钥中的对cert(m)进行验证,判断是否接受消息;

5)恶意车辆追踪:若接收消息后发现消息为恶意消息,TA对恶意车辆进行追踪,从而完成认证。

本发明进一步的改进在于,步骤2)的具体过程如下:

步骤一:TA随机选择k+2个横坐标值满足对所有 k≠j,有

步骤二:TA选择k+1对可唯一确定一个Zq上的k次拉格朗日插值多项式fi(x):

其中为拉格朗日插值系数,l=0,1,...,k;

TA将代入多项式fi(x)求解对应的

步骤三:TA利用k+1个横坐标计算其中一个插值系数

步骤四:设集合TA随机选择两个k 维向量且两个向量(z1,z2,...,zk)、(z′1,z′2,...,z′k)与向量>1,y2,...,yk)线性无关;

步骤五:TA在追踪列表List中存储记录车辆vi的真实身份>i,与List中某个已注册车辆vj存储记录中的相等,则TA重新进行步骤一至步骤四;确保不同车辆的记录值不同;若与List中某个已注册车辆vj存储记录中的不相等,则TA 通过安全信道发送车辆vi的私钥给发送者vi作为其私钥。

本发明进一步的改进在于,步骤3)的具体过程为:

步骤一:利用计算插值系数

步骤二:任选随机数r∈Zq*,车辆利用自己选定的随机数对来自TA的参数进行加密计算的结果Tl

Tl=(Yl(i))r,l=0,1,2,...k

步骤三:计算用于消息验证阶段的中间变量t1、t0和系统当前时间和t1进行级联的结果ω1

t1=gr

t0=T0>

ω1=H(t1||time)

此处time表示系统当前时间,用以防止重放攻击,x||y表示级联操作;ω1表示系统当前时间和t1进行级联的结果;

步骤四:利用求解用于消息验证阶段的参数ω0

其中,ω1表示系统当前时间和t1进行级联的结果;表示t0的逆元;

步骤五:任选随机数利用向量zl和zl'对拉格朗日系数进行计算,,加密计算的结果y″l为:

步骤六:计算用于HMAC函数的密钥key:

key=(Y0)r|L

此处x|L表示截取x最左边Lbit操作;

步骤七:计算消息m的HMAC码σ(m):

σ(m)=HMACkey(m)

发送者vi发送消息cert(m)=ω0||t1||T1||T2||...||Tk||y"1||y"2||...||y"k||m||σ(m)。

本发明进一步的改进在于,步骤3)中,用于消息验证的相关信息包括时间戳和消息的HMAC码。

本发明进一步的改进在于,步骤4)的具体过程为:

步骤一:车辆vj接收来自vi的消息cert(m)并从消息cert(m)中解析出t1,T1,T2,...,,Tk

步骤二:计算用于消息验证阶段的参数T′0

其中

步骤三:计算用于消息验证阶段的中间变量ω′1,t′0,Tk+1

ω′1=H(t1||time)

t'0=T′0>

步骤五:利用步骤三中计算的变量,计算用于消息验证阶段的参数T″0

并验证

T′0=T″0

是否成立,若不成立,则抛弃消息,若成立,继续步骤六;

步骤六:令key'=T′0|L,计算σ'(m)=HMACkey′(m),验证:

σ(m)=σ'(m)

是否成立,若成立则接收消息,否则抛弃消息。

本发明进一步的改进在于,步骤5)的具体过程如下:

接收消息后,若cert(m)=ω0||t1||T1||T2||...||Tk||y"1||y"2||...||y"k||m||σ(m)被发现是恶意消息,则接收者将cert(m)提供给TA;TA执行以下过程:

步骤一:计算用于验证车辆是否是恶意车辆的参数u:

步骤二:对List中的每一条记录IDi,分别计算用于验证车辆是否是恶意车辆的参数u':

并比较

u=u′

是否成立,若成立,则IDi为恶意车辆。

与现有的匿名认证方案相比,本发明的有益效果是:

本发明只有TA能产生车辆的私钥,即本方法基于离散对数的困难问题,已经注册的车辆无法利用从TA获得的私钥再次产生一个私钥,保证了私钥的可靠性;由本发明构造的方法可知,车辆发送的消息中没有包含与用户身份相关的任何内容,从而不会泄露用户的身份信息,说明本方法满足匿名性;当车辆发送消息时,只能使用TA给予的密钥,如果车辆按照消息生成算法生成了合法消息为恶意的,则可由本文的追踪算法追踪出恶意车辆;车辆发送消息时,每次都会使用不同的随机数,所以不同消息之间是无法区分的,即攻击者不能关联同一车辆发送的不同消息;本方法中车辆不能否认自己所发的任何合法消息,即满足不可否认性。同时本发明能够抵抗重放攻击,因为车辆在发送消息时都会在消息中加入时间戳。本发明没有使用证书和签名,不存在复杂的证书管理问题,具有效率高、实用性强的优点,并且满足私钥可靠性、匿名认证性、可追踪性、不可关联性、不可否认性和可撤销性等安全属性。

附图说明

图1是本发明的流程图。

具体实施方式

下面结合附图和具体实施方式对本发明进行详细说明。

参见图1,本发明包括系统参数设置、用户注册、消息生成、消息验证和恶意车辆追踪五个部分,具体步骤如下:

参数设定:受信任机构(TA)初始化公共参数;具体过程如下:

设p和q为2个大素数,满足q|p-1,g是乘法群Zp*上阶为q的本原元,使得在Zp*上求解以g为底的离散对数为困难问题。另设H:为一抗碰撞Hash函数,HMACkey(m)为一安全MAC算法,其中密钥key∈{0,1}L,L为固定正整数。TA任选随机数令y0=R并计算Y0=gR。另任选计算公布p,q,g,H,HMAC(x),Y0,...,Yk为公开参数。除非明确指出,本发明中所有算术运算均为模p运算。

用户注册:用户车辆申请加入车联网,TA存储车辆信息ID并随机生成一个私钥。TA判断此私钥与存储在追踪列表中的私钥是否重复,若重复,则重新为车辆生成私钥;若没有重复,则TA向车辆分发该私钥,作为车辆的私钥,具体过程如下:

步骤一:TA随机选择k+2个横坐标值满足对所有 k≠j,有

步骤二:TA选择k+1对可唯一确定一个Zq上的k次拉格朗日插值多项式fi(x):

其中为拉格朗日插值系数,l=0,1,...,k

TA将代入多项式fi(x)求解对应的

步骤三:TA利用k+1个横坐标计算插值系数

步骤四:设集合TA随机选择两个k 维向量且两个向量(z1,z2,...,zk)、(z′1,z′2,...,z′k)与向量>1,y2,...,yk)线性无关。

TA在追踪列表List中存储记录车辆vi的真实身份IDi,与List中某个已注册车辆vj存储记录中的相等,则TA重新进行上述过程确保不同车辆的记录值不同。若若与List中某个已注册车辆vj存储记录中的不相等,则TA通过安全信道发送车辆vi的私钥给发送者vi作为其私钥。

消息生成:设发送者vi准备发送消息m,则车辆vi利用其私钥ski对消息进行处理,即执行如下计算。

步骤一:利用计算插值系数λl(i)

步骤二:任选随机数r∈Zq*,计算车辆利用自己选定的随机数对来自TA的参数进行加密计算的结果Tl

Tl=(Yl(i))r,l=0,1,2,...k

步骤三:计算计算用于消息验证阶段的中间变量t1、t0以及ω1

t1=gr

t0=T0>

ω1=H(t1||time)

此处time表示系统当前时间,用以防止重放攻击,x||y表示级联操作。ω1表示系统当前时间和t1进行级联的结果;

步骤四:利用求解用于消息验证阶段的参数ω0

其中,ω1表示系统当前时间和t1进行级联的结果;表示t0的逆元。

步骤五:任选随机数利用向量zl和zl'对拉格朗日系数λl(i)进行加密计算,加密计算的结果y″l为:

步骤六:计算用于HMAC函数的密钥key:

key=(Y0)r|L

此处x|l表示截取x最左边L>

步骤七:计算消息m的MAC码σ(m):

σ(m)=HMACkey(m)

发送者vi发送使用消息生成算法生成的消息cert(m),即>0||t1||T1||T2||...||Tk||y"1||y"2||...||y"k||m||σ(m)。

消息验证:当车辆vj接收到来自发送者vi的消息cert(m)时,车辆vj利用自己私钥中的对cert(m)进行验证。

步骤一:车辆vj从消息发送者发送的消息cert(m)中解析出t1,T1,T2,...,,Tk

步骤二:计算用于消息验证阶段的参数T′0

其中

步骤三:计算用于消息验证的相关参数ω′1,t′0,Tk+1

ω′1=H(t1||time)

t'0=T′0>

步骤五:计算用于消息验证阶段的参数T″0

并验证

T′0=T″0

是否成立,若不成立,则抛弃消息,若成立,继续步骤六。

步骤六:令key'=T′0|L,计算σ'(m)=HMACkey'(m),验证:

σ(m)=σ'(m)

是否成立,若成立则接收消息,否则抛弃消息。

恶意车辆追踪:若接收消息后发现消息为恶意消息,TA对恶意车辆进行追踪;具体过程如下:

接收消息后,若cert(m)=ω0||t1||T1||T2||...||Tk||y"1||y"2||...||y"k||m||σ(m)被发现是恶意消息,则接收者将cert(m)提供给TA。TA执行以下过程:

步骤一:计算用于验证车辆是否是恶意车辆的参数u:

步骤二:对List中的每一条记录IDi,分别计算用来验证车辆是否是恶意车辆的参数u':

并比较

u=u′

是否成立,若成立,则IDi为恶意车辆;从而完成认证。

为了验证方法的效率,采用实验模拟测试了用户注册、消息生成以及消息验证三个过程的时间性能。实验设置的系统参数p的大小为1024bit。实验随机选择了6组数据进行验证。由表1可知,用户在消息产生阶段的平均耗时小于6ms;在消息验证阶段的平均耗时小于10ms,可以满足实际需求。1024bit长度的系统参数也完全满足当前安全要求。实验结果表明本发明的应用是可行的。

表1实验数据(单位:s)

本发明中各个参数的含义,详见表2。

表2本发明中各个参数含义

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号