by Long Zhang, Javier Ron Arteaga, Benoit Baudry and Martin Monperrus
Abstract:
In this article, we present ChaosETH, a chaos engineering approach for resilience assessment of Ethereum blockchain clients. ChaosETH operates in the following manner: First, it monitors Ethereum clients to determine their normal behavior. Then, it injects system call invocation errors into one single Ethereum client at a time and observes the behavior resulting from perturbation. Finally, ChaosETH compares the behavior recorded before, during, and after perturbation to assess the impact of the injected system call invocation errors. The experiments are performed on the two most popular Ethereum client implementations: GoEthereum and Nethermind. We assess the impact of 22 different system call errors on those Ethereum clients with respect to 15 application-level metrics. Our results reveal a broad spectrum of resilience characteristics of Ethereum clients w.r.t. system call invocation errors, ranging from direct crashes to full resilience. The experiments clearly demonstrate the feasibility of applying chaos engineering principles to blockchain systems.
Reference:
Chaos Engineering of Ethereum Blockchain Clients (Long Zhang, Javier Ron Arteaga, Benoit Baudry and Martin Monperrus), In Distributed Ledger Technologies, Association for Computing Machinery (ACM), volume 2, 2023.
Bibtex Entry:
@article{Zhang2090239,
title = {Chaos Engineering of Ethereum Blockchain Clients},
year = {2023},
doi = {10.1145/3611649},
author = {Zhang, Long and Ron Arteaga, Javier and Baudry, Benoit and Monperrus, Martin},
url = {},
institution = {Electrolux, Sweden and KTH Royal Institute of Technology, Sweden},
journal = {Distributed Ledger Technologies},
number = {3},
pages = {1--18},
eid = {22},
publisher = {Association for Computing Machinery (ACM)},
volume = {2},
}