Certifying functional correctness of Ethereum smart contracts
Tsankov, P., Drachsler-Guevgenova, D., Gervais, A., Vechev, M.
Abstract
This research focuses on the challenge of certifying the functional correctness of Ethereum smart contracts—guaranteeing that a contract strictly follows its specification. Moving beyond traditional 'bug-finding' methods, this paper proposes a methodology to rigorously prove that the code implementation of a contract is logically equivalent to its intended business logic. The authors discuss the implementation of a formal verification pipeline that uses automated solvers to check for functional consistency. This approach is highly relevant for decentralized finance, where a minor discrepancy between intended and actual behavior can result in massive financial loss. The study presents case studies on established protocols, demonstrating how mathematical proofs can confirm that a contract handles state transitions correctly under all conditions. By moving the goalpost from 'no bugs' to 'mathematically verified correctness,' the authors contribute to the development of higher-assurance standards for the Ethereum ecosystem. The work is significant for its role in advancing the transition toward institutional-grade smart contracts, where clear, auditable, and provable functional correctness is a prerequisite for broader adoption and integration into traditional financial infrastructures.
Key Findings
- 1Functional correctness provides a higher security guarantee than standard vulnerability checking.
- 2Formal methods can mathematically prove the consistency of complex contract business logic.
- 3Automated solvers are becoming efficient enough for practical verification of smart contracts.
- 4Proving state transition accuracy is essential for high-assurance financial applications.
Topics
Citation
BibTeX
@misc{certifyingfunctional2022,
title = {Certifying functional correctness of Ethereum smart contracts},
author = {Tsankov, P. and Drachsler-Guevgenova, D. and Gervais, A. and Vechev, M.},
year = {2022},
howpublished = {\url{https://www.sri.inf.ethz.ch/research/blockchain-security}},
}Knowledge Explorer
Explore Related Concepts
See how Certifying functional correctness of Ethereum smart contracts connects to glossary terms, books, and other research in the Knowledge Graph.