一种车载自组网中基于身份的匿名认证方法与流程

文档序号:15626068发布日期:2018-10-09 23:00阅读:254来源:国知局

本发明针对车载自组织网络中的身份认证问题,提出了一种基于身份的匿名认证方法。



背景技术:

车载自组网(vehicleadhocnetwork,英文简称为vanet)作为移动自组织网络(manets)和无线传感器网络(wsns)在智能交通领域中的具体应用,是一种新型的多跳移动无线通信网络,近年来已经成为了学术界和工业界的共同研究热点,具有改善民生的重大战略意义。车载自组织网络是由车辆单元节点(onboardunit,英文简称为obu)和路边基础设施单元节(roadsideunit,英文简称为rsu)组成。车辆单元节点在高速行驶过程中与其他车辆单元节点(vehicletovehicle,v2v)或者路旁基础设施单元节点(vehicletoinfrastructure,v2i)相互通信,从而构建成一个自组织的、分布式、部署方便、费用低廉、结构开放的车辆间通信网络。

随着信息技术的快速发展,vanet中各类应用也不断丰富,然而这些应用在保障公众的行车安全和提高交通利用率的同时也衍生出一系列问题和挑战,特别是通信过程中的信息安全和隐私保护问题。而网络安全是部署vanet不可或缺的基础和前提,隐私保护是vanet隐私保护研究的基础问题,也是信息安全领域所关注的交叉内容。近年来研究表明,在隐私和信息安全的双重需求下,匿名认证已成为保护车载自组网安全的基本机制,是当前的研究热点,这也是制约vanet进一步实用化和健康长远发展必须要突破的瓶颈问题。

