关键词:
车联网
共识算法
区块链
安全认证
智能合约
摘要:
随着万物互联时代的到来,汽车从最简单的交通工具演化成为智能互联的移动终端,车联网为搭建智慧交通,构造智慧城市提供了动力。但是目前车联网的集中式管理导致网络负荷严重,由于车辆移动速度快,信息交流频繁引起的用户身份信息泄露、传输的消息被恶意攻击者窃取、篡改等问题依然无法得到解决。区块链凭借其去中心化、可追溯、高安全的特征,为车联网中分布式信息存储和用户安全认证等问题提供解决方案,但依然面临着现有共识算法无法适用于车联网环境的问题。车联网环境中对隐私数据的各种攻击可以通过隐私保护技术解决,车辆在数据传输时消息的完整性和有效性可以通过安全认证机制实现。经过对现有方案和理论基础知识的研究学习,本文提出了一种车联网环境下基于积分制的改进拜占庭容错共识算法,同时基于区块链设计了一种车联网身份认证协议。关键内容如下:(1)本文提出了一种基于积分制的改进拜占庭容错(Voting Improvement Practical Byzantine Fault Tolerance,VIBFT)共识算法。使用车联网中路侧基础设施(Road Side Unit,RSU)作为区块链中的网络节点。首先,引入了积分奖惩机制对节点进行信誉评估,依据积分值划分共识节点集和备选节点集,适用于车联网中各节点配置参差不齐的环境,借助Sigmoid函数对积分值进行限制,避免积分周期重置导致的系统中断问题,为评估系统安全性能提供强有力的依据;其次,在恶意节点不存在时,使用改进的一致性协议,通信复杂度降到O(n)级别,降低了通信开销;再者,提出了主节点选取机制,各节点依据积分值进行遍历比较选取,降低恶意节点成为主节点的概率;最后,通过性能分析和仿真实验,证明VIBFT算法在吞吐量、交易时延和通信开销方面较传统算法具有优势。(2)在提出的VIBFT共识算法基础上,本文设计了一种基于区块链的车联网身份认证协议。该协议借助区块链、云存储等技术实现。首先,使用了梅克尔帕特力夏树(Merkle Patricia Tree,MPT)扩充区块链结构,底层以键值对的形式存储身份信息,以特定前缀的Token作为键,身份加密信息Linki作为值,实现了车辆之间的分布式认证,借助智能合约技术实现恶意用户身份在区块链上的追溯和撤销;其次,使用车辆和用户的绑定身份作为真实身份,可用于一车多户、多车一户的场景,增强了所设计协议的普适性,提出了完整的注册、签名、验证的协议流程,使用无证书签名认证方案,只有可信中心才可以追踪车辆和用户真实身份,用户隐私信息得到初步保护,通过非线性对运算完成消息批量验证,降低了计算开销;最后,借助困难问题假设和可证明安全理论,证明了所提出方案中签名的不可伪造性,分析了协议方案在功能和安全方面的优势。(3)针对本文提出的身份认证协议,将其与已有方案对比,验证了所提出的协议拥有更低的计算开销和较好的通信开销。最后,使用了车联网模拟软件OMNe T++对所提协议方案进行验证,结果表明方案的可行性。