ESBMC-Solidity: An SMT-Based Model Checker for Solidity Smart Contracts

11/25/2021
by   Kunjian Song, et al.
0

Smart contracts written in Solidity are programs used in blockchain networks, such as Etherium, for performing transactions. However, as with any piece of software, they are prone to errors and may present vulnerabilities, which malicious attackers could then use. This paper proposes a solidity frontend for the efficient SMT-based context-bounded model checker (ESBMC), named ESBMC-Solidity, which provides a way of verifying such contracts with its framework. A benchmark suite with vulnerable smart contracts was also developed for evaluation and comparison with other verification tools. The experiments performed here showed that ESBMC-Solidity detected all vulnerabilities, was the fastest tool, and provided a counterexample for each benchmark. A demonstration is available at https://youtu.be/3UH8_1QAVN0.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
01/06/2021

sGUARD: Towards Fixing Vulnerable Smart Contracts Automatically

Smart contracts are distributed, self-enforcing programs executing on to...
research
07/18/2023

CONTRACTFIX: A Framework for Automatically Fixing Vulnerabilities in Smart Contracts

The increased adoption of smart contracts in many industries has made th...
research
12/12/2019

Smart Contract Repair

Smart contracts are automated or self-enforcing contracts that can be us...
research
11/02/2022

AntFuzzer: A Grey-Box Fuzzing Framework for EOSIO Smart Contracts

In the past few years, several attacks against the vulnerabilities of EO...
research
04/20/2022

Distributed Runtime Verification of Metric Temporal Properties for Cross-Chain Protocols

Transactions involving multiple blockchains are implemented by cross-cha...
research
06/25/2019

EVulHunter: Detecting Fake Transfer Vulnerabilities for EOSIO's Smart Contracts at Webassembly-level

As one of the representative Delegated Proof-of-Stake (DPoS) blockchain ...
research
02/05/2018

Smart Contracts Software Metrics: a First Study

Smart contracts (SC) are software codes which reside and run over a bloc...

Please sign up or login with your details

Forgot password? Click here to reset