近些年来,vanet隐私保护领域涌现了许多文献,提出了大量挑战性的问题和富有创造性的方案。2005年,hubaux等人指出了vanet中的安全和隐私挑战,文献[hubaxjp,capkuns,luoj.thesecurityandprivacyofsmartvehicles[j].ieeesecurity&privacymagazine,2004,2(3):49-55.]引入了电子车牌作为车辆唯一识别,并指出通过部署pki机制来认证每一条消息和对实体进行双向认证。2006年,raya等人给出了一个经典方案——hab(hugeanonymouskeysbased)[rayam,hubauxj.p.thesecurityofvehicularadhocnetworks[c]//procofacm.newyork:acm,2005:39-68.]协议:通过年审或出厂时在车辆上预装大量私钥(约43800个)及对应的匿名证书(生存期很短),每次发送消息时,随机在候选证书中挑选一个,用其对应私钥对该消息进行签名,从而有效实现匿名性。2007年,papadimitratos等人[papadimitratosp,buttyanl,hubauxjp,etal.architectureforsecureandprivatevehicularcommunications[c]//procofieeeconfonitstelecommunications.piscataway,nj:ieee,2007:1-6.]提出了一个经典的vanet安全与隐私保护的体系结构文献。同年,lin等人基于群签名提出了里程碑式的gsb方案[xiaodonglin,xiaotingsun,xiaoyuwang,chenxizhang,pin-hanho,xueminshen.tsvc:timedefficientandsecurevehicularcommunicationswithprivacypreserving.ieeetrans.wirelesscommunications7(12-1):4987-4998(2008)],该方案只需存储一个群公钥和一个私钥即可,能有效节省存储开销,但其验证压力较大。2008年lu等提出了另一种解决隐私保护问题的ecpp方案[rongxinglu,xiaodonglin,haojinzhu,pin-hanho,xueminshen:ecpp:efficientconditionalprivacypreservationprotocolforsecurevehicularcommunications.infocom2008:1229-1237],他们假定车辆和rsus之间能够动态地合作该方案可以减小计算开销,但对客车小型和不可否认性缺乏考虑。为了降低rsu的可信度,杨涛,胡建斌等人提出一个基于代理重签名的vanet消息认证方案[杨涛,胡建斌,陈钟一种可追溯的车载自组网隐私保护认证协议[j]计算机工程2013,35(20):176-183],可信认证中心(ta)授权rsu做一个半可信的代理者,将obu签名的消息进行代理重签名,这样不但可以保护原始签名者obu的基本信息,而且事后出现纠纷,由ta和rsu合作可以得到消息签名者的真实身份。但该方案依赖于rsu的可靠性,若rsu是不诚实的或者被攻击者恶意攻击并控制,将导致隐私信息泄露、密钥丢失等严重后果。



技术实现要素:

本发明的目的是:满足车辆节点与路边单元节点间的身份认证的需求,而且确保了车辆节点之间的身份认证。

为了达到上述目的,本发明的技术方案是提供了一种车载自组网中基于身份的匿名认证方法,其特征在于,包括以下步骤:

第一步、可信中心ta在循环加法群g1上选取两个随机数s0、sx作为系统的密钥,并予以保密,为不包含零的有限域,可信中心ta再计算系统的公开密钥qx、q0,q0=s0p∈g1,qx=sxp∈g1,p为循环加法群g1的生成元,然后公开公共参数params,params=<g1,g2,q,e,p,qx,q0,h1,h2>,式中:g2为循环乘法群;循环加法群g1和循环乘法群g2的阶为大素数q;e为双线性映射,e:g1×g1→g2;h1及h2为预先定义的单向哈希函数,h1:{0,1}*,h2:

第二步、在车辆注册登记阶段,每个车辆节点在可信中心ta注册登记时,将获得唯一的身份标识号,将第i个车辆节点的身份标识号定义为idi,则有idi∈{0,1}*,然后可信中心ta根据系统密钥s0、公共参数params以及车辆身份号计算每个车辆节点的密钥对,第i个车辆节点的密钥对定义为(didi,qidi),并将计算得到密钥对颁发给对应的车辆节点,收到密钥对的车辆节点为注册的车辆节点;

第三步、可信中心ta为每个路边基础设施节点rsu颁发唯一的身份标识号,其中,将第x个路边基础设施节点rsu的身份标识号定义为idx,idx∈{0,1}*,然后可信中心ta根据系统密钥sx、公共参数params以及路边基础设施节点rsu的身份标识号计算每个路边基础设施节点rsu的密钥对,并将计算得到密钥对颁发给相应的路边基础设施节点rsu,将第x个路边基础设施节点rsu的密钥对定义为(didx,qidx),

第四步、进行身份认证,包括注册的车辆节点与路边基础设施节点rsu的身份认证过程以及注册的车辆节点相互之间的身份认证过程,其中:

第x个路边基础设施节点rsu与第i个注册的车辆节点的身份认证过程包括以下步骤:

步骤4a.1、第x个路边基础设施节点rsu选取的一个随机数并计算t=rqidx,v=rdidx和w=h2(fx(v)||fx(t)||t1),其中:fx(·)代表一个表示循环加法群g1上点的横坐标的单项函数,t1是与信息发送时间有关的时间数,用以防止重放攻击;然后第x个路边基础设施节点rsu在其有效通信区域范围内周期性地广播一条消息{t,v,t1,w};

步骤4a.2、当第i个注册的车辆节点进入第x个路边基础设施节点rsu区域内时,收到第x个路边基础设施节点rsu广播的消息{t,v,t1,w};

步骤4a.3、完成对第x个路边基础设施节点rsu的身份认证,根据收到的消息{t,v,t1,w}计算e(v,qx)及e(t,p),并判断e(v,qx)与e(t,p)是否相等,如果相等,则表明第x个路边基础设施节点rsu身份认证通过,即第i个注册的车辆节点认证了第x个路边基础设施节点rsu的身份真实有效,转到步骤4a.4,否则第x个路边基础设施节点rsu认证失败。

步骤4a.4、第i个注册的车辆节点选取随机数计算m=kqidi、n=kdidi和c=h2(fx(m)||fx(n)||t1||t2)的值,然后第i个注册的车辆节点回执一条认证请求消息{m,n,t2,c},其中t2是与信息发送时间有关的时间数,用以防止重放攻击;

步骤4a.5、第x个路边基础设施节点rsu收到第i个注册的车辆节点发来的认证请求消息{m,n,t2,c};。

步骤4a.6、第x个路边基础设施节点rsu对第i个注册的车辆节点进行身份认证,根据收到的消息计算e(n,q0)及e(m,p),并判断e(n,q0)与e(m,p)是否相等,如果相等,则表明第i个注册的车辆节点身份认证通过,即第x个路边基础设施节点rsu认证了第i个注册的车辆节点的身份真实有效,否则第i个注册的车辆节点认证失败;

第i个注册的车辆节点与第j个注册的车辆节点的身份认证过程包括以下步骤:

步骤4b.1、第i个注册的车辆节点选取一个随机数计算t′=r′qidi、v′=r′didi和w′=h2(fx(v′)||fx(t′)||t3),然后发送一条消息{t′,v′,t3,w′}给第j个注册的车辆节点,其中t3是与信息发送时间有关的时间数,用以防止重放攻击;

步骤4b.2、第j个注册的车辆节点收到第i个注册的车辆节点发来的消息{t′,v′,t3,w′};

步骤4b.3、第j个注册的车辆节点对第i个注册的车辆节点的身份认证,根据收到的消息计算e(v′,q0)及e(t′,p),并判断e(v′,q0)与e(t′,p)是否相等,如果相等,则表明第i个注册的车辆节点的身份认证通过,即第j个注册的车辆节点认证了第i个注册的车辆节点的身份真实有效,转到步骤4b.4,否则第i个注册的车辆节点认证失败;.

步骤4b.4、第i个注册的车辆节点身份认证通过后,第j个注册的车辆节点选取随机数计算m′=k′qidj、n′=k′didj和c′=h2(fx(m′)||fx(n′)||t3||t4)的值,(didj,qidj)为第j个注册的车辆节点的密钥对,然后第j个注册的车辆节点回执一条认证请求消息{m′,n′,t4,c′},其中t4是与信息发送时间有关的时间数,用以防止重放攻击;

步骤4b.5、第i个注册的车辆节点收到第j个注册的车辆节点发来的认证请求消息{m′,n′,t4,c′};

步骤4b.6、第i个注册的车辆节点对第j个注册的车辆节点进行身份认证,根据收到的认证请求消息{m′,n′,t4,c′}计算e(n′,q0)及e(m′,p′),并判断e(n′,q0)与e(m′,p′)是否相等,如果相等,则表明第j个注册的车辆节点身份认证通过,即第i个注册的车辆节点认证了第j个注册的车辆节点的身份真实有效,否则第j个注册的车辆节点认证失败。

优选地,在所述步骤4a.2之后,并所述步骤4a.3之前,还包括:第i个注册的车辆节点根据收到消息{t,v,t1,w}后重新计算h2(fx(v)||fx(t)||t1)并判断计算得到的结果与收到的消息{t,v,t1,w}中的w是否相等,若相等,则证明消息完整性检测无误,转到步骤4a.3,否则丢弃该消息。

优选地,在所述步骤4a.5之后,并所述步骤4a.6之前,还包括:第x个路边基础设施节点rsu重新计算h2(fx(m)||fx(n)||t1||t2),并判断计算得到的结果与收到{m,n,t2,c}中的c是否相等,若相等,则证明消息完整性检测无误,转到步骤4a.6,否则丢弃该消息。

优选地,在所述步骤4b.2之后,并所述步骤4b.3之前,还包括:第j个注册的车辆节点根据收到消息{t′,v′,t3,w′}的重新计算h2(fx(v′)||fx(t′)||t3),并判断与收到的消息{t′,v′,t3,w′}中的w′是否相等,若相等,则证明消息完整性检测无误,转到步骤4b.3,否则丢弃该消息。

优选地,在所述步骤4b.5之后,并所述步骤4b.6之前,还包括:第i个注册的车辆节点重新计算h2(fx(m′)||fx(n′)||t3||t4),并判断计算得到的值与收到的认证请求消息{m′,n′,t4,c′}中的c′是否相等,若相等,则证明消息完整性检测无误,转到步骤4b.6,否则丢弃该消息。

本发明提出了一种新的身份匿名认证思想,进而提出一种新的车载网基于身份的匿名认证方案,利用基于身份的密码技术,减少了系统管理公钥证书的工作量和对节点证书认证的代价,不仅满足了车辆节点与路边单元节点间的身份认证的需求,而且确保了车辆节点之间的身份认证。本发明的主要特点有:

1)在保护了身份隐私的同时,不仅满足了车辆节点与路边单元节点间的身份认证的需求,而且确保了车辆节点之间的身份认证。

