Termination of Ethereum's Smart Contracts - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Reports (Research Report) Year : 2020

Termination of Ethereum's Smart Contracts


Ethereum is a decentralized blockchain technology equipped with so-called Smart Contracts. A contract is a program whose code is public, which can be triggered by any user, and whose actual execution is performed by miners participating in Ethereum. Miners execute the contract on the Ethereum Virtual Machine (EVM) and apply its effect by adding new blocks to the blockchain. A contract that takes too much time to be processed by the miners of the network may result into delays or a denial of service in the Ethereum system. To prevent this scenario, termination of Ethereum's Smart Contracts is ensured using a gas mechanism. Roughly, the EVM consumes gas to process each instruction of a contract and the gas provided to run a contract is limited. This technique could make termination of contracts easy to prove but the way the official definition of the EVM specifies gas usage makes the proof of this property non-trivial. EVM implementations and formal analysis techniques of EVM's Smart Contracts use termination of contracts as an assumption, so having a formal proof of termination of contracts is crucial. This paper presents a mechanized, formal, and general proof of termination of Smart Contracts based on a measure of EVM call stacks.
Fichier principal
Vignette du fichier
reportInria.pdf (1.22 Mo) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-02555738 , version 1 (27-04-2020)
hal-02555738 , version 2 (27-04-2020)
hal-02555738 , version 3 (28-04-2020)


  • HAL Id : hal-02555738 , version 1


Thomas Genet, Thomas Jensen, Justine Sauvage. Termination of Ethereum's Smart Contracts. [Research Report] Univ Rennes, Inria, CNRS, IRISA. 2020. ⟨hal-02555738v1⟩
458 View
1165 Download


Gmail Facebook X LinkedIn More