Sharding
Links
Sharding: Cross-shard communication
Sharding: Economics
Sharding: Load-balancing
Data availability
Papers
The notes on cross-shard operation are in Sharding: Cross-shard communication.
UTXO-based design proposals
OmniLedger: A Secure, Scale-Out, Decentralized Ledger via Sharding
Eleftherios Kokoris-Kogias, Philipp Jovanovic, Linus Gasser, Nicolas Gailly (EPFL), Ewa Syta (Trinity College), Bryan Ford (EPFL)
IEEE S&P'18 Slide, ethresear.ch, Implementation in Go GitHub
Shard consensus by ByzCoinX (PBFT on blockDAG), randomness by RandHound (MPC) and VRF-based sortition, UTXO-based (only cryptocurrency)
Identity blockchain manages the validator set
Atomix for X-shard communication
Adversary: >25%, mildly adaptive (on the order of epochs)
RapidChain: Scaling Blockchain via Full Sharding
Mahdi Zamani (Visa Research), Mahnush Movahedi (Dfinity), Mariana Raykova (Yale University)
CCS'18 Video, CESC'18 Video, Stanford Blockchain Seminar Slide
Intra-shard consensus: Synchronous randomized BFT Abraham et al., 2017
Gossip protocol built on Alon et al., 2004 (information dispersal algorithms w/ erasure code)
Consensus on the hash of blocks
Inter-shard routing of transactions based on Kademlia
A representative committee generates an epoch randomness with verifiable secret sharing (VSS)
Bounded Cuckoo rule as shuffling algorith,
PoW is required to join a committee
Chainspace: A Sharded Smart Contracts Platform
Mustafa Al-Bassam, Alberto Sonnino, Shehar Bano, Dave Hrycyszyn and George Danezis
NDSS'18 Video, Slide (Slide (P27~) by George)
GitHub
Shard consensus by BFT-SMART’s PBFT, UTXO-based (Objects with smart contracts, potentially with ZKP)
Sharded Byzantine Atomic Commit for X-shard communnicatiion
Checkpoints for Auditability (detecting malicious shard, a la fisherman)
Focusing on cross-chard communication, no discussion on validator election or rotation
Chainspace
Efficient Cross-Shard Transaction Execution in Sharded Blockchains
Sourav Das, Vinith Krishnan, Ling Ren
Permissioned setting
There exists a single reference chain, which runs a consensus and many worker shards (no consensus)
Once a block is certified (i.e., signed by$ \ge f +1 replicas within the shard), the worker shard submits the cryptographic digest of the resulting state to the reference chain.
Present RIVET, a novel sharded system that has lower confirmation latency for cross-shard transactions compared to 2PC-based systems
Free2Shard: Adaptive-adversary-resistant sharding via Dynamic Self Allocation
Ranvir Rana, Sreeram Kannan, David Tse, Pramod Viswanath
Dynamic self-allocation algorithm that lets users allocate themselves to shards in response to adversarial action
Several attractive features unusual for
(a) the ability to handle the regime of large number of shards (relative to number of nodes)
(b) heterogeneous shard demands
(c) requiring only a small minority to follow the self-allocation
(d) asynchronous shard rotation
(e) operation in a purely identity-free proof-of-work setting.
Account-based design proposals
Monoxide: Scale out Blockchains with Asynchronous Consensus Zones
Jiaping Wang, ICT/CAS, Sinovation Ventures; Hao Wang, Ohio State University
Account/Balance model
Slide @NSDI'19
Chu-ko-nu Mining to workaround the decrease of per-zone hashpower: Create multiple blocks in different zones by a single PoW
Asensys Blockchain: High Performance Blockchain System, Scaled with Asynchronous Consensus Zones in Parallel
Towards Scaling Blockchain Systems via Sharding
Hung Dang, Tien Tuan Anh Dinh, Dumitrel Loghin, Ee-Chien Chang, Qian Lin, Beng Chin Ooi (National University of Singapore)
SIGMOD'19 Video
Mildly adaptive adversary
Attested HyperLedger (AHL): PBFT without equivocation based on trusted log abstraction (attested append-only memory) enabled by TEE. The threshold is$ f + 1
PoET+ (improvement of PoET) for leader election
Shuffling shard committees by synchronous RNG (w/ sgx_read_rand)
Evaluation with BLOCKBENCH
SoK/Comparison
SoK: Sharding on Blockchain
Gang Wang, Zhijie Jerry Shi (University of Connecticut), Mark Nixon (Emerson Automation Solutions), Song Han (University of Connecticut)
RSCoin, Elastico, Chainspace, Omniledger, Rapidchain
Divide and Scale: Formalization of Distributed Ledger Sharding Protocols
Georgia Avarikioti (ETH Zurich), Eleftherios Kokoris-Kogias (EPFL), Roger Wattenhofer (ETH Zurich)
Tweet thread
Definition of security/scailability properties in sharding systems
General impossibility results (Section Ⅲ) and analysis of Omniledger, Rapidchain, Elastico, Monoxide (Ⅳ)
Others/Uncategorized
PolyShard: Coded Sharding Achieves Linearly Scaling Efficiency and Security Simultaneously
Songze Li, Mingchao Yu, A. Salman Avestimehr (USC), Sreeram Kannan (Univ. of Washington), and Pramod Viswanath (UIUC)
Video
https://gyazo.com/abe07fef50ffa830b1df636d6dfbc8b5
Each node stores and computes on a coded shard of the same size that is generated by linearly mixing uncoded shards, using Lagrange Coded Computing (ref. Presentation)
A Generic Sharding Scheme for Blockchain Protocols
Zuphit Fidelman (Technion) (Master Thesis)
Algorand Sharding
Analysing and Improving Shard Allocation Protocols for Sharded Blockchains
Runchao Han and Jiangshan Yu and Ren Zhang
Claim that none of existing proposals achieves self-balance and operability properties
Propose VRF-based approach
Public blockchain projects
Ethereum 2.0
Near Protocol
Polkadot
CBC Casper: Sharding
Kadena
Harmony (NEAR blog)
Elrond (Paper)
MultiVAC (Paper)
Tutorials
The authoritative guide to Blockchain Sharding, part 1 by NEAR
Horizontal Scaling for Blockchains from a class @UC Berkeley by Jian Liu
ZILLIQA, OmniLedger, Chainspace, Saber
Sharding: Slides by Vitalik (2018.7)
#Layer1