ABSTRACT
Existing blockchain systems scale poorly because of their distributed consensus protocols. Current attempts at improving blockchain scalability are limited to cryptocurrency. Scaling blockchain systems under general workloads (i.e., non-cryptocurrency applications) remains an open question. This work takes a principled approach to apply sharding to blockchain systems in order to improve their transaction throughput at scale. This is challenging, however, due to the fundamental difference in failure models between databases and blockchain. To achieve our goal, we first enhance the performance of Byzantine consensus protocols, improving individual shards' throughput. Next, we design an efficient shard formation protocol that securely assigns nodes into shards. We rely on trusted hardware, namely Intel SGX, to achieve high performance for both consensus and shard formation protocol. Third, we design a general distributed transaction protocol that ensures safety and liveness even when transaction coordinators are malicious. Finally, we conduct an extensive evaluation of our design both on a local cluster and on Google Cloud Platform. The results show that our consensus and shard formation protocols outperform state-of-the-art solutions at scale. More importantly, our sharded blockchain reaches a high throughput that can handle Visa-level workloads, and is the largest ever reported in a realistic environment.
- Intel SGX SDK for Linux. https://github.com/01org/linux-sgx.Google Scholar
- Proof of Elapsted Time. https://sawtooth.hyperledger.org/docs/core/ releases/latest/introduction.html.Google Scholar
- Ripple. https://ripple.com.Google Scholar
- The Coco Framework. http://aka.ms/cocopaper.Google Scholar
- Trusted Computing Group. http://www.trustedcomputinggroup.org/.Google Scholar
- 2018. Intel Software Guard Extensions Developer Guide. https://download.01.org/intel-sgx/linux-1.7/docs/Intel_SGX_ Developer_Guide.pdf.Google Scholar
- Mustafa Al-Bassam, Alberto Sonnino, Shehar Bano, Dave Hrycyszyn, and George Danezis. 2017. Chainspace: A Sharded Smart Contracts Platform. arXiv preprint arXiv:1708.03778 (2017).Google Scholar
- Tiago Alves and Don Felton. 2004. Trustzone: Integrated hardware and software security. Technical Report. ARM.Google Scholar
- Ittai Anati, Shay Gueron, Simon Johnson, and Vincent Scarlata. 2013. Innovative technology for CPU based attestation and sealing. In HASP.Google Scholar
- Johannes Behl, Tobias Distler, and Rüdiger Kapitza. 2017. Hybrids on Steroids: SGX-Based High Performance BFT. In EuroSys. Google ScholarDigital Library
- Bitcoin Wiki. 2018. Scalability. en.bitcoin.it/wiki/scalability.Google Scholar
- Ferdinand Brasser, Urs Muller, Alexandra Dmitrienko, Kari Kostiainen, Srdjan Capkun, and Ahmad-Reza Sadeghi. 2017. Software Grand Exposure: SGX Cache Attacks Are Practical. In USENIX Security. Google ScholarDigital Library
- Vitalik Buterin. 2014. Ethereum: A next-generation smart contract and decentralized application platform. https:// github.com/ ethereum/ wiki/ wiki/White-Paper (2014).Google Scholar
- Miguel Castro. 2001. Practical Byzantine Fault Tolerance. Ph.D. Dissertation. Massachusetts Institute of Technolog.Google Scholar
- Miguel Castro, Barbara Liskov, et al. 1999. Practical Byzantine fault tolerance. In OSDI. Google ScholarDigital Library
- Xiaoxin Chen, Tal Garfinkel, Christopher Lewis, Pratap Subrahmanyam, Carl A. Waldspurger, Dan Boneh, Jeffrey Dwoskin, and Dan R.K. Ports. 2008. Overshadow: A Virtualization-Based Approach to Retrofitting Protection in Commodity Operating Systems. In ASPLOS. Google ScholarDigital Library
- Byung-Gon Chun, Petros Maniatis, Scott Shenker, and John Kubiatowicz. 2007. Attested append-only memory: Making adversaries stick to their word. In OSR. Google ScholarDigital Library
- Victor Costan, Ilia Lebedev, and Srinivas Devadas. Sanctum: Minimal hardware extensions for strong software isolation. https://eprint.iacr. org/2015/564.pdf.Google Scholar
- Thomas Dickerson, Paul Gazzillo, Maurice Herlihy, and Eric Koskinen. 2017. Adding Concurrency to Smart Contracts. In PODC. Google ScholarDigital Library
- Tien Tuan Anh Dinh, Rui Liu, Meihui Zhang, Gang Chen, and Beng Chin Ooi. 2017. Untangling blockchain: a data processing view of blockchain systems. TKDE (2017).Google Scholar
- Tien Tuan Anh Dinh, Ji Wang, Gang Chen, Rui Liu, Beng Chin Ooi, and Kian-Lee Tan. 2017. BLOCKBENCH: A Framework for Analyzing Private Blockchains. In SIGMOD.Google Scholar
- James C. Corbett et al. 2012. Spanner: Google's Globally-Distributed Database. In OSDI. Google ScholarDigital Library
- Fr8 Network. 2018. Blockchain enabled logistic. https://fr8.network.Google Scholar
- Hector Garcia-Molina. 2008. Database systems: the complete book.Google Scholar
- Arthur Gervais, Ghassan O Karame, Karl Wüst, Vasileios Glykantzis, Hubert Ritzdorf, and Srdjan Capkun. 2016. On the security and performance of proof of work blockchains. In CCS. Google ScholarDigital Library
- Eleftherios Kokoris Kogias, Philipp Jovanovic, Nicolas Gailly, Ismail Khoffi, Linus Gasser, and Bryan Ford. 2016. Enhancing bitcoin security and performance with strong consistency via collective signing. In USENIX Security.Google Scholar
- Eleftherios Kokoris-Kogias, Philipp Jovanovic, Linus Gasser, Nicolas Gailly, and Bryan Ford. 2017. OmniLedger: A Secure, Scale-Out, Decentralized Ledger. IACR Cryptology ePrint Archive (2017).Google Scholar
- Jae Kwon. Tendermint: Consensus without mining. https://tendermint. com/static/docs/tendermint.pdf.Google Scholar
- Leslie Lamport et al. 2001. Paxos made simple. ACM Sigact News (2001).Google Scholar
- Dave Levin, John R Douceur, Jacob R Lorch, and Thomas Moscibroda. 2009. TrInc: Small Trusted Hardware for Large Distributed Systems. In NSDI. Google ScholarDigital Library
- Lightning Network. 2018. Lightning network: scalable, instant Bitcoin/ blockchain transactions. https://lightning.network.Google Scholar
- Shengyun Liu, Paolo Viotti, Christian Cachin, Vivien Quéma, and Marko Vukolic. 2016. XFT: Practical Fault Tolerance beyond Crashes. In OSDI.Google Scholar
- Loi Luu, Viswesh Narayanan, Chaodong Zheng, Kunal Baweja, Seth Gilbert, and Prateek Saxena. 2016. A secure sharding protocol for open blockchains. In CCS. Google ScholarDigital Library
- Sinisa Matetic, Mansoor Ahmed, Kari Kostiainen, Aritra Dhar, David Sommer, Arthur Gervais, Ari Juels, and Srdjan Capkun. 2017. ROTE: Rollback Protection for Trusted Execution. In USENIX Security. Google ScholarDigital Library
- Frank McKeen, Ilya Alexandrovich, Alex Berenzon, Carlos V Rozas, Hisham Shafi, Vedvyas Shanbhogue, and Uday R Savagaonkar. 2013. Innovative instructions and software model for isolated execution. In HASP. Google ScholarDigital Library
- Medilot. 2018. Transforming healthcare for all. https://medilot.com.Google Scholar
- Silvio Micali. 2016. ALGORAND: the efficient and democratic ledger. arXiv preprint arXiv:1607.01341 (2016).Google Scholar
- Andrew Miller, Iddo Bentov, Ranjit Kumaresan, Christopher Cordi, and Patrick McCorry. 2017. Sprites and state channels: payment networks that go faster than lightning. https://arxiv.org/pdf/1702.05812.pdf.Google Scholar
- Shuai Mu, Lamont Nelson, Wyatt Lloyd, and Jinyang Li. 2016. Consolidating Concurrency Control and Consensus for Commits under Conflicts. In OSDI. Google ScholarDigital Library
- Satoshi Nakamoto. 2008. Bitcoin: A peer-to-peer electronic cash system.Google Scholar
- Diego Ongaro and John K Ousterhout. 2014. In search of an understandable consensus algorithm. In USENIX ATC. Google ScholarDigital Library
- Rafael Pass, Lior Seeman, and Abhi Shelat. 2017. Analysis of the blockchain protocol in asynchronous networks. In EUROCRYPT.Google Scholar
- Florian Tramer, Fan Zhang, Huang Lin, Jean-Pierre Hubaux, Ari Juels, and Elaine Shi. 2017. Sealed-glass proofs: Using transparent enclaves to prove and sell knowledge. In EuroS&P.Google Scholar
- Jo Van Bulck, Marina Minkin, OfirWeisse, Daniel Genkin, Baris Kasikci, Frank Piessens, Mark Silberstein, Thomas F Wenisch, Yuval Yarom, and Raoul Strackx. 2018. FORESHADOW: Extracting the Keys to the Intel SGX Kingdom with Transient Out-of-Order Execution. In USENIX Security. Google ScholarDigital Library
- Sheng Wang, Tien Tuan Anh Dinh, Qian Lin, Zhongle Xie, Meihui Zhang, Qingchao Cai, Gang Chen, Wanzeng Fu, Beng Chin Ooi, and Pingcheng Ruan. 2018. ForkBase: An Efficient Storage Engine for Blockchain and Forkable Applications. In VLDB. Google ScholarDigital Library
- Xinan Yan, Linguan Yang, Hongbo Zhang, Xiayue Charles Lin, Bernard Wong, Kenneth Salem, and Tim Brecht. 2018. Carousel: low-latency transaction processing for globally-distributed data. In SIGMOD. Google ScholarDigital Library
- Mahdi Zamani, Mahnush Movahedi, and Mariana Raykova. 2018. RapidChain: Scaling Blockchain via Full Sharding. In CCS.Google Scholar
- Irene Zhang, Naveen Kr. Sharma, Adriana Szekeres, Arvind Krishnamurthy, and Dan R. K. Ports. 2015. Building Consistent Transactions with Inconsistent Replication. In SOSP. Google ScholarDigital Library
Index Terms
- Towards Scaling Blockchain Systems via Sharding
Recommendations
BSS-ITS: Blockchain Scaling Scheme with Sharding for Intelligent Transportation System: Scale Blockchain for Better Data Exchange and Storage with Full Sharding for Intelligent Transportation System
ICBTA '21: Proceedings of the 2021 4th International Conference on Blockchain Technology and ApplicationsWith the development of modern technologies, Intelligent Transportation System (ITS) has made great progress and brought convenience to every aspect of people's lives. ITS has become more complicated and uncertain due to the existing security and ...
PShard: A Practical Sharding Protocol for Enterprise Blockchain
ICBTA '22: Proceedings of the 2022 5th International Conference on Blockchain Technology and ApplicationsEnterprise blockchain is commonly a permissioned blockchain that processes complex and massive transactions among enterprises for cooperation. With the continuous increase of business scale, the performance of a single blockchain is difficult to meet ...
An Investigation of Blockchain-Based Sharding
Smart Computing and CommunicationAbstractNowadays, blockchain distributed ledger technology is becoming more and more prominent, and its decentralization, anonymization, and tampering obvious features have been widely recognized. These excellent technical features of blockchain have also ...
Comments