PolyShard: Coded Sharding Achieves Linearly Scaling Efficiency and Security Simultaneously

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: “polynomially coded sharding” scheme that achieves information-theoretic upper bounds on the efficiency of the storage, system throughput, as well as on trust, thus enabling a truly scalable system. We provide simulation results that numerically demonstrate the performance improvement over state of the arts, and the scalability of the PolyShard system. Finally, we discuss potential enhancements, and highlight practical considerations in building such a system.

[1]  Gilles Zémor,et al.  Hashing with SL_2 , 1994, CRYPTO.

[2]  S. Nakamoto,et al.  Bitcoin: A Peer-to-Peer Electronic Cash System , 2008 .

[3]  Yuan Zhou Introduction to Coding Theory , 2010 .

[4]  Craig Gentry,et al.  Non-interactive Verifiable Computing: Outsourcing Computation to Untrusted Workers , 2010, CRYPTO.

[5]  Yi Ming Zou Representing Boolean Functions Using Polynomials: More Can Offer Less , 2011, ISNN.

[6]  Nihar B. Shah,et al.  Optimal Exact-Regenerating Codes for Distributed Storage at the MSR and MBR Points via a Product-Matrix Construction , 2010, IEEE Transactions on Information Theory.

[7]  Yunnan Wu,et al.  A Survey on Network Codes for Distributed Storage , 2010, Proceedings of the IEEE.

[8]  Nir Bitansky,et al.  From extractable collision resistance to succinct non-interactive arguments of knowledge, and back again , 2012, ITCS '12.

[9]  Craig Gentry,et al.  Pinocchio: Nearly Practical Verifiable Computation , 2013, 2013 IEEE Symposium on Security and Privacy.

[10]  Eli Ben-Sasson,et al.  Succinct Non-Interactive Zero Knowledge for a von Neumann Architecture , 2014, USENIX Security Symposium.

[11]  Daniel Davis Wood,et al.  ETHEREUM: A SECURE DECENTRALISED GENERALISED TRANSACTION LEDGER , 2014 .

[12]  Aviv Zohar,et al.  Secure High-Rate Transaction Processing in Bitcoin , 2015, Financial Cryptography.

[13]  Mohammad Ali Maddah-Ali,et al.  Coded MapReduce , 2015, 2015 53rd Annual Allerton Conference on Communication, Control, and Computing (Allerton).

[14]  Matthias Mettler,et al.  Blockchain technology in healthcare: The revolution starts here , 2016, 2016 IEEE 18th International Conference on e-Health Networking, Applications and Services (Healthcom).

[15]  Arshdeep Bahga,et al.  Blockchain Platform for Industrial Internet of Things , 2016 .

[16]  Mohammad Ali Maddah-Ali,et al.  A Unified Coding Framework for Distributed Computing with Straggling Servers , 2016, 2016 IEEE Globecom Workshops (GC Wkshps).

[17]  Elaine Shi,et al.  On Scaling Decentralized Blockchains - (A Position Paper) , 2016, Financial Cryptography Workshops.

[18]  Hubert Ritzdorf,et al.  On the Security and Performance of Proof of Work Blockchains , 2016, IACR Cryptol. ePrint Arch..

[19]  Prateek Saxena,et al.  A Secure Sharding Protocol For Open Blockchains , 2016, CCS.

[20]  Emin Gün Sirer,et al.  Bitcoin-NG: A Scalable Blockchain Protocol , 2015, NSDI.

[21]  Emin Gün Sirer,et al.  Service-Oriented Sharding with Aspen , 2016, ArXiv.

[22]  Alexandros G. Dimakis,et al.  Gradient Coding: Avoiding Stragglers in Distributed Learning , 2017, ICML.

[23]  Suhas N. Diggavi,et al.  Straggler Mitigation in Distributed Optimization Through Data Encoding , 2017, NIPS.

[24]  Michael J. Fischer,et al.  Scalable Bias-Resistant Distributed Randomness , 2017, 2017 IEEE Symposium on Security and Privacy (SP).

[25]  George Danezis,et al.  The Road to Scalable Blockchain Designs , 2017, Login: The Usenix Magazine.

[26]  Mohammad Ali Maddah-Ali,et al.  Polynomial Codes: an Optimal Design for High-Dimensional Coded Matrix Multiplication , 2017, NIPS.

