Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2976749.2978389acmconferencesArticle/Chapter ViewAbstractPublication PagesccsConference Proceedingsconference-collections
research-article

A Secure Sharding Protocol For Open Blockchains

Published: 24 October 2016 Publication History
  • Get Citation Alerts
  • Abstract

    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-scalable agreement 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.

    References

    [1]
    Satoshi Nakamoto. Bitcoin: A peer-to-peer electronic cash system. bitcoin.org, 2009.
    [2]
    Blockchain stats. Bitcoin statistics. https://blockchain.info/stats, 2012.
    [3]
    Bitcoin wiki. Scalability. https://en.bitcoin.it/wiki/Scalability, 2015.
    [4]
    Mastercard. Mastercard's transaction per second. http://newsroom.mastercard.com/2012/11/26/mastercard- sees-black-friday-performance-up-26-percent/, 2016.
    [5]
    Visa. Visa's transactions per second. https://usa.visa.com/content_library/modal/benefits-accepting-visa.html, 2016.
    [6]
    Jeff Garzik. Making decentralized economic policy. http://gtf.org/garzik/bitcoin/BIP100-blocksizechangeproposal.pdf, 2015.
    [7]
    Gavin Andresen. Bitcoin improvement proposal 101. https://github.com/bitcoin/bips/blob/master/bip-0101.mediawiki, 2015.
    [8]
    Jeff Garzik. Bitcoin improvement proposal 102. https://github.com/bitcoin/bips/blob/master/bip-0102.mediawiki, 2015.
    [9]
    Ittay Eyal, Adem Efe Gencer, Emin Gun Sirer, and Robbert van Renesse. Bitcoin-ng: A scalable blockchain protocol. http://arxiv.org/abs/1510.02037, 2015.
    [10]
    Kyle Croman, Christian Decker, Ittay Eyal, Adem Efe Gencer, Ari Juels, Ahmed Kosba, Andrew Miller, Prateek Saxena, Elaine Shi, Emin Gun Sirer, Dawn Song, and Roger Wattenhofer. On scaling decentralized blockchains (a position paper). Workshop on Bitcoin and Blockchain Research, 2016.
    [11]
    M. Pease, R. Shostak, and L. Lamport. Reaching agreement in the presence of faults. J. ACM, 27(2):228--234, April 1980.
    [12]
    Leslie Lamport, Robert Shostak, and Marshall Pease. The byzantine generals problem. ACM Trans. Program. Lang. Syst., 4(3):382--401, July 1982.
    [13]
    Miguel Castro and Barbara Liskov. Practical byzantine fault tolerance. In Proceedings of the Third Symposium on Operating Systems Design and Implementation, pages 173--186. USENIX Association, 1999.
    [14]
    Sam Toueg, Kenneth J. Perry, and T. K. Srikanth. Fast distributed agreement (preliminary version). In Proceedings of the Fourth Annual ACM Symposium on Principles of Distributed Computing, pages 87--101. ACM, 1985.
    [15]
    James C. Corbett, Jeffrey Dean, Michael Epstein, Andrew Fikes, Christopher Frost, J. J. Furman, Sanjay Ghemawat, Andrey Gubarev, Christopher Heiser, Peter Hochschild, Wilson Hsieh, Sebastian Kanthak, Eugene Kogan, Hongyi Li, Alexander Lloyd, Sergey Melnik, David Mwaura, David Nagle, Sean Quinlan, Rajesh Rao, Lindsay Rolig, Yasushi Saito, Michal Szymaniak, Christopher Taylor, Ruth Wang, and Dale Woodford. Spanner: Google's globally distributed database. ACM Trans. Comput. Syst., aug 2013.
    [16]
    Lisa Glendenning, Ivan Beschastnikh, Arvind Krishnamurthy, and Thomas Anderson. Scalable consistency in scatter. In Proceedings of the Twenty-Third ACM Symposium on Operating Systems Principles, SOSP '11, pages 15--28, New York, NY, USA, 2011. ACM.
    [17]
    Jason Baker, Chris Bond, James C. Corbett, JJ Furman, Andrey Khorlin, James Larson, Jean-Michel Leon, Yawei Li, Alexander Lloyd, and Vadim Yushprakh. Megastore: Providing scalable, highly available storage for interactive services. In Proceedings of the Conference on Innovative Data system Research (CIDR), pages 223--234, 2011.
    [18]
    Intel. Intel distributed ledger. http://intelledger.github.io/, 2016.
    [19]
    Chain Inc. Chain open standard: A secure blockchain protocol for high-scale financial networks. http://chain.com/os/, 2016.
    [20]
    Rhett Creighton. Domus tower blockchain. http://domustower.com/domus-tower-blockchain-latest.pdf, 2016.
    [21]
    David Mazieres. The stellar consensus protocol: A federated model for internet-level consensus. April 2015.
    [22]
    Arthur Britto David Schwartz, Noah Youngs. The ripple protocol consensus algorithm. Ripple Labs Inc., 2014.
    [23]
    Bitcoin client. https://github.com/bitcoin/bitcoin.
    [24]
    Rachid Guerraoui, Florian Huc, and Anne-Marie Kermarrec. Highly dynamic distributed computing with byzantine failures. In Proceedings of the 2013 ACM Symposium on Principles of Distributed Computing, PODC '13, 2013.
    [25]
    Gopal Pandurangan, Peter Robinson, and Amitabh Trehan. Self-healing deterministic expanders. CoRR, abs/1206.1522, 2012.
    [26]
    John R. Douceur. The sybil attack. In Proceedings of 1st International Workshop on Peer-to-Peer Systems (IPTPS), 2002.
    [27]
    James Newsome, Elaine Shi, Dawn Song, and Adrian Perrig. The sybil attack in sensor networks: Analysis & defenses. In Proceedings of the 3rd International Symposium on Information Processing in Sensor Networks, IPSN '04, pages 259--268, New York, NY, USA, 2004. ACM.
    [28]
    Baruch Awerbuch and Christian Scheideler. Robust random number generation for peer-to-peer systems. Theor. Comput. Sci., 410(6--7):453--466, feb 2009.
    [29]
    Bitcoin wiki. Proof of stake. https://en.bitcoin.it/wiki/Proof_of_Stake, 2015.
    [30]
    Stefan Dziembowski, Sebastian Faust, Vladimir Kolmogorov, and Krzysztof Pietrzak. Proofs of space. Cryptology ePrint Archive, Report 2013/796, 2013. http://eprint.iacr.org/.
    [31]
    Giuseppe Ateniese, Ilario Bonacina, Antonio Faonio, and Nicola Galesi. Proofs of space: When space is of the essence. Cryptology ePrint Archive, Report 2013/805, 2013. http://eprint.iacr.org/.
    [32]
    Nancy Lynch. Distributed algorithms. Morgan Kaufmann, 1996.
    [33]
    Seth Gilbert, Calvin Newport, and Chaodong Zheng. Who are you? secure identities in ad hoc networks. In Distributed Computing, pages 227--242. Springer, 2014.
    [34]
    Juan Garay, Aggelos Kiayias, and Nikos Leonardos. The bitcoin backbone protocol: Analysis and applications. Cryptology ePrint Archive, Report 2014/765, 2014. http://eprint.iacr.org/.
    [35]
    Jae Kwon. Tendermint: Consensus without mining.
    [36]
    IBM. Ibm blockchain. http://www.ibm.com/blockchain/, 2016.
    [37]
    Digital Asset Holdings. Digital asset. https://digitalasset.com/, 2016.
    [38]
    Ethereum Foundation. Ethereum's white paper. https://github.com/ethereum/wiki/wiki/White-Paper, 2014.
    [39]
    George Danezis and Sarah Meiklejohn. Centrally banked cryptocurrencies. Cryptology ePrint Archive, Report 2015/502, 2015. http://eprint.iacr.org/.
    [40]
    Yonatan Sompolinsky and Aviv Zohar. Accelerating bitcoin's transaction processing. fast money grows on trees, not chains. Cryptology ePrint Archive, Report 2013/881, 2013. http://eprint.iacr.org/.
    [41]
    Loi Luu, Jason Teutsch, Raghav Kulkarni, and Prateek Saxena. Demystifying incentives in the consensus computer. Cryptology ePrint Archive, Report 2015/702, 2015. http://eprint.iacr.org/.
    [42]
    Thaddeus Dryja Joseph Poon. The bitcoin lightning network: Scalable off-chain instant payments. http://lightning.network/lightning-network-paper.pdf, 2015.
    [43]
    Adam Back, Matt Corallo, Luke Dashjr, Mark Friedenbach, Gregory Maxwell, Andrew Miller, Andrew Poelstra, Jorge Timon, and Pieter Wuille. Enabling blockchain innovations with pegged sidechains. https://blockstream.com/sidechains.pdf, 2014.
    [44]
    Pieter Wuille. Would sidechains help bitcoin scale? 2015.
    [45]
    Buteri Vitalik, Wood Gavin, Zamfir Vlad, Coleman Jeff, Wampler-Doty Matthew, and Cohn John. Notes on scalable blockchain protocols (version 0.3.2). https://github.com/vbuterin/scalability_paper/raw/master/scalability.pdf, 2015.
    [46]
    Gabriel Bracha. An O(log n) expected rounds randomized byzantine generals protocol. J. ACM, 34:910--920, October 1987.
    [47]
    Seth Gilbert and Dariusz R. Kowalski. Distributed agreement with optimal communication complexity. In Proceedings of the Twenty-first Annual ACM-SIAM Symposium on Discrete Algorithms, pages 965--977. Society for Industrial and Applied Mathematics, 2010.
    [48]
    Leslie Lamport. Fast paxos. Distributed Computing, 19(2):79--103, October 2006.
    [49]
    Allen Clement, Edmund Wong, Lorenzo Alvisi, Mike Dahlin, and Mirco Marchetti. Making byzantine fault tolerant systems tolerate byzantine faults. In Proceedings of the 6th USENIX Symposium on Networked Systems Design and Implementation, pages 153--168. USENIX Association, 2009.
    [50]
    Ramakrishna Kotla, Lorenzo Alvisi, Mike Dahlin, Allen Clement, and Edmund Wong. Zyzzyva: Speculative byzantine fault tolerance. ACM Trans. Comput. Syst., 27(4):7:1--7:39, January 2010.
    [51]
    Pierre-Louis Aublin, Rachid Guerraoui, Nikola Knezević, Vivien Quéma, and Marko Vukolić. The next 700 bft protocols. ACM Trans. Comput. Syst., 32(4):12:1--12:45, January 2015.
    [52]
    V. King, J. Saia, V. Sanwalani, and E. Vee. Towards secure and scalable computation in peer-to-peer networks. In Foundations of Computer Science, 2006. FOCS '06. 47th Annual IEEE Symposium on, pages 87--98, 2006.
    [53]
    Valerie King and Jared Saia. From almost everywhere to everywhere: Byzantine agreement with ~O(n3/2) bits. In Proceedings of the 23rd International Conference on Distributed Computing, pages 464--478. Springer-Verlag, 2009.
    [54]
    Valerie King, Steven Lonargan, Jared Saia, and Amitabh Trehan. Load balanced scalable byzantine agreement through quorum building, with full information. In Distributed Computing and Networking, volume 6522 of Lecture Notes in Computer Science, pages 203--214. Springer Berlin Heidelberg, 2011.
    [55]
    Nicolas Braud-Santoni, Rachid Guerraoui, and Florian Huc. Fast byzantine agreement. In Proceedings of the 2013 ACM Symposium on Principles of Distributed Computing, pages 57--64. ACM, 2013.
    [56]
    U. Feige. Noncryptographic selection protocols. In Foundations of Computer Science, 1999. 40th Annual Symposium on, pages 142--152, 1999.
    [57]
    Valerie King and Jared Saia. Breaking the $O(n^2)$ bit barrier: Scalable byzantine agreement with an adaptive adversary. J. ACM, 58:18:1--18:24, July 2011.
    [58]
    Jonathan Katz, Andrew Miller, and Elaine Shi. Pseudonymous broadcast and secure computation from cryptographic puzzles. Cryptology ePrint Archive, Report 2014/857, 2014. http://eprint.iacr.org/2014/857.
    [59]
    Christian Decker, Jochen Seidel, and Roger Wattenhofer. Bitcoin meets strong consistency. In Proceedings of the 17th International Conference on Distributed Computing and Networking, ICDCN '16, pages 13:1--13:10, New York, NY, USA, 2016. ACM.
    [60]
    James Aspnes, Collin Jackson, and Arvind Krishnamurthy. Exposing computationally-challenged byzantine impostors. Department of Computer Science, Yale University, New Haven, CT, Tech. Rep, 2005.
    [61]
    Marcin Andrychowicz and Stefan Dziembowski. Distributed cryptography based on the proofs of work. Cryptology ePrint Archive, Report 2014/796, 2014. http://eprint.iacr.org/2014/796.
    [62]
    Wikipedia. Coupon collector's problem. https://en.wikipedia.org/wiki/Coupon_collector%27s_problem.
    [63]
    Donald J. Newman. The double dixie cup problem. The American Mathematical Monthly, 67(1):58--61, 1960.
    [64]
    Christina Garman, Matthew Green, and Ian Miers. Decentralized anonymous credentials. Cryptology ePrint Archive, Report 2013/622, 2013. http://eprint.iacr.org/.
    [65]
    Seth Gilbert and Nancy Lynch. Brewer's conjecture and the feasibility of consistent, available, partition-tolerant web services. SIGACT News, 33(2):51--59, June 2002.
    [66]
    Seth Gilbert and Nancy Lynch. Perspectives on the cap theorem. Computer, 45(2):30--36, February 2012.

    Cited By

    View all
    • (2024)Document Storage and Verification System Using Blockchain TechnologyInternational Journal of Advanced Research in Science, Communication and Technology10.48175/IJARSCT-15527(141-144)Online publication date: 28-Feb-2024
    • (2024)Integration of Artificial Intelligence and Blockchain TechnologyDecentralized Finance and Tokenization in FinTech10.4018/979-8-3693-3346-4.ch008(128-147)Online publication date: 21-Jun-2024
    • (2024)The Node Security Access Authentication Method for Mega-Constellation based on Sharding BlockchainSpace: Science & Technology10.34133/space.01434Online publication date: 30-May-2024
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    CCS '16: Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security
    October 2016
    1924 pages
    ISBN:9781450341394
    DOI:10.1145/2976749
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 24 October 2016

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. bitcoin
    2. consensus protocol
    3. sharding

    Qualifiers

    • Research-article

    Conference

    CCS'16
    Sponsor:

    Acceptance Rates

    CCS '16 Paper Acceptance Rate 137 of 831 submissions, 16%;
    Overall Acceptance Rate 1,261 of 6,999 submissions, 18%

    Upcoming Conference

    CCS '24
    ACM SIGSAC Conference on Computer and Communications Security
    October 14 - 18, 2024
    Salt Lake City , UT , USA

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)502
    • Downloads (Last 6 weeks)36

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Document Storage and Verification System Using Blockchain TechnologyInternational Journal of Advanced Research in Science, Communication and Technology10.48175/IJARSCT-15527(141-144)Online publication date: 28-Feb-2024
    • (2024)Integration of Artificial Intelligence and Blockchain TechnologyDecentralized Finance and Tokenization in FinTech10.4018/979-8-3693-3346-4.ch008(128-147)Online publication date: 21-Jun-2024
    • (2024)The Node Security Access Authentication Method for Mega-Constellation based on Sharding BlockchainSpace: Science & Technology10.34133/space.01434Online publication date: 30-May-2024
    • (2024)CMSS: A High-Performance Blockchain Storage System with Horizontal Scaling SupportElectronics10.3390/electronics1310185413:10(1854)Online publication date: 10-May-2024
    • (2024)Solving Confirmation Time in Sharded Blockchain with PFQNElectronics10.3390/electronics1307122013:7(1220)Online publication date: 26-Mar-2024
    • (2024)Trust Management Scheme of IoV Based on Dynamic Sharding BlockchainElectronics10.3390/electronics1306101613:6(1016)Online publication date: 7-Mar-2024
    • (2024)SnapshotPrune: A Novel Bitcoin-Based Protocol Toward Efficient Pruning and Fast Node BootstrappingTsinghua Science and Technology10.26599/TST.2023.901001429:4(1037-1052)Online publication date: Aug-2024
    • (2024)Atomic cross-chain swap based on private key exchangeCybersecurity10.1186/s42400-023-00202-87:1Online publication date: 2-Jun-2024
    • (2024)Using Multi-dimensional Quorums for Optimal Resilience in Multi-resource BlockchainsFormal Aspects of Computing10.1145/3665338Online publication date: 17-May-2024
    • Show More Cited By

    View Options

    Get Access

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media