An off-the-chain execution environment for scalable testing and profiling of smart contracts

Yeonsoo Kim, Seongho Jeong, Kamil Jezek, Bernd Burgstaller, Bernhard Scholz

Research output: Chapter in Book/Report/Conference proceedingConference contribution

8 Citations (Scopus)

Abstract

Smart contracts in Ethereum are executable programs deployed on the blockchain, which require a client for their execution. When a client executes a smart contract, a world state containing contract storage and account details is changed in a consistent fashion. Hence, the execution of smart contracts must be sequential to ensure a deterministic representation of the world state. Due to recent growth, the world state has been bloated, making testing and profiling of Ethereum transactions at scale very difficult. In this work, we introduce a novel off-the-chain execution environment for scalable testing and profiling of smart contracts. We disconnect transactions from the world state by using substates to execute the transactions in isolation and in parallel. Compared to an Ethereum client, our execution environment reduces the space required to replay the transactions of the initial 9M blocks from 700:11GB to 285:39GB. We increased throughput from 620:62 tx=s to 2;817:98 tx=s (single-threaded) and 30;168:76 tx=s (scaled to 44 cores). We demonstrate the scalability of our off-the-chain execution environment for hard-fork testing, metric evaluations of smart contracts, and contract fuzzing.

Original languageEnglish
Title of host publication2021 USENIX Annual Technical Conference
PublisherUSENIX Association
Pages349-363
Number of pages15
ISBN (Electronic)9781939133236
Publication statusPublished - 2021
Event2021 USENIX Annual Technical Conference, ATC 2021 - Virtual, Online
Duration: 2021 Jul 142021 Jul 16

Publication series

Name2021 USENIX Annual Technical Conference

Conference

Conference2021 USENIX Annual Technical Conference, ATC 2021
CityVirtual, Online
Period21/7/1421/7/16

Bibliographical note

Publisher Copyright:
© 2021 USENIX Annual Technical Conference. All rights reserved.

All Science Journal Classification (ASJC) codes

  • General Computer Science

Fingerprint

Dive into the research topics of 'An off-the-chain execution environment for scalable testing and profiling of smart contracts'. Together they form a unique fingerprint.

Cite this