Verifikation av smarta kontrakt
Forskningsprojekt, 2020 – 2023

Blockchain is an an open, distributed ledger that can record transactions between untrusted parties, in a permanent, checkable and cryptographically secured way, without relying on any central authority. The most famous application of blockchain is cryptocurrencies in general, and Bitcoin in particular. But the blockchain technology has a much wider, rapidly growing set of applications. One of them is smart contracts. A smart contract is a computer program intended to digitally facilitate and enforce the performance of a contract between all parties which choose to engage with it. The execution of smart contracts is performed in the blockchain network. The by far most popular smart contract platform is Ethereum, with the smart contract language Solidity. The goals of this project are to develop a specification language for Solidity, to develop a program logic and calculus for this logic, allowing reasoning about smart contract correctness, and to develop a proof system for Solidity smart contracts. Specific challenges of the targeted domain include the hostile environment assumption, which dictates a strictly compositional verification discipline, the necessity to reason about resource flow, rather than information only, and the inclusion of hyper-properties, like robustness against scheduling attacks.

Deltagare

Wolfgang Ahrendt (kontakt)

Chalmers, Data- och informationsteknik, Formella metoder

Finansiering

Vetenskapsrådet (VR)

Projekt-id: Vetenskapsrådet
Finansierar Chalmers deltagande under 2020–2023

Mer information

Senast uppdaterat

2023-02-28