每周文章分享
—2025.03.24至2025.03.30—
标题: A Vehicular Trust Blockchain Framework With Scalable Byzantine Consensus
期刊: IEEE TRANSACTIONS ON MOBILE COMPUTING,2024
作者: Xiao Chen , Guoliang Xue, Ruozhou Yu , Haiqin Wu , and Dawei Wang
分享人: 河海大学——林鑫
研究背景
现有的车载网络移动信任区块链中,许多用户要求系统处理海量流量信息,实现准确的信任评估、可靠地保存数据并快速响应。虽然现有的车载区块链系统确保了不变性、透明度和可追溯性,但它们在可扩展性、性能和安全性方面受到限制。针对车联网等移动场景中如何确保高效且可信的信任评估过程,准确和公平的信任评估结果,以及如何在保持可扩展性的基础上提高区块链共识的效率。本文提出了一种新的车载信任区块链(VT链)。该系统旨在可扩展的区块链上建立可靠的信任评估模型,其中信任模型采用同行评审的方法来确保可靠的信任评估,并利用 TEE 进行安全计算,区块链结合多分片区块链方案,并集成了一个分层的BFT共识框架以提高可扩展性和效率。
关键技术
区块链,是由一系列按照时间顺序排列的数据块组成的链条。每一个数据块包含了一定的信息,包括交易信息、时间戳、链上地址等,并且每一个数据块都被数字签名和加密算法保护,以确保其不可篡改性。这些数据块通过一种特殊的机制——共识算法,相互连接形成一条完整的链条,具有以下特点:
去中心化:区块链技术不依赖于任何中心化的机构或服务器,每个参与者都是网络的一部分,共同维护链上数据的完整性和安全性。
分布式账本:区块链上的每一个节点都拥有完整的账本副本,这意味着数据是公开透明的,同时又能保证数据的安全性。
不可篡改性:一旦数据被写入区块链,就无法被篡改或删除,这使得区块链成为记录交易和事件的理想选择。
匿名性:区块链上的交易可以保持匿名性,保护用户的隐私。
BFT共识协议, 是一种容错算法,旨在系统中存在一部分恶意或故障节点的情况下,仍然能够达到一致性。尽管不同的BFT协议在具体实现上有所不同,但它们通常遵循以下几个基本步骤:
提议阶段:一个节点(通常是领导者或提议者)提出一个值或决策,并向其他节点发送该提案。
投票阶段:接收提案的节点根据收到的提案进行投票。每个节点将其投票(支持或拒绝)发送给所有其他节点。
收集阶段:节点收集其他节点的投票信息,并根据投票结果确定是否达成一致。通常,系统需要收集超过三分之二的投票才能确认某个值为最终值。
确认阶段:一旦达成一致,节点会向所有参与者广播最终决定,所有节点更新其状态。
本文方法的创新和贡献如下:
1)去中心化和硬件安全的信任评估:所提出的 VT-Eva 模型采用基于同行评审的方法来确保可靠的信任评估,并利用 TEE 进行安全计算,从而确保评估过程的完整性和机密性。
2)具有分层共识的可扩展信任区块链:所提出的 VT-chain 结合了多分片区块链方案来保证可信和公平的信任管理。此外,它集成了一个分层的BFT共识框架,提高了系统的可扩展性和效率。
3)为了验证所提解决方案的有效性,通过在分布式云服务器上部署测试平台,进行了实际实验。现实世界的测试平台实验表明,随着网络规模(即共识节点的数量)的增加,VT 链显着提高了吞吐量。
算法介绍
图1展示了本文的车辆信任管理体系架构(VT链),主要分为路边单元(RSU)层和车辆层,在RSU层中,每个RSU能够与本地车辆以及其他RSU通信,保证了实施信任评估和管理模型时的消息传输,同时根据评分者的反馈进行信任计算。车辆层中,车辆节点表现为服务请求者或提供者,也可以作为评分者来执行评级任务,也可以充当验证器来运行共识协议。
图1. VT链系统架构
本文提出的算法主要包括两个方面:车辆信任评估模型和车辆信任区块链。
1)车辆信任评估模型:车辆信任评估模型的主要信任评估过程从消息分类和评分者选择开始。接下来进行每个车辆节点侧的消息质量评级,消息的全局评级计算由RSU的TEE保护,。最后一步是计算信任值,为每个参与节点生成全局信任值,包括四个模块:
A. 消息分类和评分者选择
基于同行评审的模型首先在基站根据属性将等待评估的消息分类为不同的组,并将其广播,其中m^s_j,i,k,t表示车辆j在RSU k和时间t发送的第j条消息,其中s表示信息的属性,可以是事故、交通、停车、道路状况等信息。然后将每个消息组分配给具有相同属性的一组评分者,评分者的选择是通过计算Jaccard相似度来确定的, 然后评估请求被发送到这些评估者以接受消息评估。
B. 车辆节点的消息评级
车辆节点的消息评级主要包括以下步骤:
步骤1,评分者首先根据Jaccard相似度判断是否与目标消息具有适当的属性相似性;如果是,它可以选择接受评分任务。
步骤2,接受任务后,对于给定的一个消息m^s_j,i,k,t,要给出评级值e^vi_j,I,k,t,并以<m^s_j,i,k,t,e^Vi_j,I,k,t>形式存储在列表magRtLt_vi,k,t中,在完成评分任务后,将列表提交给RSUk,在这个过程中评分者会对消息列表进行签名和加密。
C. RSU的全局评级计算
RSU根据车辆节点提交的消息列表来计算消息的全局评级值,并计算每个参与节点的全局信任值。首先对所有评估者提交的评分结果进行聚合,并使用 TEE 验证其完整性,然后使用贝叶斯推理计算每个消息的全局评分值T_rat(v_i,t)。
D. RSU的节点信任评估
RSU根据得到的消息的全局评分值来进行节点的信任评估:
步骤1对消息发送者的信任评估:根据发送方v_i来对所有消息及其评级值进行分类,然后根据贝叶斯推理计算每个发送方的整体信任值。
步骤2对消息评级者的信任评估:利用评估者生成的评分值e_j,i,k,t与总体评分值fi(m_j,i,j,t)之间的相对差异和绝对差异与信任度阈值进行比较来确定评分者的信任程度,最后同样基于贝叶斯推理来计算信任值。
步骤3全局信任评估,通过发送方信任值,评估器的信任值以及历史信任值的加权评估来进行全局信任评估,因为系统中的节点既可以作为发送方,也可以作为评估方。
2)车辆信任区块链:为了进一步克服现有区块链可扩展性较低的问题,引入了一种基于区块链分片技术以及分层BFT共识协议的去中心化车辆信任管理区块链。
A. 多层架构
将区块链网络分为多个子网络,称为分片,每个分片包含一定数量的节点,其中一个特殊的根分片由所有RSU节点组成,负责全局签名验证和区块生成。其他分片称为本地分片(consensus shard),包含来自一个或多个车载节点集合的节点,并在每个分片中执行拜占庭容错(BFT)共识协议。本地分片通过处理数据,生成微块来提交给根分片,由根分片进行全局共识。
B. 分层BFT共识框架
在本地分片中,当消息广播到分片中时,主节点将交易组合成微块B_k,并于唯一序列号绑定,并生成一个预准备的消息〈pre-prepare, seq, m, d〉(d为消息m的摘要),签名后广播到分片中的备份节点。
备份节点验证签名、消息摘要及未重复使用相同序列号后,发送准备消息〈prepare, seq, d〉给主节点,主节点在收集至少2f_k+1( f_k为分片内最大容错节点数)个准备消息后,生成聚合准备消息,并进行广播。
本地分片验证聚合签名,并提交确认消息对确认对微块B_k的共识。
最后主节点将消息聚合提交至根分片。根分片负责整合各分片的微块,首先将收到的微块按序列号和时间戳全局排序,生成最终块( B_K ),并进行双重验证(验证本地的共识结果,验证全局顺序的正确性),然后对最终的块进行一轮类PBFT协议,确保其合法性,确认后,将最终块广播,各副本后写入区块链。
C. 跨层交易与共识
本部分主要实现一种结合分层BFT协议以及两阶段提交(2PC)协议,实现跨分片交易的安全共识以及全局一致性。跨分片交易指的是输入和输出涉及不同分片,由于输入与输出分片分离,若恶意客户端向不同分片发送两笔冲突交易(例如同一输入在不同分片被多次使用),单个分片无法直接验证全局冲突。
因此为了解决跨分片冲突问题,引入了2PC协议,由协调者(可能是客户端或指定分片)负责协调多分片的状态,首先客户端向输入分片S1,发送预提交请求,检查输入状态是否可用,S1的副本需在本分片内运行拜占庭共识,生成可用性证明(Availability Certificate),证明输入满足交易条件,然后客户端将交易(Tx1、Tx2及其可用性证明)发送给所有相关分片(输入分片S1、输出分片S2和S3)。各输出分片将交易提案(如Tx1在S2、Tx2在S3)按分层BFT协议排序,形成全局总顺序的最终区块。若全局排序后的区块中包含冲突交易,所有副本可基于可用性证明识别拜占庭错误(如输入被重复使用),拒绝无效交易。
实验结果分析
实验设置:机制部署在本地服务器和云虚拟机上以进行性能测量。车辆信任评估模型是在C语言中开发的,它基于配备tee的服务器实现了核心信任计算和消息中继操作。对 TEE 使用 Intel Software Guard Extensions (SGX)。Intel SGX通过应用程序隔离技术帮助保护数据使用。通过保护选定的代码和数据不被修改,开发人员可以将他们的应用程序划分为硬化的飞地或可信的执行模块,以增加应用程序的安全性。
此外还基于 20 个 Google Cloud 虚拟机 (VM) 部署了 VT 链系统,每个虚拟机有四个内核和 8 G RAM。我们的实验使用 4 个 VM 服务器部署 RSU 节点(即 RSU 服务器)和 16 个 VM 服务器来随机部署车辆节点(即车辆服务器)。每个RSU服务器连接到四个客户机服务器,并通过TCP/IP连接进行通信。
如图2,3所示,本文探究了多服务器以及TEE对节点信任计算延迟的影响,本地服务器中节点信任计算的延迟增加要快得多,而远程服务器的延迟随着消息或客户端数量的增加保持稳定。这是因为与本地服务器相比,远程服务器从云平台获得优化的上下文切换。图 3 显示了从多个本地和远程服务器下执行测量的延迟,并展示了类似于图 2的趋势。总之,节点信任计算可以在远程云服务器中更稳定地执行。
图2. 单服务器中节点信任计算的时间
图3. 多服务器中节点信任计算的时间
接下来评估了本文提出的VT信任评估模型,图4展示了基于不同数量的客户端和评估者的 VT-Eva 执行的吞吐量,即每秒消息的数量(包括评级请求消息和评级结果消息),随着车辆端数量的增加,向系统发送的评分请求数量将越来越多,这意味着评级请求吞吐量也会增加,直到系统达到满容量。图 4(b) 显示了使用 100 个客户端和一组 100 到 200 个评分者时的评分结果吞吐量(即每秒处理的评分结果消息的数量)。在此图中,吞吐量随着评估者数量的增加而降低。这是因为更多的评分者会导致系统中处理的大量评级消息来计算最终的评级结果。
图4. 车辆信任评估操作的吞吐量
图 5展示VT链的性能,为了评估区块链共识的性能,我们使用几个协议(即 HotStuff [27]、PBFT [21] 和 CheapBFT [29])作为基线。这里使用吞吐量作为评估标准,图5(a)显示,与PBFT和CheapBFT协议相比,所提出的分层BFT共识(即HierBFT)协议的吞吐量要高得多(约50 ~ 75 mbps,副本集从100增加到200),当副本数量接近 200 时,HierBFT 和 HotStuff 之间的差异超过一倍。这表明由于分层共识设计,HierBFT 具有更高的可扩展性。另一方面,由于 HierBFT 在共识中应用两层框架,实现多层共识和跨分片通信需要更多的时间。因此,如图5(b)所示,HierBFT协议的平均延迟略长于HotStuff。然而,由于 HotStuff 的可扩展性有限,随着副本集的增长,这种差异正在减少。
图 5. 区块链共识协议的吞吐量和延迟
最后是对本地存储利用率的评估, 由于每个节点实例在信任评估和区块链共识过程中实现了一组并发操作,导致内存占用更重,因此需要对本地存储 (RAM) 在每个 VM 服务器上的使用进行分析,表 1 显示了 RAM 在两种类型的服务器(即 RSU 和车辆端服务器)方面的平均使用。随着客户端数量从 100 增加到 200,RSU 服务器上 RAM 的平均使用增加了 15%,而车辆服务器上的平均 RAM 使用增量大于 30%。这是因为当车辆客户端数量的增加会导致更多并行操作的增加。而RSU 的数量保持不变。由于增加的车辆产生更多的服务请求,这些请求需要在RSU服务器上进行额外的本地存储,因此在RSU服务器上仍然存在RAM使用增量,但小于车辆服务器。
表1.本地平均RAM使用量
总结
本文提出了一种车载信任区块链(VT-chain)系统,首先引入了一种新的信任评估模型,该模型利用基于同行评审的信任评估和支持TEE的信任计算,分别提高准确率和安全性。本文提出了一种用于信任数据管理的多分片区块链框架。其次,为了建立多分片区块链,提出了一种分层 BFT 共识协议,允许多个节点组在较低层并发运行 BFT 共识,同时利用全局节点组来确保总顺序。该设计旨在提高区块链的可扩展性,以满足车载信任管理系统等大规模系统的要求。
END
==河海大学网络与安全实验室==
微信搜索:Hohai_Network
联系QQ:1084561742
欢迎关注!
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...