Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3185089.3185138acmotherconferencesArticle/Chapter ViewAbstractPublication PagesicscaConference Proceedingsconference-collections
research-article

Formal Modeling and Verification of Smart Contracts

Published: 08 February 2018 Publication History

Abstract

Smart contracts can automatically perform the contract terms according to the received information, and it is one of the most important research fields in digital society. The core of smart contracts is algorithm contract, that is, the parties reach an agreement on the contents of the contract and perform the contracts according to the behaviors written in certain computer algorithms. It not only needs to make sure about the correctness of smart contracts code, but also should provide a credible contract code execution environment. Blockchain provides a trusted execution and storage environment for smart contracts by the distributed secure storage, consistency verification and encryption technology. Current challenge is how to assure that smart contract can be executed as the parties' willingness. This paper introduces formal modeling and verification in formal methods to make smart contract model and verify the properties of smart contracts. Formal methods combined with smart contracts aim to reduce the potential errors and cost during contract development process. The description of a general and formal smart contract template is provided. The tool of model checking, SPIN, is used to verify the correctness and necessary properties for a smart contract template. The research shows model checking will be useful and necessary for smart contracts.

References

[1]
Decentralized autonomous organization: The DAO{EB/OL}. (2016-06-17). https://en.wikipedia.org/wiki/Decentralized_autonomous_organization.
[2]
DAO Attack{EB/OL}. 2016. http://www.coindesk.com/the-dao-just-raised-50-million-but-what-is-it/.
[3]
Ethereum{EB/OL}.http://www.ethereum.org/, 2017.
[4]
Szabo N. Formalizing and securing relationships on public networks{J}. First Monday, 1997, 2(9).
[5]
Lessig L. Code is law{J}. The Industry Standard, 1999, 18.
[6]
Blockchain. URL https://en.wikipedia.org/wiki/Block_chain_(database), 2016
[7]
Hyperledger{EB/OL}. https://www.hyperledger.org/, 2017.
[8]
Formal Methods. {URL} http://en.wikipedia.orgi/Formal_methods.
[9]
Sanghavi, Alok (21 May 2010). "What is formal verification?". EE Times-Asia.
[10]
Mikk E, Lakhnech Y, Siegel M, et al. Implementing statecharts in PROMELA/SPIN{C}//Industrial Strength Formal Specification Techniques, 1998. Proceedings. 2nd IEEE Workshop on. IEEE, 1998: 90-101.
[11]
Buterin V. Ethereum white paper: a next generation smart contract & decentralized application platform{J}. 2013.
[12]
Christidis K, Devetsikiotis M. Blockchains and smart contracts for the internet of things{J}. IEEE Access, 2016, 4: 2292-2303.
[13]
Luu L, Chu D H, Olickel H, et al. Making smart contracts smarter{C}//Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security. ACM, 2016: 254-269.
[14]
Bhargavan K, Delignat-Lavaud A, Fournet C, et al. Short Paper: Formal Verification of Smart Contracts{J}.
[15]
Delmolino K, Arnett M, Kosba A, et al. Step by step towards creating a safe smart contract: Lessons and insights from a cryptocurrency lab{C}//International Conference on Financial Cryptography and Data Security. Springer Berlin Heidelberg, 2016: 79-94.
[16]
Bigi G, Bracciali A, Meacci G, et al. Validation of Decentralised Smart Contracts Through Game Theory and Formal Methods{M}//Programming Languages with Applications to Biology and Security. Springer International Publishing, 2015: 142-161.
[17]
Katoen, Joost-Pieter. Principles of model checking, The MIT Press, 2008.The Spin Model Checker --- Primer and Reference Manual, Addison-Wesley, 2003. ISBN 0-321-22862-6.

Cited By

View all
  • (2024)A Dynamic Behavior Verification Method for Composite Smart Contracts Based on Model CheckingMathematics10.3390/math1215243112:15(2431)Online publication date: 5-Aug-2024
  • (2024)Are We There Yet? Unraveling the State-of-the-Art Smart Contract FuzzersProceedings of the IEEE/ACM 46th International Conference on Software Engineering10.1145/3597503.3639152(1-13)Online publication date: 20-May-2024
  • (2024)Toward Automated Attack Discovery in SDN Controllers Through Formal VerificationIEEE Transactions on Network and Service Management10.1109/TNSM.2024.338640421:3(3636-3655)Online publication date: Jun-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
ICSCA '18: Proceedings of the 2018 7th International Conference on Software and Computer Applications
February 2018
349 pages
ISBN:9781450354141
DOI:10.1145/3185089
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

In-Cooperation

  • University of Tokyo

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 08 February 2018

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Formal Verification
  2. Formal methods
  3. Model checking
  4. Modeling
  5. SPIN
  6. Smart contracts

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Conference

ICSCA 2018

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)125
  • Downloads (Last 6 weeks)7
Reflects downloads up to 30 Aug 2024

Other Metrics

Citations

Cited By

View all
  • (2024)A Dynamic Behavior Verification Method for Composite Smart Contracts Based on Model CheckingMathematics10.3390/math1215243112:15(2431)Online publication date: 5-Aug-2024
  • (2024)Are We There Yet? Unraveling the State-of-the-Art Smart Contract FuzzersProceedings of the IEEE/ACM 46th International Conference on Software Engineering10.1145/3597503.3639152(1-13)Online publication date: 20-May-2024
  • (2024)Toward Automated Attack Discovery in SDN Controllers Through Formal VerificationIEEE Transactions on Network and Service Management10.1109/TNSM.2024.338640421:3(3636-3655)Online publication date: Jun-2024
  • (2024)A Coverage-Oriented Fuzzing Test Method for Embedded Firmware2024 10th International Symposium on System Security, Safety, and Reliability (ISSSR)10.1109/ISSSR61934.2024.00036(244-250)Online publication date: 16-Mar-2024
  • (2024)Blockchain Based Lottery System2024 2nd International Conference on Disruptive Technologies (ICDT)10.1109/ICDT61202.2024.10489454(153-158)Online publication date: 15-Mar-2024
  • (2024)Multi-valued model checking IoT and intelligent systems with commitment protocols in multi-source data environmentsInformation Fusion10.1016/j.inffus.2023.102048102(102048)Online publication date: Feb-2024
  • (2024)A smart contract vulnerability detection method based on deep learning with opcode sequencesPeer-to-Peer Networking and Applications10.1007/s12083-024-01750-7Online publication date: 27-Jun-2024
  • (2023)Axiomatization of Blockchain TheoryMathematics10.3390/math1113296611:13(2966)Online publication date: 3-Jul-2023
  • (2023)Research on the Architecture of Transactional Smart Contracts Based on BlockchainsElectronics10.3390/electronics1218392312:18(3923)Online publication date: 18-Sep-2023
  • (2023)Formal Analysis of Reentrancy Vulnerabilities in Smart Contract Based on CPNElectronics10.3390/electronics1210215212:10(2152)Online publication date: 9-May-2023
  • Show More Cited By

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media