Skip to main navigation Skip to search Skip to main content

Formal simulation and verification of solidity contracts in event-B

  • Jian Zhu
  • , Kai Hu
  • , Mamoun Filali
  • , Jean Paul Bodeveix
  • , Jean Pierre Talpin
  • , Haitao Cao

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

Smart contracts are the artifact of the blockchain that provides immutable and verifiable specifications of physical transactions. Solidity is a domain-specific programming language with the purpose of defining smart contracts. It aims at reducing the transaction costs occasioned by the execution of contracts on the distributed ledgers such as Ethereum. However, Solidity contracts need to adhere to safety and security requirements that require formal verification and certification. This paper proposes a method to meet such requirements by translating Solidity contracts to Event-B models, supporting certification. To that purpose, we define a restrained Solidity subset and a transfer function that translates Solidity contracts to Event-B models. Besides, we have implemented a translator to improve the conversion efficiency. As a case study, we take advantage of EventB method capabilities to simulate models at different levels of abstraction and to express the properties of a typical smart contract: Honeypot contract. Lastly, we verify the generated proof obligations of the Event-B model with the help of the Rodin platform.

Original languageEnglish
Title of host publicationProceedings - 2021 IEEE 45th Annual Computers, Software, and Applications Conference, COMPSAC 2021
EditorsW. K. Chan, Bill Claycomb, Hiroki Takakura, Ji-Jiang Yang, Yuuichi Teranishi, Dave Towey, Sergio Segura, Hossain Shahriar, Sorel Reisman, Sheikh Iqbal Ahamed
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages1309-1314
Number of pages6
ISBN (Electronic)9781665424639
DOIs
StatePublished - Jul 2021
Event45th IEEE Annual Computers, Software, and Applications Conference, COMPSAC 2021 - Virtual, Online, Spain
Duration: 12 Jul 202116 Jul 2021

Publication series

NameProceedings - 2021 IEEE 45th Annual Computers, Software, and Applications Conference, COMPSAC 2021

Conference

Conference45th IEEE Annual Computers, Software, and Applications Conference, COMPSAC 2021
Country/TerritorySpain
CityVirtual, Online
Period12/07/2116/07/21

Keywords

  • Blockchain
  • Event-B model
  • Formal verification for security
  • Smart contract
  • Solidity

Fingerprint

Dive into the research topics of 'Formal simulation and verification of solidity contracts in event-B'. Together they form a unique fingerprint.

Cite this