Optimal Sharding for Scalable Blockchains with Deconstructed SMR

Jianting Zhang,Zhongtang Luo,Raghavendra Ramesh,Aniket Kate
2024-10-05
Abstract:Sharding is proposed to enhance blockchain scalability. However, a size-security dilemma where every shard must be large enough to ensure its security constrains the efficacy of individual shards and the degree of sharding itself. Most existing sharding solutions therefore rely on either weakening the adversary or making stronger assumptions on network links. This paper presents Arete, an optimally scalable blockchain sharding protocol designed to resolve the dilemma based on an observation that if individual shards can tolerate a higher fraction of (Byzantine) faults, we can securely create smaller shards in a larger quantity. The key idea of Arete, therefore, is to improve the security resilience/threshold of shards by dividing the blockchain's State Machine Replication (SMR) process itself. Similar to modern blockchains, Arete first decouples SMR in three steps: transaction dissemination, ordering, and execution. However, unlike other blockchains, for Arete, a single ordering shard performs the ordering task while multiple processing shards perform the dissemination and execution of blocks. As processing shards do not run consensus, each of those can tolerate up to half compromised nodes. Moreover, the SMR process in the ordering shard is lightweight as it only operates on the block digests. Second, Arete considers safety and liveness against Byzantine failures separately to improve the safety threshold further while tolerating temporary liveness violations in a controlled manner. Apart from the creation of more optimal-size shards, such a deconstructed SMR scheme also empowers us to devise a novel certify-order-execute architecture to fully parallelize transaction handling, thereby improving the performance of sharding systems. We implement Arete and evaluate it on a AWS environment by running up to 500 nodes, showing that Arete outperforms the state-of-the-art sharding protocol.
Cryptography and Security
What problem does this paper attempt to address?
This paper attempts to solve the scalability problem in blockchain technology, especially by using sharding technology to increase the transaction throughput of blockchain systems. Specifically, the paper proposes a highly scalable blockchain sharding protocol named Arete, which aims to solve the size - security dilemma faced by sharding technology in the following ways: 1. **Increase the security threshold of sharding**: By decomposing the State Machine Replication (SMR) process, Arete increases each shard's tolerance to Byzantine faults, thereby enabling the creation of smaller yet more secure shards. 2. **Separate data dissemination, ordering, and execution tasks**: Arete introduces a new sharding architecture that separates data dissemination, ordering, and execution tasks and assigns them to different shards. This design allows the processing shards to tolerate up to half of the Byzantine nodes, while the ordering shards only need to tolerate one - third of the Byzantine nodes. 3. **Separate security and liveness**: By separating the security and liveness thresholds of shards, Arete further enhances shard security while allowing a certain degree of tolerance for temporary liveness violations, thereby reducing the cost of shard recovery. These improvements enable Arete to create more and smaller shards without sacrificing security, significantly enhancing the scalability and performance of blockchain systems.