本发明涉及车联网通信,具体涉及基于车辆信任度的车联网身份认证方法、设备及存储介质。
背景技术:
1、随着无线通信和移动的计算技术的发展,越来越多的车辆连接到互联网,推动传统车辆自组织网络(vanets)向车联网(iov)演进。在车联网环境中,通信和信息交换通常涉及车辆到车辆、车辆到基础设施、车辆到行人、车辆到云等。这种信息交换有助于建立一个更加智能的交通系统。然而,这种通信通常发生在无线和不安全的网络上,因此存在监视通信信道并对车辆发动一些恶意攻击的行为,例如未经授权的访问和假冒攻击。这些攻击会导致授权用户的隐私泄露甚至人身安全,需要设计安全高效的解决方案以保护在这种开放网络上传输的数据。
2、一种常用的解决方案是应用认证和密钥协商协议,其允许车辆和其它单位彼此认证并就共享会话密钥达成一致以促进后续的安全通信。但是,车联网环境中通信的动态性质加剧了确保安全性的挑战,针对单服务器环境设计的常规协议将不再适合。而在多服务器架构中,在向可信机构(ta)注册之后,车辆可以访问不同通信域中的多个服务器或其他网络实体,而无需重新注册过程或任何在线第三方协助。大多数多服务器身份验证协议使用复杂的加密工具或操作。然而,现实中无法实现所有iov设备在计算上都有加密复杂且昂贵的解决方案。因此,设计一种安全、高效的多服务器身份认证协议对于车联网环境具有重要意义。
技术实现思路
1、为解决现有车联网身份认证方案无法兼顾高身份认证效率和低计算开销的技术问题,本发明提供了基于车辆信任度的车联网身份认证方法、设备及存储介质。
2、为实现上述目的,本发明提供如下技术方案:
3、本发明公开一种基于车辆信任度的车联网身份认证方法,包括以下步骤,即s1~s4。
4、s1.将一个路侧单元通信范围内的所有车辆设定为一个组,计算组内车辆的信任值并选取信任值最大的车辆作为头车。
5、s2.头车与量子安全云之间进行身份验证并协商产生量子组密钥。
6、s3.头车与组内的其余车辆进行身份验证,向其余车辆下发量子组密钥。
7、s4.组内的任意车辆在请求云服务时使用量子组密钥对消息进行加密,云服务平台使用量子组密钥对接收的消息进行解密,并在区块链中查找消息中头车的匿名身份,根据查找结果选择是否向车辆提供服务。
8、作为上述方案的进一步改进,步骤s1包括以下具体步骤,即s11~s13。
9、s11.组内所有车辆将自身的匿名身份和选取头车的请求发送给路侧单元,路侧单元接收到请求之后在区块链中查询所有车辆的信任偏移量,并将信任偏移量发送给量子安全云。
10、s12.量子安全云将每辆车的信任偏移量进行累积计算,得到所有车辆的信任值,选取信任值最大的车辆作为头车,并将头车的匿名身份发送给路侧单元。
11、s13.路侧单元在组内公布头车的选取结果。
12、作为上述方案的进一步改进,步骤s11中,区块链中所有车辆的信任偏移量获取方法包括以下步骤,即(1)~(7)。
13、(1)、假设前方发生事件,参考集内的车辆将消息发送给后车,消息接收方将所有消息分为{m1,m2,…,mj,…,mj};其中mj表示报告事件 δj的消息组,1≤j≤j,j表示发生的事件总数;每个后车前方一定距离内的其余车辆作为该后车的参考集。
14、(2)、后车计算消息的可信度,并生成可信度集 c;可信度计算公式如下:
15、
16、式中,为车辆k发送的消息在消息组mj中的可信度;为发送消息的车辆k与事件 δj之间的距离; b和 γ是两个预设参数,分别用于控制消息可信度的下界和变化率; f表示发送消息的车辆的属性值,根据车辆类型预设得到; e表示自然对数的底数;若车辆k没有报告事件 δj,则=0。
17、(3)、后车根据贝叶斯公式计算每个事件 δj的聚合可信度 p( δj/ c),若 p( δj/ c)超过预设阈值 thr,接收器将此事件视为真,反之则视为假;贝叶斯公式如下:
18、
19、式中,为事件 δj的补事件,,; p( δj)是事件 δj的先验概率;表示车辆k发送的消息在事件 δj对应消息组中的可信度。
20、(4)、后车对正确报告事件的消息生成正面评级,对错误报告事件的消息生成负面评级。
21、(5)、车辆定期将评级上传到附近的路侧单元,评级的格式为( vid1, vid2, m k, rating),其中 vid1 和vid2分别为信息接收方和发送方的车辆识别号; m k为车辆 k发送的消息的标识符; rating为−1或+1,表示不可信或可信的消息。
22、(6)、路侧单元对车辆上传的评级进行加权聚合,获得车辆消息的信任偏移量,计算公式如下:
23、
24、式中,为车辆k对事件 δj的信任偏移量,; α和 β为正负评级的个数, α和 β的权重分别为 θ1和 θ2,其中,, f(·)用于控制少数群体评级的敏感性,且 f( α)= α2, f( β)= β2。
25、(7)、路侧单元将计算得到的信任偏移量放入集合 o中,并将集合 o添加到区块链中。
26、作为上述方案的进一步改进,步骤s2中,头车与量子安全云进行身份验证之前,还包括初始化阶段和注册阶段。
27、在初始化阶段,量子安全云产生系统参数,具体过程如下,即s2a1~s2a2。
28、s2a1.量子安全云选择一条椭圆曲线y2=x3+ax+b,即eq(a,b),且4a3+27b2≠0;然后选择生成元 g,选择量子随机数s作为私钥,公钥为 ppub=s· p’, p’为生成元 g的 p阶的生成点, p为质数。
29、s2a2.量子安全云选择两个单向哈希函数和;其中上标 l表示哈希函数的输出长度。
30、在注册阶段,车辆i通过安全通道向量子安全云注册登记,具体过程如下即s2b1~s2b3。
31、s2b1.车辆i选择自身的真实身份vidi、密码pwi,并通过安全通道发送给量子安全云。
32、s2b2.量子安全云收到请求后,生成两个随机参数si、ri,并生成时间戳ti,然后计算车辆私钥vi、 ri、和匿名身份aidi,并将车辆的匿名身份aidi发送给车辆;其中,车辆私钥vi=h1(vidi║si║s); ri= ri· p’;;匿名身份;量子安全云将车辆的匿名身份aidi发给车辆i,同时将aidi记录在区块链中。
33、s2b3.车辆i收到匿名身份aidi后,将匿名身份aidi秘密保存。
34、作为上述方案的进一步改进,步骤s2包括以下具体步骤,即s21~s27。
35、s21.头车向量子安全云发起身份认证请求,计算 qi并生成时间戳t1,并将组包消息 m发送到路侧单元。
36、其中, qi= h(pfk)⊕aidi; m={ qi, h( qi║t1║tag)}; h(·)表示哈希算法;车辆的安全存储芯片中存储有多个预置密钥pfk,tag表示预置密钥pfk的标签;
37、s22.路侧单元通过检验时间戳t1的时效性来检验组包消息 m的有效性,然后将组包消息 m发送给量子安全云;
38、s23.量子安全云验证时间戳t1后,对比和是否相等以校验消息的完整性,若消息不匹配时,则退出会话,然后量子安全云计算出车辆的匿名身份,并告知路侧单元,由路侧单元在区块链上查询匿名身份aidi以验证其合法性,若合法则将aidi存放在区块链。
39、其中,、和分别为量子安全云接收到的 qi、t1和tag。s24.量子安全云和云服务平台根据bb84协议来协商量子组密钥,量子安全云与路侧单元协商量子密钥qk。
40、s25.量子安全云使用量子密钥qk加密量子组密钥,并发送给路侧单元;量子安全云使用预置密钥pfk将量子组密钥加密,将加密后的消息和标签tag一同发送给头车。
41、s26.路侧单元接收到含有量子组密钥的加密消息后,使用量子密钥qk进行解密得到量子组密钥,用于后续路侧单元与车辆之间的消息加密。
42、s27.头车接收到含有量子组密钥的加密消息后,根据标签tag索引出对应的预置密钥pfk,对消息进行解密,得到量子组密钥。
43、作为上述方案的进一步改进,步骤s3中,在头车与组内其余车辆进行身份验证之前,车辆域内的密钥生成中心还生成组公钥gpk和组私钥gsk;每个车辆需要向密钥生成中心注册,密钥生成中心根据组公钥gpk和组私钥gsk生成每个车辆的签名密钥sk。
44、作为上述方案的进一步改进,步骤s3包括以下具体步骤,即s31~s33。
45、s31.组内的其余车辆生成群签名,并将群签名及其对应的消息msg发送给头车。
46、s32.头车验证接收到的消息msg的时效性,并在验证合格时校验对应的群签名,从而判断群签名是否有效;当群签名有效时,组内车辆认证完成,并执行步骤s33。
47、s33.头车以v2v通讯的方式向组内群签名认证成功的成员下发量子组密钥;其中,头车使用组公钥gpk加密量子组密钥,并发送给组内其余车辆,组内其余车辆使用各自的签名密钥sk解密出量子组密钥。
48、作为上述方案的进一步改进,步骤s4的具体过程为:组内的任意车辆在请求云服务时,使用量子组密钥将请求服务的命令quest、头车匿名信息和时间戳t4加密,并将加密完成后的消息发送给云服务平台;云服务平台接收到消息后使用量子组密钥进行解密,并在区块链中查找头车的匿名身份,若在区块链中找到头车的匿名身份,则可以向车辆提供服务,反之则拒绝提供服务。
49、本发明还公开一种计算机设备,包括处理器和存储器,存储器存储有能够被处理器执行的计算机程序,处理器可执行计算机程序以实现上述基于车辆信任度的车联网身份认证方法。
50、本发明还公开一种存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述基于车辆信任度的车联网身份认证方法。
51、与现有技术相比,本发明的有益效果是:
52、1、本发明公开的基于车辆信任度的车联网身份认证方法,通过在组内选取头车,对头车进行身份认证,接着头车再验证组内其余车辆的身份。认证完成后头车向其余车辆下发组密钥,这种身份认证和下发组密钥的方式,有效减少了量子安全云与车辆通信的计算开销。同时通过车辆的信任值来选取头车,这保障了头车的可靠性,使认证过程中遭受车辆恶意攻击的可能性减小,避免恶意车辆充当头车对通信系统进行破坏,这样头车的决策能够令其他车辆信服。
53、2、该车联网身份认证方法通过在现有车辆向后方车辆发送消息的环节,计算车辆信任值,信任值的计算依据主要依赖于车辆与事件之间的距离和车辆的属性,这样使车辆的对消息产生相对公平的评级。其中利用区块链来实现信任偏移量、匿名身份和组密钥的储存和索引,这种方案计算开销小,可以实现头车同时对多个车辆的身份验证。
54、3、该车联网身份认证方法在组内的头车与其余车进行身份认证的阶段,通过群签名的方式来验证身份,这大大减小了车辆身份认证的开销,显著提高了认证效率。
55、4、本发明公开的计算机设备及存储介质,通过应用上述基于车辆信任度的车联网身份认证方法,能够产生与该方法相同的有益效果,在此不再赘述。
1.基于车辆信任度的车联网身份认证方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的基于车辆信任度的车联网身份认证方法,其特征在于,步骤s1包括以下具体步骤:
3.根据权利要求2所述的基于车辆信任度的车联网身份认证方法,其特征在于,步骤s11中,区块链中所有车辆的信任偏移量获取方法包括以下步骤:
4.根据权利要求1所述的基于车辆信任度的车联网身份认证方法,其特征在于,步骤s2中,头车与量子安全云进行身份验证之前,还包括初始化阶段和注册阶段;
5.根据权利要求4所述的基于车辆信任度的车联网身份认证方法,其特征在于,步骤s2包括以下具体步骤:
6.根据权利要求1所述的基于车辆信任度的车联网身份认证方法,其特征在于,步骤s3中,在头车与组内其余车辆进行身份验证之前,车辆域内的密钥生成中心还生成组公钥gpk和组私钥gsk;每个车辆需要向密钥生成中心注册,密钥生成中心根据组公钥gpk和组私钥gsk生成每个车辆的签名密钥sk。
7.根据权利要求6所述的基于车辆信任度的车联网身份认证方法,其特征在于,步骤s3包括以下具体步骤:
8.根据权利要求1所述的基于车辆信任度的车联网身份认证方法,其特征在于,步骤s4的具体过程为:
9.一种计算机设备,包括处理器和存储器,其特征在于,所述存储器存储有能够被所述处理器执行的计算机程序,所述处理器可执行所述计算机程序以实现如权利要求1至8任意一项所述的基于车辆信任度的车联网身份认证方法。
10.一种存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至8任意一项所述的基于车辆信任度的车联网身份认证方法。