[27]  Bryan Ford,et al.  OmniLedger: A Secure, Scale-Out, Decentralized Ledger , 2017, IACR Cryptol. ePrint Arch..

[28]  H. Nobuhara,et al.  A Proof of Stake Sharding Protocol for Scalable Blockchains , 2017 .

[29]  Emin Gün Sirer,et al.  Short Paper: Service-Oriented Sharding for Blockchains , 2017, Financial Cryptography.

[30]  R. Sarpong,et al.  Bio-inspired synthesis of xishacorenes A, B, and C, and a new congener from fuscol† †Electronic supplementary information (ESI) available. See DOI: 10.1039/c9sc02572c , 2019, Chemical science.

[31]  George Danezis,et al.  Chainspace: A Sharded Smart Contracts Platform , 2017, NDSS.

[32]  Zhong Ming,et al.  A Decentralized Sharding Service Network Framework with Scalability , 2018, ICWS.

[33]  HyunKyung Yoo,et al.  The Blockchain for Domain Based Static Sharding , 2018, 2018 17th IEEE International Conference On Trust, Security And Privacy In Computing And Communications/ 12th IEEE International Conference On Big Data Science And Engineering (TrustCom/BigDataSE).

[34]  Kannan Ramchandran,et al.  Speeding Up Distributed Machine Learning Using Codes , 2015, IEEE Transactions on Information Theory.

[35]  Sébastien Forestier,et al.  Blockclique: scaling blockchains through transaction sharding in a multithreaded block graph , 2018, ArXiv.

[36]  Eli Ben-Sasson,et al.  Scalable, transparent, and post-quantum secure computational integrity , 2018, IACR Cryptol. ePrint Arch..

[37]  Zekeriya Erkin,et al.  A Scale-Out Blockchain for Value Transfer with Spontaneous Sharding , 2018, 2018 Crypto Valley Conference on Blockchain Technology (CVCBT).

[38]  Mariana Raykova,et al.  RapidChain: A Fast Blockchain Protocol via Full Sharding , 2018, IACR Cryptol. ePrint Arch..

[39]  Mohammad Hossein Manshaei,et al.  A Game-Theoretic Analysis of Shard-Based Permissionless Blockchains , 2018, IEEE Access.

[40]  A. Salman Avestimehr,et al.  A Fundamental Tradeoff Between Computation and Communication in Distributed Computing , 2016, IEEE Transactions on Information Theory.

[41]  Anamika Chauhan,et al.  Blockchain and Scalability , 2018, 2018 IEEE International Conference on Software Quality, Reliability and Security Companion (QRS-C).

[42]  Amir Salman Avestimehr,et al.  Lagrange Coded Computing: Optimal Design for Resiliency, Security and Privacy , 2018, AISTATS.

[43]  Pulkit Grover,et al.  “Short-Dot”: Computing Large Linear Transforms Distributedly Using Coded Short Dot Products , 2017, IEEE Transactions on Information Theory.

[44]  Aaas News,et al.  Book Reviews , 1893, Buffalo Medical and Surgical Journal.

[45]  Kannan Ramchandran,et al.  SeF: A Secure Fountain Architecture for Slashing Storage Costs in Blockchains , 2019, ArXiv.

[46]  W. Hager,et al.  and s , 2019, Shallow Water Hydraulics.

[47]  Amir Salman Avestimehr,et al.  INTERPOL: Information Theoretically Verifiable Polynomial Evaluation , 2019, 2019 IEEE International Symposium on Information Theory (ISIT).

[48]  Sreeram Kannan,et al.  Coded Merkle Tree: Solving Data Availability Attacks in Blockchains , 2019, IACR Cryptol. ePrint Arch..

[49]  Lara Dolecek,et al.  Patterned Erasure Correcting Codes for Low Storage-Overhead Blockchain Systems , 2019, 2019 53rd Asilomar Conference on Signals, Systems, and Computers.

[50]  Mohammad Ali Maddah-Ali,et al.  Interactive Verifiable Polynomial Evaluation , 2020, 2020 IEEE International Symposium on Information Theory (ISIT).

[51]  P. Alam ‘E’ , 2021, Composites Engineering: An A–Z Guide.

[52]  P. Alam,et al.  R , 1823, The Herodotus Encyclopedia.