一种基于区块链的车载边缘计算中安全数据共享的综合方法
马哈德夫·加瓦斯1&亨普拉萨德·帕蒂尔2&斯韦塔·S·戈维卡尔3
收到日期:2020年10月14日/接受日期:2021年2月16日
© 作者(们),独家许可给施普林格·自然 2021年施普林格科学+商业媒体有限责任公司
摘要
车辆边缘计算与网络(VECON)的快速发展和技术进步通过信息共享和信息分析增强了现有的车载服务,但也进一步增加了交通安全方面的挑战。这带来了对具有海量信息存储能力的车辆网络进行验证的需求。识别传播虚假消息的车辆并确保每辆车的安全性是一项关键任务。区块链可作为车辆边缘计算中提供安全性的有效解决方案。每一笔交易和数据都会被记录在区块链中,随着时间推移区块数量不断增加。然而,区块链方法中的另一个挑战是共识机制的使用,可能容易受到攻击者的破坏。通过机器学习(ML)算法训练的人工智能(AI)作为一种强大的范式,可以与区块链结合以解决这些问题。区块链的数据存储方法也可以借助机器学习算法得到改进。本文提出了一种双层认证联盟区块链(TTA‐CB)协议,用于在车辆边缘计算与网络(VECONs)中实现安全的信息共享。该方法利用基于一次性密码(OTP)的信誉评估计算来识别异常行为车辆。采用粒子群优化(PSO)算法,结合信誉值求解最优数据提供者选择问题。实验结果表明了所提方法的有效性,对比结果证明该技术具有卓越性和安全性。
关键词 车辆边缘计算 · 区块链 · 数据共享 · 声誉授权 · 安全性
1 引言
最近,车联网(IoV)作为一种保障道路安全、事故预警以及在智能交通系统中实现数据广播优势的愿景正在逐步形成[1]。借助车联网(IoV),智能车辆能够连接到互联网,并在极少人为干预的情况下,与其他智能车辆智能地交换数据和信息[2]。车联网系统的关键组成部分包括传感器、个人设备、执行器等,这些组件通过多种技术与不同设备及基础设施互联[3]。它是一个大规模的集成网络系统,在交通系统领域具有广泛的应用[4, 5]。在车联网中可以实现多种应用,例如汽车碰撞预警通知、自动驾驶、交通拥堵检测、路线规划等[6, 7]。
近年来,由于信息共享在众多现实应用中的重要性,其数据共享[8]已引起政府、学术界和工业界的广泛关注。同时,保护安全性以及信息的保密性同样至关重要[9]。信息共享是指数据通过远程连接从一辆车辆传递到另一辆车辆[10]。无线传感器网络(WSN)包含传感器车辆,这些车辆能够通过管理机构和汇聚车辆进行移动信息的交换[11]。这些传感器车辆成本较低,且具有较低的控制需求,包括电池、处理、通信和容量限制[12]。
区块链是一种在网络成员之间模拟和共享的循环数据结构[13]。因此,它是一种用于去中心化存储和数据监管的新兴概念[14]。它代表了一种分布式账本技术,用于在分布式网络中提供安全性和隐私[15]。总体而言,根据账本公开程度的不同,区块链可分为公有链、私有链和联盟区块链[16]。最近,已有许多研究报道将区块链的优势应用于分布式车载网络和能源网络[17, 18]。由于区块链的特性,将区块链与车联网(IoV)相结合最近引起了学者和发明者的广泛关注[19]。它能够在无需一个中心化连接实体直接参与的情况下,实现对去中心化个体的新型组织方式[20]。将区块链集成到IoV中以构建安全的去中心化架构[21, 22]。
区块链可以发挥两个基本作用:(i)通过其安全存储提供数据信誉;(ii)在由对等网络管理的执行分布中提供过程执行的信誉[23]。在此网络中,每辆车都通过一个公钥(PK)来识别,车辆之间的所有交易均使用公钥加密,并在整个网络中进行通信[24]。
区块链可以促进构建一个安全、正常且去中心化的智能交通生态系统,以解决数据共享问题,从而有助于更好地利用交通基础设施和资源。此外,数据质量是数据共享发展的核心要素。本文提出了一种新颖的TTA‐CB协议,能够高效地实现数据管理自动化,并防止未经授权的二手数据共享。同时,我们集成了一种基于一次性密码(OTP)的声誉机制,以根据数据质量对车辆进行量化。本文的主要贡献总结如下。
- 提出一种基于人工智能的新型TTA‐CB协议,以在车辆边缘计算网络中建立安全且分布式的区块链用于数据管理。
- 开发一种基于一次性密码的信誉机制,用于对车辆进行分类,以实现可靠的数据共享。
- 利用粒子群优化算法解决在车辆边缘计算网络中出现的最优数据提供者选择问题。
基于上述考虑,本文其余部分组织如下:概述关于区块链在第2节中进行了介绍。第3节简要介绍了所提出的认证协议及其数学建模,接着在第4节中给出了所提出认证机制的仿真结果与分析。最后,第5节对本文提出的工作进行了总结。
2 相关工作
本节回顾了区块链以及用于车载边缘网络中安全通信的机器学习和人工智能(AI)集成方面的一些近期研究工作。
2.1 区块链在车载边缘网络中的应用
区块链作为一种能够提供安全身份验证和隐私保护的关键技术,具有重要意义。然而,传统的云计算在为移动车辆提供低延迟和快速响应服务方面表现不佳。在此情况下,基于边缘计算的区块链网络成为一种颇具前景的方法。移动车辆可以直接从区块链边缘车辆获取存储或计算资源,并进行身份验证。文献[25]提出了一种由网络层、区块链边缘层和区块链网络层组成的分层架构。通过采用数字签名算法的身份验证机制,实现了正常认证,确保了有效验证,并采用基于多对多匹配的缓存方案以最小化车辆的平均交付延迟。然而,该方案依赖于完全可信的中央服务器进行信任管理,车辆需要在集中式注册机构中注册,因而存在较高的单点故障风险。
提出了一种基于区块链技术的车辆网络中去中心化声誉管理系统[26]。在该系统中,车辆可以使用贝叶斯推理模型验证从邻近车辆接收到的消息。根据验证结果,车辆将为每条消息的源车辆生成一个评分。车辆上传评分后,路侧单元(RSUs)计算相关车辆的声誉值偏移,并将这些数据打包成一个“区块”。随后,每个路侧单元(RSU)都将尝试将其“区块”添加到由所有路侧单元共同维护的信誉区块链中。通过采用联合工作量证明(PoW)和权益证明共识机制,区块中的偏移总量(权益)越大,路侧单元就越容易找到哈希函数的随机数(PoW)。通过这种方式,所有路侧单元协同维护一个更新及时、可靠且一致的信誉区块链。然而,数据质量是车载自组织网络(VANET)中数据共享的核心要素。在少数情况下,由于存在缺陷的传感器或被篡改的固件,车辆可能会向其他车辆提供错误的数据。由于数据的数量取决于车辆声誉,目前没有适当的机制来根据车辆与邻近车辆的交互情况量化车辆的声誉。
提出了一种基于区块链的V2G网络隐私保护支付机制[27],该机制在保障敏感用户信息的同时支持数据共享。该机制引入了基于区块链技术的注册和数据维护流程,在确保用户支付数据匿名性的同时,允许特权用户进行支付审计。然而,该方案仅关注边缘计算资源的管理,未考虑车辆移动性等因素,从而导致区块链网络不稳定等问题。
在[28]中提出了一种在各个参与元素之间建立的许可区块链框架,用于管理收集的车辆相关数据。具体而言,该框架首先将车载公钥管理(VPKI)集成到区块链中,以实现成员建立和隐私保护。接着,设计了一个碎片化账本,用于存储与车辆相关的详细信息,如维护信息/历史、车辆诊断报告等。车载边缘计算服务器由路侧单元组成,可能无法完全处于正常状态,从而导致严重的安全与隐私挑战。
利用联盟区块链和智能合约技术在车载边缘网络中实现安全数据存储与共享[29]。采用三权重主观逻辑模型精确管理车辆的声誉。
2.2 基于机器学习和人工智能的车载边缘网络区块链
车辆通信旨在实现车辆与基础设施之间各类信息的共享。由于这些特性,保障VANET安全成为一项困难且具有挑战性的任务,已引起众多研究者的关注。文献[30]提出了一种车载自组织网络聚类机制(CMV)及其继承的声誉管理方案(TCMV),以确保车辆间通信的安全性。CMV将车辆组织成簇,选举簇头(CHs),并在处理速度变化的同时实现簇维护。另一方面,TCMV由簇头基于车辆的声誉来计算消息可信度。然而,研究发现,仅依靠簇头提供的消息可信度值不足以验证所交换的消息是否正确。
为了提供安全的车辆通信并在车辆之间建立可靠通信,文献[31]中提出了一种针对车载自组织网络的分布式声誉管理方案。该方案通过矿工控制车辆行为以及簇头(CH)验证消息的可信度,来验证消息的正确性。
提出了一种用于VEC中安全高效资源共享的许可区块链,即Parkingchain[32]。该设计创建了一个智能合约,以初步实现PVs与服务请求者(SRs)之间安全的资源共享和高效的服务提供。此外,采用基于合同理论的激励机制来建模在非对称信息场景下SR与PVs之间的交互。提出了一种新的深度学习框架(DeepRSI),从数据挖掘的角度进行实时道路安全指数预测,以提高车辆安全。所提出的框架特别考虑了车辆GPS轨迹的时空关系以及外部环境因素[33]。然而,在该方案中,行为评估和声誉的任务由每辆车辆共同执行。它采用部分盲签名来保护车辆隐私。该方案期望单个车辆自行管理信任值,但由于观测条件有限或可能出现故障,这可能导致结果不准确。
为了解决车辆网络中的安全性问题并减少潜在攻击者,文献[34]提出了一种间接互惠安全框架。该框架通过为每个OBU分配一个标量声誉值,以评估VANET的危险程度。采用区块链技术,利用共识机制和加密算法保护信息不被篡改,使发送方能够记录其他OBU的行为。此外,他们还提出了一种基于强化学习的动作选择策略,使VANET中的OBU能够选择可靠的中继OBU,或决定是否响应源OBU的请求。车辆产生海量数据,且数据日益细化与复杂。由于资源限制,车辆无法支持大规模数据存储和大规模数据存储。该方案未指定任何机制来处理此类问题。
3 区块链技术
区块链通常被视为一种在去中心化网络中使用的技术系列,用于在所有成员之间维护一致的数据库。网络中的所有成员具有相对平等的地位,并存储相同副本的区块链[35]。图1展示了在车辆中使用的区块链模型的一个示例。
在区块链中,交易被打包成区块,每个区块包含一系列交易记录。它由区块头(包括元数据)和区块体(包含交易内容)组成。此外,每个区块通过哈希值进行标识,并引用前一个区块的哈希值,从而形成一个区块链。最终,区块链由网络中的参与者(称为矿工)共同维护。每个矿工负责执行和存储相同的交易,并完成复杂的数学计算。他们还生成由其他矿工验证的区块。
有效性和负责处理其他矿工之间的所有通信。他们还通过控制通信[36]来帮助保障区块链的安全。
网络参与者之间的通信不能仅仅依赖路侧单元(RSU)来完成。必须保持高保密性和数据可靠性。人工智能(AI)、机器学习与区块链的完美结合将确保数据共享环境更加安全。这些技术的集成还可实现在不暴露数据提供者身份的情况下进行选择性数据共享。
一种强大的组合
f
这些软计算技术与区块链相结合,消除了数据共享过程中对可信第三方的依赖。同时,人工智能的使用使得区块链过程更加自动化,而资源可以被设置用于调控需要授权访问的数据门控。
4 区块链的双层认证
在车辆边缘计算中,从控制器到车辆共享紧急信号和方向可能会导致冗余、不安全和不一致等问题。区块链被用作高效解决这些问题的方案。在区块链中,所有广播或通信的车辆消息和行为都将写入不可变且不可伪造的记录中,网络中的每个实体都可以对这些记录进行验证和审计。然而,区块链透明性并未被自然考虑,这就需要将区块链与一种高效工具相结合,以构建更安全的网络模型。
同时,人工智能的出现引发了技术领域的范式转变,认知计算、机器学习和自然语言处理在不同应用中的使用日益广泛。一般来说,区块链促进在开放数据环境中,去中心化应用与人工智能推动的封闭数据平台上的集中式数据形成对比。尽管人工智能、机器学习与区块链之间的根本差异似乎阻碍了它们的融合发展。
本文旨在将机器学习和AI技术的优势与区块链相结合。AI算法能够深入分析大量数据,学习隐藏模式,并做出准确预测。机器学习可有效检测并删除重复数据集。去中心化的区块链基础设施能够分析数据模式并验证其真实性。因此,本文提出了一种新型的TTA‐CB协议,用于车辆边缘计算网络中的安全数据共享。所提出的模型消除了对可信第三方的依赖,在数据共享过程中提高了安全性。
4.1 网络模型
VECONs由用户层、边缘层和云层组成,如图2所示。
在用户层中,配备车载单元的车辆可以通过与路侧单元通信来访问服务。车载单元执行简单计算,从传感设备收集本地数据,并将数据上传至边缘层。在边缘层中,沿道路部署的若干邻近路侧单元(边缘车辆)可组合形成车辆边缘集群。每辆车辆通过与最近的路侧单元通信以接入本地车辆边缘集群。车辆边缘集群临时存储来自车辆的数据,并在必要时通过有线连接将数据传输至中央云。云层中的中央云管理所有车辆边缘集群。该中央云可以是智能交通系统的数据中心,能够永久存储海量数据,并为车辆执行复杂且容迟的计算任务(表1)。
4.2 安全性模型
我们的目标是设计一个安全数据共享系统,以促进安全可靠的数据共享。接下来,我们将介绍系统中使用的实体。
- RSU :路侧单元配备有处理、存储和无线通信模块。路侧单元之间的通信通过有线网络进行,具有较低的网络延迟。
- 车辆 :车辆嵌入了传感、处理、存储和无线通信模块。车辆与车辆之间以及车辆与路侧单元之间的通信通过无线网络进行。车辆生成与道路状况相关的通告消息,这些通告消息可以通过路侧单元分发给更广泛区域内的车辆。
- 主存储机构(MSA) :MSA 是一个正常机构,负责将公钥与系统中的实体进行绑定。
- 攻击者 :攻击者被用于向车辆发放凭证。系统中的 MSA 和车辆选举出攻击者。
- 智能合约 :这些是驻留在区块链上的自执行步骤,可实现分布式多步骤流程的自动化。
| 符号 | 描述 |
|---|---|
| Kprivate | 用户的私钥 |
| Kpublic | 用户的公钥 |
| TCR | 证书验证时间 |
| Texpire | 证书过期时间 |
| Scomp | 计算速度 |
| cri | 证书声明 |
| di | 用户/车辆的非零ID |
| IDi | 加密函数 |
| otp1 i & otp2 | 为每辆车生成的一次性密码对 |
| ηi & σi | 数学变量 |
| fmax & fmin | 最大和最小适应度值 |
| ϕ1 & ϕ2 | 近似系数 |
| wmax & wmin | 最大和最小惯性权重 |
| W1 和 W2 | 权重因子 |
| CRi | 第i个用户的证书 |
| UR | 用户注册 |
| Hx | 哈希函数 |
| pbest | 局部最优 |
| gbest | 全局最优 |
| t | 当前迭代 |
| Gmax | 最大迭代次数 |
| f(x) | 目标函数 |
| M | 邻居车辆数量 |
| N | 粒子数量 |
| P | 粒子位置 |
| V | 粒子速度 |
| W | 惯性权重 |
| C | 收缩因子 |
| D | 距离 |
4.3 预备知识
在我们提出的系统中,假设每个用户/车辆 i 都具有非零ID di。车辆i沿道路行驶时生成原始数据RDi及其对应的元数据MDi,并将其上传至附近的RSU,这些数据将被安全地存储在区块链中。每个用户都关联有一个私钥Kprivate和公钥Kpublic,它们存储在密钥处理器中。
1) 用户注册和数据上传
最初,道路上的每个用户将更新其原始数据 RDi 和元数据 MDi 到路侧单元。同时,用户的’真实身份通过其私钥Kprivate推断得出。该过程称为用户注册,如图3所示。
用户的私钥偶尔会被重新建立,用户注册过程可以表示为:
$$
UR_i(t+x) = ID(di_{t+x-1}) | H_x(K_{private})
\tag{1}
$$
其中 $ t = 1, 2, … $ 且 $ x = 0, 1, 2, … $,$ ID() $ 是加密函数,$ d_i $ 是用户身份,$ H_x $ 是哈希函数。
2) 认证
所提出的认证方案主要依赖于证书CRi,当用户完成注册过程后,将为用户i颁发证书CRi。该证书包含一个声明cri,该声明由用户IDdi、私钥Kprivate和公钥Kpublic验证。证书生成过程如图4所示。
通常,证书的声明由用户ID di定义,其数学表达式为:
$$
c_{ri} = ID(\text{user})(d_i)
\tag{2}
$$
所有生成的证书CRi都包含用户ID di作为部分信息,且该证书的声明依赖于私钥Kprivate,其由以下给出:
$$
CR_i = (c_{ri})^{K_{private}} \mod d_i
\tag{3}
$$
每个证书都标有有效期。每个证书的有效期可以计算为:
$$
T_{expire} = \frac{2 \cdot S_{comp} \cdot T_{CR}}{D}
\tag{4}
$$
其中 $ T_{expire} $ 是过期时间,$ S_{comp} $ 是计算速度,$ T_{CR} $ 是证书有效期,$ D $ 是距离。这些生成的证书也存储在区块链中,并定期更新。所存储的证书在数据共享过程中用作身份验证的主要来源。
3) 效率且安全的数据共享
当用户向本地路侧单元上传数据共享请求时,将启用双层认证过程。用户到路侧单元的数据共享请求可表示为:
$$
d_i \rightarrow \text{RSU}: \text{Req} = ID_i(\text{data}) | K_{public}
\tag{5}
$$
作为所提出的双层认证过程的第一步,路侧单元收集用户的所有本地信息,并向主存储发送证书验证请求,可表示为:
$$
\text{RSU} \rightarrow \text{MSA}: \text{Req} = ID_i(\text{data}) | CR_i | K_{public}
\tag{6}
$$
主存储 MSA 在注册过程中使用公式(1)搜索已存储的注册用户的最优证书。证书验证过程如下:
$$
\text{MSA}: \text{Ver} = ID_i(CR_i)
\tag{7}
$$
一旦证书验证过程完成,并且找到了最优证书,则主存储将使用每个用户的公钥和私钥对执行第二级身份验证。
$$
d_i \rightarrow \text{MSA}: \text{Ver} = ID_i(CR_i | K_{public})^{K_{private}}
\tag{8}
$$
仅当验证了公式(7)和(8)后,主存储才会返回用户身份验证回复,然后请求通过智能合约授予数据共享服务。回复消息可表示为:
$$
\text{MSA} \rightarrow \text{RSU}: \text{Rep} = ID_i(\text{data}) | c_{ri} | K_{public}
\tag{9}
$$
在区块链中执行的所提出的共识过程如图6所示。
这种两级身份验证过程只有在车辆之间提供相关数据时才能实现安全数据共享。然而,由于传感器故障、计算机病毒感染甚至出于自私目的,车辆可能会共享虚假信息。因此,为了使所提出的身份验证过程有效,有必要根据车辆的声誉对其进行量化。
所提出的TTA-CB协议的算法步骤如下所示:
TTA-CB算法
一种基于区块链的车联网边缘计算中安全数据共享的综合方法
将用户的上传数据传输至附近的路侧单元。
使用用户通过公式(1)执行用户注册 私钥privateK
为每个注册用户创建证书CR 公式(当3)(。数据共享请求=1),
Do
证书验证。
查找最优证书。
使用公式(8)进行用户验证。
如果(验证成功),
发送用户认证回复。
授予数据共享服务。
Else
数据共享访问被拒绝。
结束如果
End End
4.4 基于一次性密码的声誉计算
声誉评估组件通过捕获邻近车辆的传输来评估其可靠性。该组件以混杂模式运行,并通过验证注册用户的OTP,有效区分异常行为车辆。
假设车辆i、车辆j和车辆s参与一对源和目的车辆之间的数据转发,且互为邻近车辆。如果车辆i和车辆s在相应项中发现匹配,则认为车辆j为正常车辆条目。假设车辆j被监听到的数据中的数据ID远少于缓冲区中的数据ID,而数据的哈希值与缓冲区内容匹配,则车辆i和车辆s将声明车辆j为故障车辆。假设车辆j发送虚假响应,声称已正确转发来自车辆i的数据,但实际上丢弃了所有接收到的数据,则它可能误导车辆i,但无法误导车辆s,因为车辆s可以通过比较缓冲区中的对应条目与被监听数据中的数据ID和哈希值来检测车辆的攻击行为。车辆i和车辆s可通过观察与聚合车辆j的数据转发行为次数来识别其真实行为。
该算法首先使用授权车辆的一次性密码计算两个数学变量,其数学表达式为:
$$
\eta_i = otp1_i \cdot otp2_i
\tag{10}
$$
$$
\sigma_i = \frac{otp1_i - 1}{otp2_i - 1}
\tag{11}
$$
$ \eta_i $ 和 $ \sigma_i $ 是为车辆i引入的两个数学变量,$ otp1_i $ 和 $ otp2_i $ 是为车辆i生成的一对一次性密码。
通常,车辆i的公钥是根据以下条件选择的:
$$
\gcd(K_{public}(i), \sigma_i) = 1
\tag{12}
$$
设 $ TR_{i,j}(t) $ 表示一辆车辆的总声誉,可定义为以下三个组成部分的加权聚合和:
$$
TR_{i:j}(t) = \sigma_i w_1 DT_{i;j}(t) + \eta_i w_2 \frac{\sum_{s \in N_j; s \neq i} IT_{s;i;j}(t)}{M_j}
\tag{13}
$$
其中
$$
DT_{i;j}(t) = CF_{i;j}(t) \cdot R_{i;j}(t)^{-1}
\tag{14}
$$
$$
\sum_{s \in N_j; s \neq i} IT_{s;i;j}(t) = \sum_{s \in N_j; s \neq i} DT_{i;s}(t) \cdot DT_{s;j}(t)
\tag{15}
$$
$ DT_{i,j}(t) $ 是车辆i在时间t基于对车辆j的数据转发行为观察所得的对车辆j的直接信誉度。$ IT_{s;i;j}(t) $ 表示车辆i在时间t通过其邻近车辆(s)的推荐所获得的关于车辆j的间接信誉度的平均值。$ M_j $ 表示由车辆j的邻近车辆组成的集合。其中,$ CF_{i,j}(t) $ 表示车辆j在时间t正确转发数据总数,而 $ R_{i,j}(t) $ 表示在时间t车辆i向车辆j发送并被接收的数据总数。
权重因子 $ W_1 $ 和 $ W_2 $ 分别被分配给 $ DT_{i,j}(t) $ 和 $ IT_{s;i;j}(t) $,使得
$$
W_1 + W_2 = 1; \quad 0 \leq W_1 \leq 1 \quad \text{and} \quad 0 \leq W_2 \leq 1
\tag{16}
$$
声誉程度被限制在[0, 1]范围内的连续分数值,这表示某车辆认为其邻近车辆可能处于正常状态的程度。
| 表2 | 基于声誉的车辆分类规则 |
|---|---|
| 声誉范围 | 等级 |
| [0–0.25] | 4 |
| [0.26–0.5] | 3 |
| [0.51–0.75] | 2 |
| [0.76–1] | 1 |
如果车辆的声誉等级为0或接近0,则表示该车辆具有完全异常行为;而声誉等级为1或接近1则代表正常实体。根据声誉值的程度对车辆进行标签标注,并选择标注为正常的车辆参与数据共享。该过程将重复执行,并在一定周期内更新每辆车的声誉。以下展示了所提出的基于OTP的信誉评估算法的算法流程:
在声誉计算之后,有必要选择一个最优数据提供者。每个用户将比较数据提供候选者的最终声誉值。在本研究中,最优数据提供者选择问题可以通过利用粒子群优化算法来解决。
4.5 基于PSO的最优数据提供者选择
PSO[37]是一种基于鸟群行为的近似、基于种群的搜索技术。它维持一个粒子群,其中每个粒子代表一个候选解。表3中列出了PSO中使用术语的假设。
| 表3 | PSO的假设 |
|---|---|
| 使用的术语 | 假设 |
| 粒子 | 数据提供者 |
| 速度 | 声誉 |
| 位置 | Time |
在粒子群优化算法中,假设任意引入N个粒子,其中第ith个粒子表示为
$$
P_i = {P_{i1}, P_{i2}, \cdots, P_{in}}
\tag{17}
$$
第ith个粒子遇到现有的局部理想解pbest并呈现全局理想解gbest,分别如公式(18)和(19)所示。
$$
p_{best} = P_i = {P_{i1}, P_{i2}, \cdots, P_{in}}
\tag{18}
$$
$$
g_{best} = {g_{i1}, g_{i2}, \cdots, g_{in}}
\tag{19}
$$
第i个粒子的速度如公式(20)所示。
$$
V_i = {V_{i1}, V_{i2}, \cdots, V_{in}}
\tag{20}
$$
粒子群优化算法(PSO)用于最优数据提供者选择的目标函数 $ f(x) $ 可表示为:
$$
f(x) = \arg\max_{i;j} DT_{i;j}(t)
\tag{21}
$$
粒子(数据提供者)在 $ d- $ 维空间($ 1 \leq d \leq D $)中的位置和速度更新,可以表示为,
$$
V_{ij}^{t+1} = w \cdot V_{ij}^t + \phi_1 r_1 (p_{ij}^t - p_{ij}^t) + \phi_2 r_2 (g_{ij}^t - P_{ij}^t)
\tag{22}
$$
$$
P_{ij}^{t+1} = P_{ij}^t + V_{ij}^{t+1}
\tag{23}
$$
$ \phi_1 $ 和 $ \phi_2 $ 的近似值将通过利用以下条件来确定,
$$
\phi_1 = \frac{1}{2} (f_{max} + f_{min})
\tag{24}
$$
$$
\phi_2 = \frac{1}{2} (f_{max} + f_{min})
\tag{25}
$$
其中 $ f_{max} $ 和 $ f_{min} $ 分别为最大和最小适应度值。惯性权重 $ w $ 可表示为,见公式(26)
$$
w = w_{max} - \frac{(w_{max} - w_{min}) \cdot t_{current}}{G_{max}}
\tag{26}
$$
使用收缩因子C来控制粒子群优化算法(PSO)的迭代过程,并通过该因子调节速度。
With
$$
C = \frac{2}{\theta^2 - 4\theta}
\tag{27}
$$
其中 $ \theta > 4 $,且 $ C = 2.05 $。
使用粒子群优化算法寻找最优数据提供者的过程包括以下算法步骤。
用于最优数据提供者选择的粒子群优化算法
开始
初始化粒子总数、速度和位置
粒子分别使用公式(18)和(19)计算bestp和bestg 。
使用公式(20)计算目标函数。
使用以下方法更新粒子的速度和位置 公式(21)和(22),分别。
更新 bestp 和 bestg 的值。
重复这些步骤,直到满足终止条件 达到。
End
通过该选择过程,最优选择的数据提供者将为di生成一个智能合约。图7显示了粒子群优化算法选择过程的收敛周期。
数据提供者仅向通过双层认证过程验证的车辆提供服务访问。现在,将对所选车辆的信誉值进行比较,并筛选出信誉值较高的车辆参与数据共享过程。数据请求者在获取共享数据后,使用车辆币向数据提供者支付,并生成数据共享事件的记录,将该记录作为数据块添加到区块链中。
4.6 区块创建
为了创建数据块,MSA从本地RSU选择用户验证请求。请求验证消息被存储在创建的数据块中,并链接到前一个区块。图8展示了所创建区块的结构。
在发起数据共享请求之前,用户需要向RSU提供其用户ID和公钥,以在特定时间建立交易。这些交易被安全地存储在区块链中。创建的数据块包含两个部分,即(1)区块头和(2)区块体。区块头的字段如表4所示。
| 表4 | 区块头字段及描述 |
|---|---|
| 前一个区块的哈希 | 链接到前一个区块的哈希值 |
| Hash | 区块的哈希值 |
| Merkle根 | 区块中所有交易的哈希值 |
| 证书 | 为每个用户创建的证书 |
| 时间戳 | 生成区块的时间 |
| 用户ID | 用户的识别号码 |
区块中的所有交易都被合并到默克尔根中。默克尔根确保了交易的完整性,因为对交易的任何修改都会导致默克尔根值完全不同。每条交易记录在存储前都经过安全哈希处理,存储区块的哈希值计算如下:
$$
Hash_{mn} = hash(hash_m) + hash(hash_n)
\tag{28}
$$
其中,
$$
hash_m = hash(Transaction_m)
$$
$$
hash_n = hash(Publickey_m)
\tag{29}
$$
执行的交易总数计算如下:
$$
T_{total} = n(Vehicle) \cdot 3600s/hour \cdot t_{CP}
\tag{30}
$$
其中,$ t_{CP} $ 是安全管理者在交易收集周期内收集的交易组成的区块有效载荷,$ n(Vehicle) $ 是每小时通过的车辆数量。
区块的主体通过存储所有验证消息来创建。创建后,该区块必须由创建用户的私钥签名,并广播以链接到区块链。
一种基于区块链的车载边缘计算中安全数据共享的综合方法
5 仿真结果
本节展示了TTA‐CB协议的仿真结果,包括其性能和安全性分析。我们还对TTA‐CB协议的性能进行了比较,以证明所提出方法相较于其他现有区块链方法的优越性。
5.1 数据集描述
我们使用从旧金山黄色出租车获得的真实数据集[38]来评估和验证所提出的身份验证方法。实验在2.5 GHz Intel Core i7处理器和8GB内存上进行。数据集的描述见表5。
为了验证所提出的TTA‐CB协议,我们进行了包含100、200、500、1000和10,000辆车辆的实验。假设每个网络中存在的行为不良车辆数量分别为10、20、50、100和1000。声誉值每15分钟更新一次(即 τ=15分钟),总模拟时间为150分钟(即t + 10τ=150分钟)。获得的数值结果将在下一节中展示。
| 表5 | 数据集描述 |
|---|---|
| 使用的出租车数量 | 100 |
| 观测时间 | 1个月 |
| 纬度 | 37.747至37.78 |
| 经度 | −122.48至 −122.385 |
| 观测区域 | 8.34×3.67公里² |
| 观测区域类型 | 城市 |
| 数据收集周期 | 43.34 秒 |
5.2 数值结果
异常车辆检测以及广播虚假信号给路侧单元的车辆是为VECON提供安全性的主要解决方案。这也是所提出的TTA‐CB协议的目标。该协议的性能间接依赖于信誉值的计算。使用公式(13)计算的信誉值可识别网络中是否存在异常行为车辆。在所提出的TTA‐CB协议中,异常节点的信誉值初始较高。每个更新周期都会重新建立信誉值 τ。这表明了异常节点的原始性。表6列出了10个异常节点在时间t到t+ 10τ期间获得的信誉值。
| 表6 | 异常行为车辆的声誉值 |
|---|---|
| 车辆 | t |
| 1 | 0.872 |
| 2 | 0.913 |
| 3 | 0.765 |
| 4 | 0.701 |
| 5 | 0.587 |
| 6 | 0.825 |
| 7 | 0.906 |
| 8 | 0.482 |
| 9 | 0.703 |
| 10 | 0.759 |
表6表明,除车辆5和8外,所有车辆的信誉值均接近于1。这可能导致将异常行为车辆误分类为正常车辆,从而进一步增加误分类错误的概率。
通过深入观察表6中的数值,还可以发现每辆车辆的信誉值在每个更新周期’内均有所降低 τ。最终,在时间t+ 10τ时,所有车辆的信誉值均处于0到0.25之间。这降低了误分类错误率,并提高了识别的检测率。通过这种方式,所提出的TTA‐CB协议能够提升安全性。
表2中的车辆分类规则用于根据信誉值对车辆进行量化。为了说明量化过程,我们随机选取了在时间t + 10τ获得的10辆车辆的信誉值,这些值列于表7中。
| 表7 | 基于信誉值的车辆量化过程 |
|---|---|
| 车辆编号 | t+10τ的信誉值 |
| 1 | 0.09182 |
| 2 | 0.70612 |
| 3 | 0.39182 |
| 4 | 0.85787 |
| 5 | 0.99182 |
| 6 | 0.19182 |
| 7 | 0.58227 |
| 8 | 0.19182 |
| 9 | 0.79182 |
| 10 | 0.00017 |
在表7中,车辆2、4、5和9的信誉值接近1,被标记为正常车辆,并被选中进行数据共享。其余车辆被标记为恶意或行为不良,将被丢弃。
使用粒子群优化算法(PSO)选择最优数据提供者时,标签为正常的车辆的适应度值估计,并在表8中列出了所选车辆的优化值。
| 表8 | 所选车辆的优化值 |
|---|---|
| 所选车辆编号 | 优化值 |
| 2 | 0.171168 |
| 4 | 0.399862 |
| 5 | 0.277552 |
| 9 | 0.990225 |
从表8可以看出,车辆9获得的最大适应度值为0.9902,显著高于其他车辆的适应度值。这提高了车辆9作为数据提供者的选择概率。
在数据共享之前,准确检测正常和异常行为车辆对于提升安全性至关重要。所提出的TTA‐CB协议在此方面发挥了作用,表9展示了所获得的结果。
| 表9 | 使用Tta‐Cb协议对恶意车辆的检测率 |
|---|---|
| 车辆总数 | 总数 |
| 100 | 10 |
| 200 | 20 |
| 500 | 50 |
| 1000 | 100 |
| 10,000 | 1000 |
从表9可以看出,所提出的TTA‐CB协议在100辆车辆时的检测率为100%,200辆车辆时为95%,500辆车辆时为96%,1000辆车辆时为94%,10,000辆车辆时为98.8%。当车辆总数为100时,获得了最高的检测率。同时,在200、500、1000和10,000辆车辆情况下的检测率也处于可接受水平。这证明了所提出方法的重要性。
此外,为了证明所提出的TTA‐CB协议的重要性,有必要估算该认证方案的时间消耗。使用一个公钥对一个用户进行身份验证的时间消耗可表示为:
$$
T = t \cdot (\log a_1^2 + \log a_2^2)
\tag{31}
$$
其中 $ t = 0.01 $ 秒,适用于 1KB 输入,$ a_1 $ 和 $ a_2 $ 分别为第一级和第二级认证。表10提供了所提出认证方案的时间消耗。
| 表10 | TTA‐CB协议的时间消耗 |
|---|---|
| 车辆数量 | 认证时间消耗(分钟) |
| 一级认证 | |
| 100 | 2.05 |
| 200 | 2.89 |
| 500 | 3.17 |
| 1000 | 3.86 |
| 10,000 | 4.01 |
从表10中可以清楚地得知,所提出的TTA‐CB协议的时间消耗在很大程度上取决于一级认证。此外,总时间所提出认证方案的时间消耗是令人满意的。
5.3 性能分析与比较
在本节中,对所提出的TTA‐CB协议的性能进行了分析,并与文献[29]中提出的三权重主观逻辑(TWSL)方案以及文献[39]中广泛采用的传统主观逻辑(TSL)模型进行了比较。在所提出的TTA‐CB协议中,通过获取车辆在当前时间t的OTP对来计算每辆车的声誉,并在每个更新周期 τ进行更新。与此同时,TWSL方案使用线性函数计算声誉值,而TSL方案则利用车辆之间的交互事件来计算车辆的声誉。
最初,异常行为车辆表现得像正常车辆一样,与其他车辆进行交互并向MSA发送虚假信号。因此,在当前时刻,异常行为车辆的信誉值较高。在每个更新周期 τ内,异常行为车辆的声誉值逐渐降低,范围介于0到0.5之间,这从图9中可以明显看出。
此外,观察到所提出的TTA‐CB协议获得的声誉值相较于TWSL方案和TSL方案获得的声誉值更低。这使得基于声誉值使用所提出的TTA‐CB协议对车辆进行量化的过程更加准确,从而确保了车辆之间高效的数据提供者选择和数据共享。
随着车辆行为不良概率的增加,任何VEC系统的性能和安全性都会下降。同样,从图10可以看出,随着车辆行为不良概率的增加,声誉值会降低,因为所提出方法的性能和安全性依赖于车辆声誉。
相比之下,在图10中,随着车辆行为不良概率的增加,所提出的TTA‐CB协议的声誉低于TWSL和TSL方案。这表明所提出的TTA‐CB协议对行为不良概率敏感,这一特性使我们提出的方法具有检测恶意车辆的优势。
每个更新周期更新信誉值的过程τ,以及处理在时间t+ 10τ获得的每辆车的信誉值,提高了所提出的TTA‐CB协议的检测率。显然,检测率的提高降低了误分类错误。图11展示了不同数量的恶意车辆下的误分类错误比较。
从图11可以看出,当网络中仅包含10个恶意车辆时,所提出的TTA‐CB协议的误分类错误非常接近于0,并且随着恶意车辆数量的增加,误分类错误略有上升。然而,与TWSL和TSL方案相比,该方法的误分类错误相对更低。这为TTA‐CB协议带来了额外的优势。
在图12中,展示了所提出的TTA‐CB协议的检测率随车辆数量变化的情况,并将结果与TWSL和TSL方案进行了比较。同样,在图13中,对所提出的TTA‐CB协议的平均检测率与TWSL和TSL方案进行了比较。
从图12和13可以看出,所提出的TTA‐CB协议的平均检测率达到96.56%,而TWSL方案为93%,TSL方案为91.5%。此外,即使车辆数量变为100、200、500、1000和10000,所提出的TTA‐CB协议的表现仍优于TWSL和TSL方案。这确保了能够准确检测异常行为车辆,从而消除高安全风险,并保证使用所提出的TTA‐CB协议进行数据共享时的安全性。
5.4 安全分析
我们的区块链采用具有双层认证和基于一次性密码的信誉管理的联盟区块链,以确保数据存储和共享过程中的安全与隐私保护。利用联盟区块链的数据可追溯性、智能合约自动执行以及双层认证机制,提升了车辆边缘计算网络(VECONs)的安全性。通过基于一次性密码的信誉计算和粒子群优化算法(PSO),消除了选择恶意车辆和数据提供者的风险。车联网区块链在数据共享过程中的透明性特征,避免了未经数据提供者身份验证的二手共享行为。这带来了VECON安全且高效。在安全性方面分析性能时,所提出的方法还具有以下优势。
- 安全数据共享 :在一级认证期间产生虚假信号的异常行为车辆可以在二级认证中被识别,从而提高数据共享的安全性。
- 数据可靠性 :每个车辆的声誉可通过仅由注册用户接收的一次性密码(OTP)进行估算,这使得生成错误的信誉值成为不可能。
- 智能合约的自主执行 :智能合约无需相互信任,且完全自动执行。
- 可信第三方协商 :所提出的方法在数据共享过程中无需任何可信第三方。
- 数据认证 :所有共享记录均由其他实体进行公开审计和身份验证,由于巨大成本,无法同时攻破所有实体。
6 结论
本文提出了一种在车辆边缘计算网络中使用传统联盟区块链的安全数据共享方法。为了提高VECON的安全性,采用了一种新颖的TTA‐CB协议,并结合联盟区块链技术。所提出协议的双层机制依赖于认证过程,用于一级验证。移动服务代理(MSA)利用用户的公钥和私钥对用户身份进行二级验证。采用基于一次性密码(OTP)的声誉评估方法来量化恶意车辆的行为。我们将粒子群优化算法(PSO)的优势与基于OTP的声誉机制相结合,以识别网络中的最优数据提供者。据我们所知,这是首次将优化算法与区块链相结合用于网络安保的工作。实验结果表明,与现有方法相比,所提出的TTA‐CB协议的声誉值尽可能低,从而实现了在VECON中高度安全的数据共享。
2140

被折叠的 条评论
为什么被折叠?



