Blockchains face a scalability challenge due to the intrinsic throughput limitations of consensus protocols and the limitation in block sizes due to decentralization. An alternative to improve the number of transactions per second is to use Layer 2 (L2) rollups. L2s perform most computations offchain using blockchains (L1) minimally under-the-hood to guarantee correctness. A sequencer receives offchain L2 transaction requests, batches them, and commits compressed or hashed batches to L1. Hashing offers much better compression but requires a data availability committee (DAC) to translate hashes back into their corresponding batches. Current L2s consist of a centralized sequencer which receives and serializes all transactions and an optional DAC. Centralized sequencers can undesirably influence L2s evolution. We propose in this paper a fully decentralized implementation of a service that combines (1) a sequencer that posts hashes to the L1 blockchain and (2) the data availability committee that reverses the hashes. We call the resulting service a (decentralized) arranger. Our decentralized arranger is based on Set Byzantine Consensus (SBC), a service where participants can propose sets of values and consensus is reached on a subset of the union of the values proposed. We extend SBC for our fully decentralized arranger. Our main contributions are (1) a formal definition of arrangers; (2) two implementations, one with a centralized sequencer and another with a fully decentralized algorithm, with their proof of correctness; and (3) empirical evidence that our solution scales by implementing all building blocks necessary to implement a correct server.
翻译:由于共识协议固有的吞吐量限制以及去中心化带来的区块大小限制,区块链面临着可扩展性挑战。提升每秒交易量的替代方案是采用Layer 2(L2)rollup技术。L2将大部分计算在链下执行,仅在底层最小化地利用区块链(L1)来保证正确性。定序器接收链下L2交易请求,将其批量处理,并将压缩或哈希化的批次提交至L1。哈希化能提供更优的压缩效果,但需要数据可用性委员会(DAC)将哈希值还原为对应的原始批次。现有L2系统通常采用中心化定序器来接收和序列化所有交易,并可选配DAC。中心化定序器可能对L2的发展产生不利影响。本文提出一种完全去中心化的服务实现方案,该方案整合了(1)向L1区块链提交哈希的定序器与(2)还原哈希值的数据可用性委员会。我们将此集成服务称为(去中心化)编排器。我们的去中心化编排器基于集合拜占庭共识(SBC)——一种允许参与者提议值集合,并在所提议值的并集子集上达成共识的服务机制。我们扩展了SBC以实现完全去中心化的编排器。主要贡献包括:(1)编排器的形式化定义;(2)两种实现方案(含中心化定序器版本与完全去中心化算法版本)及其正确性证明;(3)通过实现构建正确服务器所需的所有组件,提供方案可扩展性的实证依据。