Smart contracts are immutable programs deployed on the blockchain that can manage significant assets. Because of this, verification and validation of smart contracts is of vital importance. Indeed, it is industrial practice to hire independent specialized companies to audit smart contracts before deployment. Auditors typically rely on a combination of tools and experience but still fail to identify problems in smart contracts before deployment, causing significant losses. In this paper, we propose using predicate abstraction to construct models which can be used by auditors to explore and validate smart contact behaviour at the function call level by proposing predicates that expose different aspects of the contract. We propose predicates based on requires clauses and enum-type state variables as a starting point for contract validation and report on an evaluation on two different benchmarks.
CITATION STYLE
Godoy, J., Galeotti, J. P., Garbervetsky, D., & Uchitel, S. (2022). Predicate abstractions for smart contract validation. In Proceedings - 25th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems, MODELS 2022 (pp. 289–299). Association for Computing Machinery, Inc. https://doi.org/10.1145/3550355.3552462
Mendeley helps you to discover research relevant for your work.