2)本发明利用基于身份的密码技术,减少了系统管理公钥证书的工作量和对节点证书认证的代价。

3)在安全性和复杂性方面,本发明不仅易于实现,而且安全可靠并具有较低的计算复杂度及通信开销。

具体而言,本发明具有如下优点:

1)正确性

在车辆节点与路边基础设施节点的身份相互认证过程中,路边基础设施节点与车辆节点在彼此收到认证消息后,对彼此身份的认证过程是否真实有效的判断是正确的;在车辆节点间的身份相互认证过程中,两个车辆节点对彼此身份认证过程是否真实有效的判断是正确的。

2)安全性

通信节点通过认证过程来确保与之通信的节点身份真实可靠实现了双向认证性;本发明提出的匿名认证方案在保证了身份认证的同时,也确保了节点的身份隐私性,因此具有匿名性;本发明在通信节点发送和回执消息时添加了一些与消息发送有关的时间参数,这样路边基础设施节点和车辆节点可以通过验证彼此发送消息中的时间数的新鲜性来判断是否存在重放攻击;本发明能够确保认证过程中任何消息在传递过程中都不被未经授权的更改,保证信息的完整性,同时也能够验证信息是否真实有效。

具体实施方式

下面结合具体实施例,进一步阐述本发明。应理解,这些实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本申请所附权利要求书所限定的范围。

