2. 北京联合大学 机器人学院, 北京 100101
2. College of Robotics, Beijing Union University, Beijing 100101, China
开放科学(资源服务)标志码(OSID):
近年来,汽车数量的急剧增加,给现有的交通系统带来了巨大压力。交通拥堵和交通事故的频发,严重威胁人们的生命和财产安全。车联网(Internet of Vehicle,IoV)[1]被公认为是从根本上解决车辆安全问题、遏制交通事故的有效途径,通过在车与车之间、车与网络设施之间建立通信,使得车辆能够有效获取交通环境信息,提前做出驾驶决策,从而提升交通安全和效率[2]。但如果车联网中相关驾驶数据遭到窃取或者篡改,则会直接造成财产或生命损失。因此,如何防止车辆信息被修改,保证车联网数据安全和共享是智能驾驶的关键。
区块链是一种去中心化的数据库存储技术[3],具有去中心化[4]、对等传输[5]、匿名性[6]、记录不可逆性[7-8]等特性,可以有效地对加入区块的数据可信度进行分析鉴别,确保数据可信、可用和可溯[9]。本文建立危险驾驶地图数据评估模型,利用区块链去中心化技术对车辆数据进行处理。针对单一车辆具体地图运行数据采集上链[10],根据车辆运行过程中遇到的不同危险场景进行危险评估[11],利用自动化执行的智能合约[12]程序有效避免数据篡改[13],通过全域集理论[14]构建输入输出模型,提升模型扩展性与适用性。
1 相关工作车联网应用越来越普遍[15],但其网络安全形势日趋严峻[16]。针对车联网中数据安全方面存在的问题,学者们对此进行了大量研究并取得了重要的成果。文献[17]提出一个认证和安全的数据传输算法,在车联网框架中使用区块链技术,确保节点之间的信息通信。文献[18]提出一种新的基于区块链技术的车辆信息系统架构,保持分布式服务提供商之间的一致性,从而确保数据的完整性、车辆认证、隐私保护和无缝访问控制。这种分散的区块链框架适用于管理大规模车联网数据,通过本地缓存策略可避免较长的事务时间限制。
1.1 数据隐私信息上链认证模型信息数据通信是车联网中的重要环节,节点之间的高效通信可避免发生交通事故。为了防止恶意活动,如篡改紧急消息或发送虚假信息,在网络中只允许存在经过身份验证[19]的节点。文献[20]提出一个边缘信任管理方案,使用开源平台以太网区块链建立分散式信任管理平台,所有的响应单元以分布式方式工作,以维护一致的车辆信任数据库并增强可靠性、可用性和一致性。车辆与车辆之间通过建立信任机制对车辆每次传输的数据进行准确性判断,避免应用错误信息导致发生事故。文献[21]提出一种匿名地址管理方案,将个人数据的控制分权,由AC管理加密地址,由RS管理解密私钥,但双方都没有获得真正的地址,只有在授权TP访问后,TP提交加密地址给RS并由其解密地址,才能得到真正的地址并执行TP的数据请求,以此实现对个人数据的有效保护。
1.2 智能合约危险分析模型车联网建立了智能运输应用程序,由于无线通信的开放性,使得传输信息资源的完整性、机密性和可用性容易被非法访问所破坏,面临相关IoV应用的安全性威胁。文献[22]提出一种新颖的基于危险预测的访问控制模型RPBAC,该模型通过预测危险级别将访问权限分配给节点。区块链智能合约技术确保了数据传输过程中不被篡改,建立的危险评级使得车辆获取到的数据可信可靠,根据数据进行车辆设备映射达到最终控制车辆的目的。文献[23]利用智能边缘链来实现对IoV设备的访问控制,为提高RPBAC模型的精度,设计Wasserstein复合GaN(WCGaN),解决了原GaN中的梯度消失和模式崩溃问题,并优化了RPBAC模型来规范车辆的行为。
本文的主要贡献如下:1)基于智能合约技术建立网络数据加密平台,确保用户个人信息及车辆运行数据安全,利用智能合约建立自动执行的合约程序,对车辆运行过程产生的数据进行信息上链,建立智能合约匿名系统,确保数据可信;2)为智能车地图数据交互建立危险评估模型,在遭遇网络攻击、危险路段、恶劣天气等场景时,根据环境因素以及被攻击程度增高车辆安全评级,当车辆接收到的数据危险评级过高时根据具体情况对车辆实施减速慢行、停车等安全举措。
2 基于区块链的危险评估模型表 1给出了本文使用到的符号及含义。每个参与者用户先申请唯一性地址,当用户驾驶车辆连入区块链网络时,将用户个人信息、车辆运行数据、车辆环境信息和基站网络信息先转换为精确的位置坐标信息再匿名打包发布,智能合约对地图数据进行处理,针对不同场景数据进行危险评估,当网络受到攻击时,发出应对指令。智能合约交易仅显示地址交互,确保匿名性。交易信息进行区块上链,区块链同时提供能够查询交易的接口。
![]() |
下载CSV 表 1 相关符号及含义 Table 1 Relevant symbols and meanings |
将用户数据和车辆运行数据进行非对称加密,建立自动化智能合约脚本,对上链的区块进行自动处理,将处理后的数据存入区块链分布式账本中,之后为每一个用户建立账本副本,将账本副本借助Fabric平台发布到对应的每一个用户中。
如图 1所示,车辆危险驾驶地图数据评估模型有五元组S构成,其中:A是模型输入端数据,具体为用户信息数据、地图信息以及网络基站传输的指令信息;B是模型映射环境,车辆信息加密后构成区块,通过此过程将数据信息上链组成区块链账本;F是模型数据变换过程,区块链账本信息通过智能合约过程,自动化处理Hash数据,对不同的地图数据信息进行权重运算得到当前时刻地图数据反馈的危险系数,对地图数据进行危险分级并对应相应的危险系数,不同的危险系数将反馈不同的行为指令;D为模型数据转换对应的表映射,危险评估结果通过此表结合当前车辆运行状态将决策数据转换为对应的安全态、平稳态、危险态,不同运行态将对应的车辆控制指令通过基站网络传输到车辆实际控制层,数据表示为速度、方向、停止、运行等状态;J是模型环境映射的满意值,表示环境映射满意值的界限范围,智能合约脚本处理后将评估结果数据上链,将此满意值也作为映射关键权重参与下一次迭代循环。
![]() |
Download:
|
图 1 车辆危险驾驶地图数据评估模型 Fig. 1 Evaluation model of vehicle dangerous driving map data |
系统模型使用全域集理论定义如下:
$ S=(A, B, F(λ, {R}^{2}, t), J, D) $ | (1) |
用户车辆信息非对称加密后生成的Hash值使用非对称加密算法对数据进行加密解密,对数据明文A采用公钥(n,e)进行加密,n和e是公钥,加密后密文为Y,加密公式如下:
$ {A}^{\mathrm{e}}=B\left(\mathrm{m}\mathrm{o}\mathrm{d}\;n\right) $ | (2) |
对密文Y采用私钥(n,d)进行解密,n和d是私钥,解密后明文为A,解密公式如下:
$ {B}^{\mathrm{d}}=A\left(\mathrm{m}\mathrm{o}\mathrm{d}\;n\right) $ | (3) |
危险评估使用决定系数对模型进行拟合判断,其中安全参数λ和时间t为决定系数,通过改变λ和t对危险值评估范围进行调整,估算预测公式如下:
$ \overline{y}=\frac{1}{n}\sum\limits_{i=1}^{n}({y}_{i}{-\overline{y})}^{2} $ | (4) |
$ {R}^{2}=1-\frac{{S}_{\mathrm{r}\mathrm{e}\mathrm{s}}}{{S}_{\mathrm{t}\mathrm{o}\mathrm{t}}}=1-\frac{\sum ({y}_{i}-{f}_{i}{)}^{2}}{\sum ({y}_{i}{-\overline{y})}^{2}} $ | (5) |
$ {D}_{\mathrm{d}\mathrm{a}\mathrm{n}\mathrm{g}\mathrm{e}\mathrm{r}}=F(λ, {R}^{2}, t) $ | (6) |
其中:
信息匿名加密过程如图 2所示。首先进行初始化,输入安全参数λ,车辆本地和服务端分别生成一对加密和解密的公钥和私钥。在消息传递时获取服务端公钥,随后使用椭圆曲线数字签名加密算法(Elliptic Curve Digital Signature Algorithm,ECDSA)对信息进行非对称加密,信息传输后分别使用私钥进行解密,保证信息传输安全。车辆本地生成密钥对K1和P1,服务端生成密钥对K2和P2,本地通过非对称加密算法使用服务端公钥K2进行加密,传输后服务端使用私钥P2进行解密。同理,服务端返回的数据使用K1进行加密,本地使用私钥P1进行解密。
![]() |
Download:
|
图 2 信息匿名加密过程 Fig. 2 Information anonymity encryption process |
地图数据匿名加密过程的伪代码如算法1所示。系统执行信息上链行为时,先对比λ值,若λ在安全范围内,则进行数据上链行为。其中λ为安全参数,每次通过危险评估改变其数值,若网络受到攻击,则安全参数会适当下降,危险参数会上升。在消息传递时获取服务端公钥K1,然后用公钥K1和制定的访问策略T进行加密得到密文CCTK,最终将公钥和加密后的密文暴露在区块链网络上,然后进行数据传输。具体实施过程为:用户使用时需要注册账号作为交易的唯一性地址,在一个完整的行车过程中此地址作为车辆连接网络的唯一凭证。用户数据隐私信息以及某一时刻地图信息使用ECDSA封装加密,服务端通过私钥进行解密读取数据信息。如果网络被攻击,则攻击者只能获取到公钥,因此没有私钥逆运算进行解密,可有效防止密钥泄露造成的数据信息损失。在每次加密后,数据信息与此刻时间戳建立数据ID,以便同一网络能够区分不同时间片的地图数据信息。在循环添加区块链网络数据时,只需匹配用户ID降低认证时间成本。
算法1 地图数据匿名加密
输入 λ,K2,用户信息,地图信息
输出 区块链结果Y
1.System executes;
2.X1=A person Information.ID;
3.X2=A person Information+Map Information;
4.If X1 is a new user then
5.Add X1 to Blockchain.ID;
6.Add X2.ID to Blockchain.Data.ID;
7.End if
8.MData=EncryptedFile←ECDSAencrypt(X2,K2,T);
9.If X1 is belong to Blockchain.ID
10.Data←(MData,K2,T);
11.Blockchain.Data = Blockchain.Data+Data;
12.End if
13.Return true;
2.2 危险评估过程该模型进行以下2种状态的危险评估:1)环境危险态,车辆将要处于危险驾驶状态,获取到的地图信息暴露出车辆即将遭遇危险;2)网络攻击态,区块链共识过程中的其他节点收到的信息存在被修改的危险,该危险由网络攻击者攻击区块链引起。区块链具有去中心化特点,不具备集中式数据库修改方式,如果要修改区块链信息则需要进行全网节点投票,需要大部分节点投票同意修改写入区块才能执行。自动化执行的智能合约脚本定期进行链上数据信息比较,将上一次模型处理数据与本次数据进行节点比对,计算节点修改率,如果节点修改率过高则视为有危险。
图 3描述了数据进行自动化执行的智能合约过程,合约主要功能是根据输入的不同数据判断网络安全性,并分析得到当前网络数据的危险值,其中,①、②、③、④、⑤为数据传输的先后过程,直线箭头表示智能合约中固定执行的逻辑,虚线箭头表示根据评估结果需要动态调整修改率以便更新安全参数。
![]() |
Download:
|
图 3 危险评估过程 Fig. 3 Danger evaluation process |
智能合约执行过程的伪代码如算法2所示,其中输入参数是区块链上链数据。智能合约脚本首先对车辆传输的数据使用私钥P2进行解密,然后对每次传输的区块链节点进行修改率计算,如果节点修改率过高则视为危险场景,随后判断是否为社区投票进行的区块链分叉行为,如果不是则判别为受到网络攻击,更新为网络攻击状态attack。如果上链加密过程视为安全,则对数据进行危险预测,根据建立的预测模型,不同的输入数据权重不同,然后通过式(6)计算出本次地图信息的危险值,最后根据数据状态和评估值映射转换到本地车辆控制。
算法2 智能合约执行
输入 区块链上链数据,P2
输出 Ddanger,R,attack
1.ECDSADencrypt(Blockchain.Data,P2,T);
2.for each Blockchain.Data do
3.Change rrate_block =Blockchain.Data/Old data;
4.If the rrate_block > 0.5 then
5. If address is tampered by communities;
6.sstate=0;
7.End if
8.sstate=1;
9.End if
10.sstate=0;
11.If sstate=0 then
12.R=(天气,道路,车速,车况)×权重;
13.Ddanger=数据状态sstate +R;
14.End if
15.Return Ddanger,sstate;
2.3 危险评估映射过程危险评估映射过程的伪代码如算法3所示。根据智能合约获取到危险值R和网络攻击状态,将区块链网络中获取的车辆地图信息,根据危险值和网络攻击状态以及表 2映射将数据转换为车辆可执行的指令,对数据进行ECDSA加密传输,本地车辆提供私钥P1解密数据,根据参数权重计算评估数据,并更新安全参数λ,同时根据返回的车辆行为数据进行车辆控制。
![]() |
下载CSV 表 2 危险行为映射 Table 2 Dangerous behavior mapping |
算法3 危险评估映射
输入 R、K1,S,attack,Blockchain.Data.ID
输出 λ,action
1.Get R from smart contract;
2.Ndata←Blockchain.Data;
3.If R≥ 10 do
4.action=Change(λ,Ndata);
5.Data=Ndata+action;
6.ECDSAencrypt(Data,K1,T);
7.End if
8.Data=ECDSADencrypt(Blockchain.Data,P1,T);
9.λ=Update(Data)×权重;
10.Return directives,λ;
在表 2中,不同危险值对应不同的安全状态,不同的安全状态会反馈给车辆不同的安全行为,其中,s表示每秒钟车辆前进的距离,v表示车辆的瞬时速度,-max表示车辆处于危险态,不受s和v参数影响而采取的紧急制动行为以确保车辆安全。
3 实验过程与结果分析 3.1 节点通信方式为防止区块链网络被恶意攻击者随意注册节点,利用联盟链Fabric充当网络环境,在加入节点前需要得到指定节点授权。使用的共识机制为拜占庭容错,在实用拜占庭容错(Practical Byzantine Fault Tolerance,PBFT)模型下,选择一个拥有记账权的主节点,其他节点作为备份节点。系统内的所有节点都相互通信,最终以少数服从多数的原则达成共识。如果记账节点作恶,其他节点则会联合起来替换记账节点。随后该区块节点通过gPRC消息传递机制将交易记录转发给区块链网络中的其他节点,2/3的节点验证通过后将交易存入到区块链中。
3.2 数据上链与吞吐量性能比较首先车辆用户通过Fabric申请加入节点权限,通过后保存节点ID及相关个人与车辆信息进行车辆注册。然后模型通过车载摄像头采集道路图片,利用深度学习算法对道路图片分类,同时通过激光雷达确定道路环境信息以及障碍物信息,结合惯导系统对车辆进行精确定位获取定位数据。将评估模型需要的参数数据进行加密上链,上链传输过程中特定车辆充当投票节点。对比具有2、4、8个投票节点的3组节点,令每组节点分别执行1 000次评估事务,计算本文模型的区块链网络吞吐量如图 4所示,其中,网络吞吐量定义为从评估事务第一次部署开始每秒成功部署的评估事务数量,平均吞吐量为执行时间内的平均吞吐量。
![]() |
Download:
|
图 4 网络吞吐量比较 Fig. 4 Comparison of network throughput |
从图 4可以看出:对于评估1 000个事务不同组节点的处理时间不同,即模型的吞吐量不同,随着加入的投票节点增多,区块链网络需要转发更新信息的节点增多,导致网络评估模型的吞吐量降低。对于评估单组1 000个事务,随着评估事务数量的增长,吞吐量增长的速度也会下降,由此可以看出随着区块链评估事务数量不断增多,区块链网络的平均吞吐量将变为某个常量。
3.3 危险场景预测与结果分析使用MATLAB工具Simulink创建虚拟车辆,并采用轿车、卡车和公交车做对比实验。选定固定地图场景进行正常态车辆运行,记录时间及模型评估结果,并对以下2种危险场景进行模拟预测:1)网络攻击场景,在车辆运行过程中区块链网络接入算力更高的设备对评估车辆进行算力攻击,算力高且成链速度快就能覆盖测试车辆区块链从而修改数据,通过此网络攻击来测试模型评估效果;2)障碍物场景,在车辆正常运行环境地图中增添障碍物,使得车辆感知危险环境数据以此来测试模型评估效果。
图 5是模拟仿真了3种车辆在不同场景下的危险值结果,3种车辆的变化趋势大致相同,在受到攻击后,车辆刹车躲避危险(即危险值为0)的速度为轿车比卡车快、卡车比公交车快,缘由为车辆质量越大导惯性较大,车辆减速或者刹车所需时间较长。从图 5可以看出:网络攻击场景车辆危险值迅速提高,车辆状态转换为网络攻击态,车辆刹车停止运行;障碍物场景车辆危险值提高,车辆状态转换为环境危险态,车辆减速避开障碍物后恢复到正常态。实验结果表明,基于本文模型,同一路段不同车辆在不同危险场景下能够进行危险预测,准确评估网络攻击与环境危险并进行危险规避。
![]() |
Download:
|
图 5 同一路段在不同危险场景下危险值随时间的变化情况 Fig. 5 Variation of danger values with time under different danger scenarios in the same road section |
本文通过对车联网数据交互过程中受到的恶意攻击及危险驾驶场景进行预测分析,构建基于区块链技术的危险驾驶地图评估模型。根据个人信息以及车辆驾驶途中产生的数据进行上链评估,使用智能合约技术保证数据传输安全性。针对传输数据进行危险评估,使得车辆在道路危险、网络攻击等场景下能进行应急处理,保障车辆安全运行。应用全域集理论对危险评估模型进行设计,将智能合约建立成独立模块,使得模块与模块之间只有数据输入和输出,并且通过修改独立模块即可建立新功能,增强了模型的普适性与健壮性。实验通过设定不同危险场景验证了该模型的可用性。下一步将对多车辆某段路程地图数据进行危险评估,同时使用机器学习算法对危险评估模型进行优化,使车辆能够自适应地图道路环境,从而对不同危险场景进行评估预测。
[1] |
杨雪婷, 李重. 车联网中基于车辆行为预测的身份认证方案[J]. 计算机工程, 2021, 47(1): 129-138. YANG X T, LI Z. Identity authentication scheme based on vehicle behavior prediction for IoV[J]. Computer Engineering, 2021, 47(1): 129-138. (in Chinese) |
[2] |
CONTRERAS-CASTILLO J, ZEADALLY S, GUERRERO-IBAÑEZ J A. Internet of Vehicles: architecture, protocols, and security[J]. IEEE Internet of Things Journal, 2018, 5(5): 3701-3709. DOI:10.1109/JIOT.2017.2690902 |
[3] |
蔡婷, 林晖, 陈武辉, 等. 区块链赋能的高效物联网数据激励共享方案[J]. 软件学报, 2021, 32(4): 953-972. CAI T, LIN H, CHEN W H, et al. Efficient blockchain-empowered data sharing incentive scheme for Internet of Things[J]. Journal of Software, 2021, 32(4): 953-972. (in Chinese) |
[4] |
WANG Y J, HSIEH C H, LI C F. Research and analysis on the distributed database of blockchain and non-blockchain[C]//Proceedings of the 5th International Conference on Cloud Computing and Big Data Analytics. Washington D. C., USA: IEEE Press, 2020: 307-313.
|
[5] |
CALDIERARO F, ZHANG J Z, CUNHA M J, et al. Strategic information transmission in Peer-to-Peer lending markets[J]. Journal of Marketing, 2018, 82(2): 42-63. DOI:10.1509/jm.16.0113 |
[6] |
HUANG H, CHEN X F, WANG J F. Blockchain-based multiple groups data sharing with anonymity and traceability[J]. Science China Information Sciences, 2019, 63(3): 1-13. |
[7] |
NOH S, SHIN S U, RHEE K H. PyRos: a state channel-based access control system for a public blockchain network[J/OL]. Security and Communication Networks: 1-10[2021-06-14]. https://doi.org/10.1155/2020/8891183.
|
[8] |
XU Y B, HUANG Y Y. Segment blockchain: a size reduced storage mechanism for blockchain[J]. IEEE Access, 2020, 8: 17434-17441. DOI:10.1109/ACCESS.2020.2966464 |
[9] |
田鹤, 郭凯红, 王彦超, 等. 基于感知源的数据驱动信任评测模型[J]. 控制理论与应用, 2021, 38(2): 255-263. TIAN H, GUO K H, WANG Y C, et al. A data-driven trust evaluation model based on the perception source[J]. Control Theory & Applications, 2021, 38(2): 255-263. (in Chinese) |
[10] |
WAMBA S F, QUEIROZ M M. Blockchain in the operations and supply chain management: benefits, challenges and future research opportunities[J]. International Journal of Information Management, 2020, 52: 102064. DOI:10.1016/j.ijinfomgt.2019.102064 |
[11] |
王新年, 张传桢. 智能网联汽车信息安全测评体系[J]. 北京汽车, 2021(1): 25-32. WANG X N, ZHANG C Z. Test and evaluation system for cyber security of intelligent connected vehicle[J]. Beijing Automotive Engineering, 2021(1): 25-32. (in Chinese) |
[12] |
孟博, 刘加兵, 刘琴, 等. 智能合约安全综述[J]. 网络与信息安全学报, 2020, 6(3): 1-13. MENG B, LIU J B, LIU Q, et al. Survey of smart contract security[J]. Chinese Journal of Network and Information Security, 2020, 6(3): 1-13. (in Chinese) |
[13] |
GOURISETTI S N G, MYLREA M, PATANGIA H. Evaluation and demonstration of blockchain applicability framework[J]. IEEE Transactions on Engineering Management, 2020, 67(4): 1142-1156. DOI:10.1109/TEM.2019.2928280 |
[14] |
李学伟, 张若冰. 创新研究推动智慧北京关键技术发展[J]. 北京联合大学学报(人文社会科学版), 2020, 18(3): 1-10. LI X W, ZHANG R B. Innovative research drives the development of key technologies in smart Beijing[J]. Journal of Beijing Union University(Humanities and Social Sciences), 2020, 18(3): 1-10. (in Chinese) |
[15] |
BAGGA P, DAS A K, WAZID M, et al. Authentication protocols in Internet of vehicles: taxonomy, analysis, and challenges[J]. IEEE Access, 2020, 8: 54314-54344. DOI:10.1109/ACCESS.2020.2981397 |
[16] |
POOMAGAL C T, SATHISH KUMAR G A. ECC based lightweight secure message conveyance protocol for satellite communication in Internet of Vehicles(IoV)[J]. Wireless Personal Communications, 2020, 113(2): 1359-1377. |
[17] |
ARORA A, YADAV S K. Block chain based security mechanism for Internet of Vehicles(IoV)[C]//Proceedings of the 3rd International Conference on Internet of Things and Connected Technologies. Washington D. C., USA: IEEE Press, 2018: 26-27.
|
[18] |
SHARMA R, CHAKRABORTY S. BlockAPP: using blockchain for authentication and privacy preservation in IoV[C]//Proceedings of IEEE Globecom Workshops. Washington D. C., USA: IEEE Press, 2018: 1-6.
|
[19] |
CUI Z H, XUE F, ZHANG S Q, et al. A hybrid blockchain-based identity authentication scheme for multi-WSN[J]. IEEE Transactions on Services Computing, 2020, 13(2): 241-251. |
[20] |
SINGH P K, SINGH R, NANDI S K, et al. Blockchain-based adaptive trust management in Internet of Vehicles using smart contract[J]. IEEE Transactions on Intelligent Transportation Systems, 2021, 22(6): 3616-3630. |
[21] |
纪露生, 张桂玲, 杨佳润. 基于区块链的链下个人数据保护方案[J]. 计算机工程, 2021, 47(2): 176-181, 187. JI L S, ZHANG G L, YANG J R. Off-chain personal data protection scheme based on blockchain[J]. Computer Engineering, 2021, 47(2): 176-181, 187. (in Chinese) |
[22] |
LIU Y N, XIAO M, ZHOU Y Y, et al. An access control mechanism based on risk prediction for the IoV[C]//Proceedings of the 91st Vehicular Technology Conference. Washington D. C., USA: IEEE Press, 2020: 1-5.
|
[23] |
LIU Y, XIAO M, CHEN S, et al. An intelligent edge-chain enabled access control mechanism for IoV[J]. IEEE Internet of Things Journal, 2021, 8(15): 12231-12241. |