Smart contracts are small but highly error-prone programs that implement agreements between multiple parties. We present a reactive synthesis approach for the automatic construction of smart contract state machines. Towards this end, we extend temporal stream logic (TSL) with universally quantified parameters over infinite domains. Parameterized TSL is a convenient logic to specify the temporal control flow, i.e., the correct order of transactions, as well as the data flow of the contract's fields. We develop a two-step approach that 1) synthesizes a finite representation of the - in general - infinite-state system and 2) splits the system into a compact hierarchical architecture that enables the implementation of the state machine in Solidity. We implement the approach in our prototype tool SCSynt, which - within seconds - automatically constructs Solidity code that realizes the specified control flow.
History
Editor
André É ; Sun J
Primary Research Area
Reliable Security Guarantees
Name of Conference
International Symposium on Automated Technology for Verification and Analysis (ATVA)
Journal
Automated Technology for Verification and Analysis
Volume
14215
Page Range
248-269
Publisher
Springer
Open Access Type
Not Open Access
BibTeX
@inproceedings{Finkbeiner:Hofmann:Kohn:Passing:2023,
title = "Reactive Synthesis of Smart Contract Control Flows.",
author = "Finkbeiner, Bernd" AND "Hofmann, Jana" AND "Kohn, Florian" AND "Passing, Noemi",
editor = "André, Étienne" AND "Sun, Jun",
year = 2023,
month = 10,
journal = "Automated Technology for Verification and Analysis",
pages = "248--269",
publisher = "Springer",
issn = "1611-3349",
doi = "10.1007/978-3-031-45329-8_12"
}