PolyShard: Coded Sharding Achieves Linearly Scaling Efficiency and Security Simultaneously
Songze Li, Mingchao Yu, Chien-Sheng Yang, A. Salman Avestimehr,, Sreeram Kannan, Pramod Viswanath

TL;DR
PolyShard introduces a coded sharding protocol that simultaneously achieves high efficiency, security, and scalability in blockchain systems, overcoming the traditional trilemma by leveraging polynomial coding techniques.
Contribution
The paper presents PolyShard, a novel coded sharding scheme that reaches information-theoretic bounds on storage, throughput, and trust, enabling truly scalable and secure blockchain systems.
Findings
PolyShard outperforms existing sharding methods in efficiency and security.
Simulation results demonstrate significant scalability improvements.
PolyShard achieves information-theoretic optimal bounds on system performance.
Abstract
Today's blockchain designs suffer from a trilemma claiming that no blockchain system can simultaneously achieve decentralization, security, and performance scalability. For current blockchain systems, as more nodes join the network, the efficiency of the system (computation, communication, and storage) stays constant at best. A leading idea for enabling blockchains to scale efficiency is the notion of sharding: different subsets of nodes handle different portions of the blockchain, thereby reducing the load for each individual node. However, existing sharding proposals achieve efficiency scaling by compromising on trust - corrupting the nodes in a given shard will lead to the permanent loss of the corresponding portion of data. In this paper, we settle the trilemma by demonstrating a new protocol for coded storage and computation in blockchains. In particular, we propose PolyShard:…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
