1. A Secure Sharding Protocol For Open Blockchains 2016 Blockchains CCS CryptocurrencyScaling
    Loi Luu, Viswesh Narayanan, Chaodong Zheng, Kunal Baweja, Seth Gilbert, Prateek Saxena
    [View PDF on people.cs.georgetown.edu]
    [Show BibTex Citation]

    author = {Loi Luu and
    Viswesh Narayanan and
    Chaodong Zheng and
    Kunal Baweja and
    Seth Gilbert and
    Prateek Saxena},
    editor = {Edgar R. Weippl and
    Stefan Katzenbeisser and
    Christopher Kruegel and
    Andrew C. Myers and
    Shai Halevi},
    title = {A Secure Sharding Protocol For Open Blockchains},
    booktitle = {Proceedings of the 2016 {ACM} {SIGSAC} Conference on Computer and
    Communications Security, Vienna, Austria, October 24-28, 2016},
    pages = {17--30},
    publisher = {{ACM}},
    year = {2016},
    url = {https://doi.org/10.1145/2976749.2978389},
    doi = {10.1145/2976749.2978389},
    timestamp = {Tue, 06 Nov 2018 11:07:29 +0100},
    biburl = {https://dblp.org/rec/bib/conf/ccs/LuuNZBGS16},
    bibsource = {dblp computer science bibliography, https://dblp.org}

Cryptocurrencies, such as Bitcoin and 250 similar alt-coins, embody at their core a blockchain protocol — a mechanism for a distributed network of computational nodes to periodically agree on a set of new transactions. Designing a secure blockchain protocol relies on an open challenge in security, that of designing a highly-scalableagreement protocol open to manipulation by byzantine or arbitrarily malicious nodes. Bitcoin’s blockchain agreement protocol exhibits security, but does not scale: it processes 3–7 transactions per second at present, irrespective of the available computation capacity at hand.

In this paper, we propose a new distributed agreement protocol for permission-less blockchains called ELASTICO. ELASTICO scales transaction rates almost linearly with available computation for mining: the more the computation power in the network, the higher the number of transaction blocks selected per unit time. ELASTICO is efficient in its network messages and tolerates byzantine adversaries of up to one-fourth of the total computational power. Technically, ELASTICO uniformly partitions or parallelizes the mining network (securely) into smaller committees, each of which processes a disjoint set of transactions (or “shards”). While sharding is common in non-byzantine settings, ELASTICO is the first candidate for a secure sharding protocol with presence of byzantine adversaries. Our scalability experiments on Amazon EC2 with up to $1, 600$ nodes confirm ELASTICO’s theoretical scaling properties.