本发明提供的一种车载自组网中基于身份的匿名认证方法采用了如下概念:

1)双线性映射

设g1和g2分别表示两个阶是大素数q的循环加法群和循环乘法群,p为g1的一个生成元,是不包含零元的有限域。如果映射e:g1×g1→g2满足下列性质,则称之为双线性对。

(1)双线性性:以及等式e(ap,bq)=e(p,q)ab成立。

(2)非退化性:使得e(p,q)≠1。

(3)可计算性:存在有效的算法计算e(p,q)。

2)困难问题

椭圆曲线离散对数问题(ecdlp):给定素数p和椭圆曲线e,对q=kp,已知p、q的情况下求出小于p的正整数k。

3)网络模型

采用典型的vanet网络模型,以下可信中心用ta表示、路边基础设施节点用rsu表示、车辆单元节点用obu表示。ta在系统中充当完全可信的角色,拥有最高管理权限。rsu通过安全信道与ta进行连接。obu是车载自组织网中的最基础实体,相当于通信系统中的移动终端。

基于上述定义,本发明提供的一种车载自组网中基于身份的匿名认证方法的总体思路为:当obu进入rsu区域范围内时,obu利用公共参数及私有消息完成车辆身份的匿名认证,且只有拥有授权的合法用户才可以正确地完成这一过程。本发明在保护了车辆的身份隐私信息的同时,不仅满足了车辆节点与路边单元节点间的身份认证的需求,而且确保了车辆节点之间的身份认证。方案具体描述如下。

一)参数设置

(1)选取两个阶为大素数q的循环加法群g1和循环乘法群g2,p为循环加法群g1的生成元,从而形成一个双线性映射e:g1×g1→g。

(2)定义2个单向哈希函数:h1:{0,1}*,h2:并选取fx(·)代表一个表示循环加法群g1上点的横坐标的单项函数。

(3)ta在循环加法群g1上选取两个随机数作为系统的密钥,并予以保密。相应地ta计算系统的公开密钥qx、q0,q0=s0p∈g1,qx=sxp∈g1,然后公开公共参数params,params=<g1,g2,q,e,p,qx,q0,h1,h2>。

二)系统初始化

(1)在车辆注册登记阶段,每个obu在ta注册登记时,将获得唯一的身份标识号,将第i个obu的身份标识号定义为idi,则有idi∈{0,1}*,然后ta根据系统密钥s0、公共参数params以及车辆身份号计算每个obu的密钥对,第i个obu的密钥对定义为(didi,qidi),并将计算得到密钥对颁发给对应的obu,收到密钥对的车辆节点为注册的obu。

(2)ta为每个rsu颁发唯一的身份标识号,将第x个rsu的身份标识号定义为idx,idx∈{0,1}*,然后ta根据系统密钥sx、公共参数params以及rsu的身份标识号计算每个rsu的密钥对,并将计算得到密钥对颁发给相应的rsu,将第x个rsu的密钥对定义为(didx,qidx),

三)基于身份匿名方案

1)obu与rsu的身份认证

当obu进入某个rsu区域范围内时,节点双方需要进行通信,因此就必须先完成相应的身份认证,即通信双方需要提供可信中心授权的合法身份信息凭证,用以完成相应的身份认证过程,本发明基于身份技术的思想提出了双向匿名认证方案,第x个rsu(以下简称为rx)与第i个obu(以下简称为vi)的身份认证过程,具体过程如下:

步骤1、在车载自组织网络环境中,rx选取的一个随机数并计算t=rqidx,v=rdidx和w=h2(fx(v)||fx(t)||t1),其中t1是与信息发送时间有关的时间数,用以防止重放攻击;然后rx在其有效通信区域范围内周期性地广播一条消息,其消息格式为{t,v,t1,w}。

步骤2、当vi进入rx区域内时,在收到rx节点广播的消息后,首先需要对消息的完整性进行检测,即根据收到消息的重新计算h2(fx(v)||fx(t)||t1),并判断计算结果与收到的w是否相等,若相等,则证明消息完整性检测无误,转到步骤3,否则丢弃该消息。

