Runtime Verification of Ethereum Smart Contracts

70Citations
Citations of this article
69Readers
Mendeley users who have this article in their library.
Get full text

Abstract

The notion of smart contracts in distributed ledger systems have been hailed as a safe way of enforcing contracts between participating parties. However, unlike legal contracts, which talk about ideal behaviour and consequences of not adhering to such behaviour, smart contracts are by their very nature executable code, giving explicit instructions on how to achieve compliance. Executable specification languages, particularly Turing complete ones, are notoriously known for the difficulty of ensuring correctness, and recent incidents which led to huge financial losses due to bugs in smart contracts, have highlighted this issue. In this paper we show how standard techniques from runtime verification can be used in the domain of smart contracts, including a novel stake-based instrumentation technique which ensures that the violating party provides insurance for correct behaviour. The techniques we describe have been partially implemented in a proof-of-concept tool ContractLarva, which we discuss in this paper.

Cite

CITATION STYLE

APA

Ellul, J., & Pace, G. J. (2018). Runtime Verification of Ethereum Smart Contracts. In Proceedings - 2018 14th European Dependable Computing Conference, EDCC 2018 (pp. 158–163). Institute of Electrical and Electronics Engineers Inc. https://doi.org/10.1109/EDCC.2018.00036

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free