基于“做市商账户”的区块链跨分片协议 —— BrokerChain
彭肖文,黄华威,2022年5月 论文信息:Huawei Huang, Xiaowen Peng, Jianzhou Zhan, Shenyang Zhang, Yue Lin, Zibin Zheng, Song Guo, “BrokerChain: A Cross-Shard Blockchain Protocol for Account/Balance-based State Sharding”, INFOCOM, May 5, 2022. 一、研究背景与动机 区块链是比特币、以太币等加密数字货币的底层基础技术,它综合利用了点对点(P2P)底层网络、分布式数据存储、密码学、分布式一致性共识机制、以及智能合约等计算机技术,构建出一个分布式存储的链式账本 [1][2]。区块链的底层架构为上层应用提供了存储、传输、计算等服务,具有去中心化、难以篡改、协同操作和匿名隐私等典型特征,有着较大的发展和应用前景。区块链主要应用于金融结算、商品溯源、版权保护、数据确权等业务场景 [3]。 然而,区块链底层技术仍处于初期探索阶段,还面临诸多问题和挑战 [4][5]。具体来讲,现有的区块链技术难以解决共识效率问题。例如,比特币的吞吐量为每秒 7 条交易、以太坊的吞吐量也仅为每秒 14 条交易,远低于商用级别所需的吞吐量要求。只有提高了区块链的可扩展性,才能扩大其适用场景,从而赋能数字经济、金融保险、政务等多个领域与行业。 针对区块链的可扩展性,研究人员提出了多种不同的技术方案,如闪电网络[6]、DAG技术[7]、状态通道[8]和分片机制[9]等。其中,分片(Sharding)是一种可提高区块链可扩展性的链上扩容技术。分片机制将完整的账本数据切分为多个互不相交的子账本,再让不同的区块链节点群(也称为分片)管理不同的子账本,多个分片可以并行验证交易,以此线性提升区块链系统的事务处理能力。 但是,区块链分片技术仍面临诸多挑战。如图1所示,基于账户模型的分片机制存在两个问题:第一个问题是跨分片交易比例过高,几乎所有交易均为跨分片交易。过高的跨分片交易率不仅给系统增加了额外的交易负载,而且会造成大量的跨分片通信开销。第二个问题是分片间的交易负载严重失衡,存在冷热不均的现象。我们分别称需要处理过量和少量交易的分片为热分片(Hot Shard)和冷分片(Cold Shard)。热分片由于被持续注入大量的交易,产生了交易拥挤的现象,这会增加交易的确认延迟。而冷分片内只有少量交易可以处理,所产生的区块的交易填充率不高,造成了算力、带宽等资源的浪费。面对如上两个问题,一个难题是如何保证跨分片交易比例较低的同时保证分片间的交易负载均衡。 另一方面,在基于状态分片的区块链系统中,跨分片交易的验证和处理策略是至关重要的。系统需要支持分片间的通信,来保证跨分片交易执行的“原子性”。目前已有的比较高效的跨分片交易方案主要通过如图2所示的消息传递方式进行。首先,交易在源分片上链后,源分片的节点会向目标分片发送一个包含 Merkle Path 证明的中继消息。目标分片的节点接收到中继消息后,通过 Merkle Path 验证对应交易的正确上链情况,再在目标分片将关联交易上链,从而实现对相关区块链状态的更新。因为跨分片验证的存在,跨分片交易的延迟在理论上至少是片内交易时延的两倍。当位于目标分片内的关联交易迟迟无法上链时,跨分片交易的共识延迟有可能无限大。 为了减少跨分片交易比例、实现分片之间的负载均衡、并且保证跨分片交易的原子性,本文旨在提出一种新的跨分片协议来提高分片区块链的吞吐量和降低交易的平均确认延迟。 二、本文贡献 三、提出的跨分片协议简介 1. 提出协议的概述 本文提出的区块链动态分片协议的整体框架如图3所示。和传统的分片协议一样,所提出的动态分片协议以“时期 … Continue reading 基于“做市商账户”的区块链跨分片协议 —— BrokerChain