Passer à la navigation principale Passer à la recherche Passer au contenu principal

Modeling and Verification of Solidity Smart Contracts with the B Method

  • Fayçal Baba
  • , Amel Mammar
  • , Marc Frappier
  • , Régine Laleau
  • Université de PARIS XII
  • Université de Sherbrooke

Résultats de recherche: Le chapitre dans un livre, un rapport, une anthologie ou une collectionContribution à une conférenceRevue par des pairs

Résumé

Smart contracts written using the Solidity programming language of the Ethereum platform are well-known to be subject to bugs and vulnerabilities, which already have led to the loss of millions of dollars worth of assets. Since smart contract code cannot be updated to patch security flaws, reasoning about smart contract correctness to ensure the absence of vulnerabilities before their deployment is of the utmost importance. In this paper, we present a formal approach for generating correct smart contracts from B specification that verify safety properties. Our approach consists of two phases: first a smart contract and its properties are specified and verified in B, then a set of rules we defined are applied to generate the correct smart contract code in Solidity. The approach is implemented in a tool that can generate Solidity contract from a proven B project. The whole approach is demonstrated by a case study on the ERC-20 (Ethereum Request for Comments 20) Wrapped Ether (WETH) contract, which is abstractly specified in B, with invariants stating correctness properties, modeled checked with ProB for temporal properties, implemented in B0, proven correct, and automatically translated into a Solidity contract.

langue originaleAnglais
titreEngineering of Complex Computer Systems - 28th International Conference, ICECCS 2024, Proceedings
rédacteurs en chefGuangdong Bai, Fuyuki Ishikawa, Yamine Ait-Ameur, George A. Papadopoulos
EditeurSpringer Science and Business Media Deutschland GmbH
Pages159-178
Nombre de pages20
ISBN (imprimé)9783031664557
Les DOIs
étatPublié - 1 janv. 2025
Evénement28th International Conference on Engineering of Complex Computer Systems, ICECCS 2024 - Limassol, Chypre
Durée: 19 juin 202421 juin 2024

Série de publications

NomLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume14784 LNCS
ISSN (imprimé)0302-9743
ISSN (Electronique)1611-3349

Une conférence

Une conférence28th International Conference on Engineering of Complex Computer Systems, ICECCS 2024
Pays/TerritoireChypre
La villeLimassol
période19/06/2421/06/24

Empreinte digitale

Examiner les sujets de recherche de « Modeling and Verification of Solidity Smart Contracts with the B Method ». Ensemble, ils forment une empreinte digitale unique.

Contient cette citation