Arma: Byzantine Fault Tolerant Consensus with Horizontal Scalability
Yacov Manevich, Hagar Meir, Kaoutar Elkhiyaoui, Yoav Tock, May Buzaglo
TL;DR
Arma addresses the throughput bottlenecks of traditional BFT by decoupling data dissemination/validation from the consensus layer and distributing work across shards within multiple parties. It introduces batchers and assemblers that generate and reconstruct blocks from batch attestations, with censorship resistance and transaction deduplication achieved via probabilistic verification and complaint-based primary batcher rotation. The approach yields horizontal scalability and significantly enhances performance, as demonstrated by prototypes embedded in Hyperledger Fabric and a fully distributed LAN/WAN deployment, while maintaining finality guarantees through a BFT consensus on batch attestations. This work provides a practical path to high-throughput, censorship-resistant, distributed consensus suitable for enterprise blockchains and payment-like applications, with measurable gains over prior multi-instance BFT designs.
Abstract
Arma is a Byzantine Fault Tolerant (BFT) consensus system designed to achieve horizontal scalability across all hardware resources: network bandwidth, CPU, and disk I/O. As opposed to preceding BFT protocols, Arma separates the dissemination and validation of client transactions from the consensus process, restricting the latter to totally ordering only metadata of batches of transactions. This separation enables each party to distribute compute and storage resources for transaction validation, dissemination and disk I/O among multiple machines, resulting in horizontal scalability. Additionally, Arma ensures censorship resistance by imposing a maximum time limit on the inclusion of client transactions. We built and evaluated two Arma prototypes. The first is an independent system handling over 200,000 transactions per second, the second integrated into Hyperledger Fabric, speeding its consensus by an order of magnitude.
