基于区块链技术的车联网研究
2018-01-04唐兰文王耀东田儒贤
唐兰文 王耀东 田儒贤
摘要:随着车联网相关技术的迅速发展,在给驾驶员带来更好的驾驶体验的同时,也带来了新的安全隐患。在车辆的实时数据通信中,一般需要经过基站验证车辆的身份,但还有可能存在伪装车辆发送虚假数据的问题。提出利用区块链技术的信息不可篡改和去中心化等特点,将每辆车对接收消息的验证组成一个区块链,用最后一辆上传验证的车辆将区块链进行广播,可以提升判断数据来源的辨别能力,同时,降低与基站通讯耗费的资源,避免网络拥堵。
关键词:区块链;车联网;数据安全;去中心化
中图分类号:TN915.9 文献标识码:A 文章编号:1009-3044(2018)28-0023-03
1引言
汽车行业是一个特殊的行业,因为涉及乘客的安全,任何事故都是不可接受的,所以对于安全性、可靠性有着近乎苛刻的要求[1]。随着车联网所依赖的通信技术的发展,在获得其给社会带来的便捷的同时,其安全性成为人们关注的热点。车联网使用新一代信息和通信技术来实现车辆和车辆,车辆和周围环境,车辆和人员之间的协作通信。可以用于判断车辆之间的相对位置和车辆在周围环境中的位置,提高乘客的驾驶体验和安全保障。但是,一旦车辆将本身作为节点接入到网络中,就将自己暴露在了公开的环境中,其网络通信更容易受到攻击者篡改、监听或接收到虚假消息,接收错误的指示。
目前,车联网中的安全通信环境通常是通过身份认证协议来保证的。文献[2]针对隐私安全提出了一个通过控制访问的方案,此方案需要车辆用假名向服务提供商申请某个服务并获得一个访问的令牌,在建立起通讯之后,通过加密方案加密通讯,达到保护消息的目的。此方案可以保护通讯内容,但偏远地方车辆与服务提供商通讯或者某一区域集中大量车辆与服务提供商通讯都会大量占用资源,导致通讯质量降低。文献[3]提出利用路旁的通讯设施作为信用保证,车辆通过通讯设施来实现相互信息交流,但是这种中心化的方式会造成中心节点的网络拥堵。文献[4]提出一种基于群签名的身份认证协议,该协议路旁辅助设施将公/私钥对和系统参数发给车载单元,并通过盲签名技术保证通讯安全,而群私钥由群管理者保管,群管理者对发出虚假消息车辆具有问责权限。此方案并不能在提前判断车辆接收到的消息为虚假消息,只能在事故发生之后对消息源进行问责。
区块链是一种全新的去中心化基础架构与分布式计算范式,具有去中心化、时序数据、集体维护、可编程和安全可信等特点[5]。利用区块链技术数据信息不可篡改的特点,应用到车联网中,提升通讯安全性能,避免接收虚假信息;同时,区块链技术具有去中心化特点,可以避免车辆与服务提供商或路边辅助设施通讯时的网络阻塞问题,直接实现车辆与车辆之间的点对点通信,提升通讯效率,节省通讯耗费资源。
2区块链与车联网概述
2.1区块链技术基本原理
区块链是由区块有序链接起来形成的一种数据结构,其中区块是指数据的集合,相关信息和记录都包括在里面,是形成区块链的基本单元[6]。每一个区块都是由区块头和区块主体组成的,每个区块的块头都关联着前一个区块体,包含前一个区块的哈希值,该值是对前区块的块头进行哈希函数计算而得到区块之间都会由这样的哈希值与先前的区块环环相扣形成一个链条[7],区块主体中包含经过区块链节点用私钥进行加密过的数据信息,区块链的结构示意图如图1所示。
区块链的去中心化的特点是由于其网络是P2P组网,采用点到点之间的传输方式,没有中心节点或者管理机构,任何节点的地位都是平等的,节点可以随意登陆或退出网络。这样的网络架构相对于中心化的网络架构相比,一方面,化解了中心节点可能因为访问量过大而崩溃的风险,增强了网络的健壮性;另一方面,由于节点之间的地位都是平等的,数据备份在每一个节点,单个节点的数据库不受其他节点数据修改的影响,除非51%的节点同时修改,但是这种情况发生概率极低,这样就降低了数据可能被篡改的风险。
区块链使用非对称加密技术来解决节点之间的安全性问题。非对称加密技术在加密和解密的过程中使用公钥和私钥,这两个密钥是非对称的。在使用非对称密钥时,必须成对使用,使用任意一个密钥加密后,只有使用对应的另一个密钥才能解密;而公钥是可以公开的,但是无法通过公钥来推算出私钥。区块链中的每一个节点在传输信息的时候都有一对密钥,其中,发送信息的时候使用自己特有的私钥进行加密,可以在发送信息的最后加上自己的数字签名;公钥为链中所有节点所共有,接收到信息之后使用公钥进行解密,在验证了私钥加上的数据签名之后就可以确认消息的真实性。
2.2 车联网现状
车联网是一种依据特定通信协议,实现车-X(X:车、路、行人及互联网等)之间的无线通信和信息交换的大型网络,也是一种能够实现智能交通与动态信息服务的一体化网络[8]。
在车联网中的车辆,可以通過自身传感器接收到的信息,将自己的位置信息和周边环境信息与其他车辆或车联网中的其他主体共享,这样车辆就能够在短时间内迅速掌握周边环境和车辆情况。这样,车辆就可以结合自身传感器的参数在很短的时间内计算处与其他物体的安全距离,提升交通的安全性。但是,当车辆把自己作为一个节点接入到车联网之后,把自身暴露在了一个开放的环境中,增加了受到攻击的风险。
目前,车联网中的安全通信环境通常是通过身份认证协议来保证的,在验证消息是合法的并且确认消息没有被篡改之后,经过验证系统来确定消息源是否可靠。如果攻击者在调整了自身传感器的参数之后,向接收消息的车辆传达了错误的信息,接收消息的车辆无法验证收到的消息是否是可靠的,将收到错误的周边信息或车辆位置信息,有可能会引发不必要的应对措施或事故。从一定程度上来讲,如果不能确定消息的来源是否是真实可信的,那么即使消息是合法并且验证没有被篡改过,也是没有意义的。所以,验证系统对通信安全至关重要。验证系统一般是从一个可靠的信息源进行校验,信息源可以是服务供应商或者是路边辅助设备,这种中心化的网络结构在车辆密集或者是车联网内大量设备访问的时候造成中心的网络拥堵;另一方面,在偏远的地区,基站设备不能完全辐射到的地方,验证系统就不能发挥效用。
3区块链与车联网中结合
由于区块链技术在去中心化和不能篡改消息等方面的特性,结合目前车联网技术中所存在的问题的特点,可以利用区块链技术进行优化,提升车联网中车辆相互通讯的安全性和稳定性。区块链技术的特点和结合车联网之后的优势如表1所示。
由于车辆流动速度快,在一定的范围内进出频繁,并且虚假消息源或攻击者一般不会攻击距离较远的车辆,所以只需在一定的范围内进行消息源的验证操作,如图2示意图所示。
为了防止已经通过了节点审核加入的节点发送虚假消息,需要对消息增加验证。在验证的过程中,由于车辆的设备型号性能等会略有差异,不能完全保持一致,所以对消息源的验证信息不能保证完全一致,需要引入一个的阈值在一定的概率上保证消息源的可靠。如果超过这个阈值,可以认定此消息源是可靠的;相反,如果低于这个阈值,则认为此消息源是不可靠的。流程图如图3所示:
首先,车辆利用车载传感器收集自身参数信息和周边环境信息,结合区块链技术,将数据经过加密并加入自身的数字签名后打包成块,无须经过中心管理节点,在范围内的其他车辆可以接收到消息。其他车辆收到消息在解密后,通过自身传感器设备采集到的数据结合与发出车辆的相对位置对接都到的数据进行对比验证,并给出验证信息的可信度,然后,将验证信息打包成区块上传至区块链。到最后在每一辆车都将验证信息上传到区块链之后,在范围内最后车辆收到区块链验证信息后,计算区块链中数据的信息可信度,对于可信度高于阈值的消息认为是可信消息,将其进行广播;对于可信度低于阈值的消息认为其消息来源不可信,予以剔除。利用区块链的特点,次通讯方式信息不易受到篡改,而这种经过多个车辆结合自身周边环境给出验证结果的方式,可以降低来自伪造车辆信息来源的消息的影响,保证通讯的安全性。
4结论
本文针对在车联网中车辆与车辆进行通讯时,有可能出现的由虚假信息源发送的信息和中心节点网络拥堵的问题,引入区块链技术来优化。提出将区块链技术应用在一定范围内的车辆之间,车辆与车辆直接进行点对点通讯,更能适应车辆流动性大,通讯密集的情况。并引入验证信息阈值,通过区块链技术广播可信度大于阈值的信息,可以降低虚假信息的干扰。
参考文献:
[1] 张新钰,高洪波,赵建辉,等.基于深度学习的自动驾驶技术综述[J].清华大学学报(自然科学版),2018,58(04):438-444.
[2] 梅颖.车联网隐私保护研究[D].华中科技大学,2014.
[3] Zhao Zhen,Chen Jie,Zhang Yueyu,et al.An efficient revocable group signature scheme in vehicular ad hoc networks[J].KSII Transactions on Internet & Information Systems,2015,9(10):4250–4267.
[4] 郑明辉,段洋洋,吕含笑.车联网中基于群签名的身份认证协议研究[J].工程科學与技术,2018,50(04):130-134.
[5] 袁勇,王飞跃.区块链技术发展现状与展望[J].自动化学报,2016,42(04):481-494.
[6] 张宁,王毅,康重庆,等.能源互联网中的区块链技术:研究框架与典型应用初探[J].中国电机工程学报,2016,36(15):4011-4023.
[7] 蔡维德,郁莲,王荣,等.基于区块链的应用系统开发方法研究[J].软件学报,2017,28(06):1474-1487.
[8] 谢永,吴黎兵,张宇波,等.面向车联网的多服务器架构的匿名双向认证与密钥协商协议[J].计算机研究与发展,2016,53(10):2323-2333.
【通联编辑:朱宝贵】