Title
Developing Safe Smart Contracts
Abstract
Blockchain is a shared, distributed ledger on which transactions are digitally recorded and linked together. Smart Contracts are programs running on Blockchain and are used to perform transactions in a distributed environment without need for any trusted third party. Since smart contracts are used to transfer assets between contractual parties, their safety and security are crucial and badly written and insecure contracts may result in catastrophe. Actor-based programming is known to solve several problems in building distributed software systems. Moreover, formal verification is a solid technique for developing dependable systems. In this paper, we show how the actor model can be used for modeling, analysis and synthesis of smart contracts. We propose Smart Rebeca as an extension of the actor-based language Rebeca, and use the model checking toolset Afra for verification of smart contracts. We implement a synthesizer to synthesise Solidity programs that run on the Ethereum platform from Smart Rebeca models. We examine challenges and opportunities of our approach in modeling, formal verification and synthesis of smart contracts using actors.
Year
DOI
Venue
2020
10.1109/COMPSAC48688.2020.0-137
2020 IEEE 44TH ANNUAL COMPUTERS, SOFTWARE, AND APPLICATIONS CONFERENCE (COMPSAC 2020)
Keywords
DocType
ISSN
Smart Contract, Actor Model, Safety Verification, Model Checking
Conference
0730-3157
Citations 
PageRank 
References 
0
0.34
0
Authors
5
Name
Order
Citations
PageRank
Sajjad Rezaei100.34
Ehsan Khamespanah212814.13
Marjan Sirjani391557.77
Ali Sedaghatbaf400.34
Siamak Mohammadi5278.23