LMPT: A Novel Authenticated Data Structure to Eliminate Storage Bottlenecks for High Performance Blockchains

—We present the Layered Merkle Patricia Trie (LMPT), a performant storage data structure for processing transactions in high-throughput systems when com- pared to traditional Merkle Patricia Tries used in Ethereum clients. LMPTs keep smaller intermediary tries in memory to alleviate read and write amplification from high-latency disk storage. As an additional feat, they also allow for the I/O and transaction verifier threads to be scheduled in parallel and independently. LMPTs can ultimately reduce significant I/O traffic that happens on the critical path of transaction processing. Empirical results show that LMPTs can process up to × 6 more transactions per second on real-life ERC20 smart contract workloads when compared to existing Ethereum clients.

[1]  Ilya Sergey,et al.  Practical smart contract sharding with ownership and commutativity analysis , 2021, PLDI.

[2]  Dahlia Malkhi,et al.  RainBlock: Faster Transaction Processing in Public Blockchains , 2020, USENIX Annual Technical Conference.

[3]  Fan Long,et al.  Securing smart contract with runtime validation , 2020, PLDI.

[4]  Benny Pinkas,et al.  Towards Scalable Threshold Cryptosystems , 2020, 2020 IEEE Symposium on Security and Privacy (SP).

[5]  Bo Li,et al.  On Sharding Open Blockchains with Smart Contracts , 2020, 2020 IEEE 36th International Conference on Data Engineering (ICDE).

[6]  Mohammad Dakhilalian,et al.  On the Feasibility of Sybil Attacks in Shard-Based Permissionless Blockchains , 2020, ArXiv.

[7]  Sreeram Kannan,et al.  Prism: Deconstructing the Blockchain to Approach Physical Limits , 2019, CCS.

[8]  Kim-Kwang Raymond Choo,et al.  Blockchain in healthcare applications: Research challenges and opportunities , 2019, J. Netw. Comput. Appl..

[9]  Vitalik Buterin,et al.  Incentives in Ethereum’s Hybrid Casper Protocol , 2019, 2019 IEEE International Conference on Blockchain and Cryptocurrency (ICBC).

[10]  George Danezis,et al.  Replay Attacks and Defenses Against Cross-shard Consensus in Sharded Distributed Ledgers , 2019, 2020 IEEE European Symposium on Security and Privacy (EuroS&P).

[11]  P. Beynon-Davies,et al.  Understanding blockchain technology for future supply chains: a systematic literature review and research agenda , 2019, Supply Chain Management: An International Journal.

[12]  Prateek Saxena,et al.  OHIE: Blockchain Scaling Made Simple , 2018, 2020 IEEE Symposium on Security and Privacy (SP).

[13]  Arthur Gervais,et al.  Do you Need a Blockchain? , 2018, 2018 Crypto Valley Conference on Blockchain Technology (CVCBT).

[14]  Tim Brecht,et al.  Carousel: Low-Latency Transaction Processing for Globally-Distributed Data , 2018, SIGMOD Conference.

[15]  Ee-Chien Chang,et al.  Towards Scaling Blockchain Systems via Sharding , 2018, SIGMOD Conference.

[16]  Sanghyun Park,et al.  Selective I/O Bypass and Load Balancing Method for Write-Through SSD Caching in Big Data Analytics , 2018, IEEE Transactions on Computers.

[17]  Angelo De Caro,et al.  Hyperledger fabric: a distributed operating system for permissioned blockchains , 2018, EuroSys.

[18]  Ralph Deters,et al.  Performance analysis of ethereum transactions in private blockchain , 2017, 2017 8th IEEE International Conference on Software Engineering and Service Science (ICSESS).

[19]  Silvio Micali,et al.  Algorand: Scaling Byzantine Agreements for Cryptocurrencies , 2017, IACR Cryptol. ePrint Arch..

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

[21]  Andrea Pinna,et al.  Banking on Blockchain: Costs Savings Thanks to the Blockchain Technology , 2017, Future Internet.

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

[23]  Bryan Ford,et al.  Enhancing Bitcoin Security and Performance with Strong Consistency via Collective Signing , 2016, USENIX Security Symposium.

[24]  Hyojun Kim,et al.  Evaluating Phase Change Memory for Enterprise Storage Systems: A Study of Caching and Tiering Approaches , 2014, TOS.

[25]  Michael P. Mesnier,et al.  Differentiated storage services , 2011, SOSP.

[26]  Werner Vogels,et al.  Dynamo: amazon's highly available key-value store , 2007, SOSP.

[27]  Xiaoning Ding,et al.  DULO: an effective buffer cache management scheme to exploit both temporal and spatial locality , 2005, FAST'05.

[28]  Nimrod Megiddo,et al.  ARC: A Self-Tuning, Low Overhead Replacement Cache , 2003, FAST.

[29]  Darrell D. E. Long,et al.  Analysis of caching algorithms for distributed file systems , 1996, OPSR.

[30]  Gerhard Weikum,et al.  The LRU-K page replacement algorithm for database disk buffering , 1993, SIGMOD Conference.

[31]  David A. Patterson,et al.  Computer Architecture: A Quantitative Approach , 1969 .

[32]  ETHEREUM: A SECURE DECENTRALISED GENERALISED TRANSACTION LEDGER , 2022 .

[33]  Charalampos Papamanthou,et al.  Hyperproofs: Aggregating and Maintaining Proofs in Vector Commitments , 2021, IACR Cryptol. ePrint Arch..

[34]  Dong Zhou,et al.  A Decentralized Blockchain with High Throughput and Fast Confirmation , 2020, USENIX Annual Technical Conference.

[35]  Ittai Abraham,et al.  mLSM: Making Authenticated Storage Faster in Ethereum , 2018, HotStorage.

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

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

[38]  David A. Patterson,et al.  Computer Architecture - A Quantitative Approach, 5th Edition , 1996 .