步骤3、vi在完成消息的完整性检测后,需要完成对rx的身份认证,即根据收到的消息计算e(v,qx)及e(t,p),并判断e(v,qx)与e(t,p)是否相等,如果相等,则表明rx身份认证通过,即vi认证了rx的身份真实有效,转到步骤4,否则rx认证失败。

步骤4、rx身份认证通过后,vi选取随机数kz*q,计算m=kqidi、n=kdidi和c=h2(fx(m)||fx(n)||t1||t2)的值,然后vi回执一条认证请求消息{m,n,t2,c},其中t2是与信息发送时间有关的时间数,用以防止重放攻击。

步骤5、rx收到vi发来的认证请求消息{m,n,t2,c}后,首先需要对消息的完整性检进行检测,即重新计算h2(fx(m)||fx(n)||t1||t2),并判断计算得到的结果与收到{m,n,t2,c}中的c是否相等,若相等,则证明消息完整性检测无误,转到步骤6,否则丢弃该消息。

步骤6、rx在完成消息的完整性检测后,需要对vi进行身份认证,即收到的消息计算e(n,q0)及e(m,p),并判断e(n,q0)与e(m,p)是否相等,如果相等,则表明vi身份认证通过,即rx认证了vi的身份真实有效,否则vi认证失败。

上述认证过程完成后,则表明vi与rx完成了相互认证过程,通信双方节点均为授权的合法用户,且在这一过程中双方节点都没有暴露出自己的真实身份信息,因此具有完全匿名性。

2)车辆节点间的身份认证

车载自组网的通信包含两个部分,一部分是车辆节点与路边单元节点之间的通信(v2i),另一部分是车辆节点之间的通信(v2v)。当obu与rsu完成相应的身份认证后,考虑到如下的应用场景:一个特定群组内的某个车辆成员试图保护自己的隐私而不想公开自己与该群组的关系,同时又必须与该群组的某个成员进行相互认证。例如,在一个开往某俱乐部的车流中,该俱乐部成员需要相互认证,但又不希望非俱乐部成员知道他们的俱乐部身份;又如,一些交通执法机构成员在执法过程中需要进行相互认证,但不希望别人发现其执法者的真实身份。

因此在某个rsu区域内,车辆节点进行通信时需要进行身份认证,这里假设第i个注册的车辆节点(以下简称为vi)与第j个注册的车辆节点(以下简称为vj)是位于rx区域内的两个成员车辆节点,相互认证的详细过程如下:

步骤1、当vi需要与vj通信时,vi选取一个随机数计算t′=r′qidi、v′=r′didi和w′=h2(fx(v′)||fx(t′)||t3),然后发送一条消息{t′,v′,t3,w′}给vj,其中t3是与信息发送时间有关的时间数,用以防止重放攻击。

步骤2、当vj收到vi发来的消息{t′,v′,t3,w′}后,首先对消息的完整性进行检测,即根据收到消息的重新计算h2(fx(v′)||fx(t′)||t3),并判断与收到的消息{t′,v′,t3,w′}中的w′是否相等,若相等,则证明消息完整性检测无误,转到步骤3,否则丢弃该消息。

步骤3、vj在完成消息的完整性检测后,需要完成对vi的身份认证,即根据收到的消息计算e(v′,q0)及e(t′,p),并判断e(v′,q0)与e(t′,p)是否相等,如果相等,则表明vi的身份认证通过,即vj认证了vi的身份真实有效,转到步骤4,否则vi认证失败。

步骤4、vi身份认证通过后,vj选取随机数计算m′=k′qidj、n′=k′didj和c′=h2(fx(m′)||fx(n′)||t3||t4)的值,(didj,qidj)为vj的密钥对,然后vj回执一条认证请求消息{m′,n′,t4,c′},其中t4是与信息发送时间有关的时间数,用以防止重放攻击。

步骤5、vi收到vj发来的认证请求消息{m′,n′,t4,c′}后,首先需要对消息的完整性进行检测,即重新计算h2(fx(m′)||fx(n′)||t3||t4),并判断计算得到的值与收到的认证请求消息{m′,n′,t4,c′}中的c′是否相等,若相等,则证明消息完整性检测无误,转到步骤6,否则丢弃该消息。

步骤6、vi在完成消息的完整性检测后,需要对vj进行身份认证,即根据收到的消息计算e(n′,q0)及e(m′,p′),并判断e(n′,q0)与e(m′,p′)是否相等,如果相等,则表明vj身份认证通过,即vi认证了vj的身份真实有效,否则vj认证失败。

上述认证过程完成后,则认为vi与vj彼此通过了身份认证,由于这一过程中,双方都没有获知消息发送方的真实身份信息,因此具有完全匿名性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1