Please use this identifier to cite or link to this item: https://www.um.edu.mt/library/oar/handle/123456789/91085
Title: Model-based static and runtime verification for ethereum smart contracts
Other Titles: Model-driven engineering and software development
Authors: Azzopardi, Shaun
Colombo, Christian
Pace, Gordon J.
Keywords: Smart contracts
Computer software -- Verification
Cryptography
Computer software -- Security measures
Issue Date: 2021
Publisher: Springer
Citation: Azzopardi S., Colombo C., & Pace G. (2021). Model-based static and runtime verification for ethereum smart contracts. In S. Hammoudi, L. F. Pires & B. Selić (Eds.), Model-driven engineering and software development (pp. 323-348). Cham: Springer.
Abstract: Distributed ledger technologies, e.g. blockchains, are an innovative solution to the problem of trust between different parties. Smart contracts, programs executing on these ledgers present new challenges given their non-traditional execution context – blockchains. The immutability of smart contracts once they are deployed makes their predeployment correctness essential. This can be achieved through verification methods, which attempt to answer conclusively whether the code respects some specification. Another approach is model-driven development, where the specification is used directly to create a correct-byconst- ruction implementation. A specification may however still need to be verified to ensure it satisfies some properties. Verifying properties predeployment is ideal, however it may not always be possible to do completely, depending on the complexity of the smart contract. Traditionally upon failure of a verification attempt the only option is to attempt a different verification method. Recent approaches instead enable the transformation of the verification problem into a smaller problem, reducing the load of subsequent verification attempts. We have previously proposed an automata-theoretic approach to reason systematically about this kind of residual analysis for (co-)safety properties, while we have implemented an intraprocedural data-flow approach for Java programs. In this paper we extend our approach for Solidity smart contracts, present a corresponding tool, evaluate the approach with several new case studies, and compare it with existing approaches.
URI: https://www.um.edu.mt/library/oar/handle/123456789/91085
Appears in Collections:Scholarly Works - FacICTCS

Files in This Item:
File Description SizeFormat 
Model-based_static_and_runtime_verification_for_ethereum_smart_contracts_2021.pdf
  Restricted Access
1.01 MBAdobe PDFView/Open Request a copy


Items in OAR@UM are protected by copyright, with all rights reserved, unless otherwise indicated.