Bitcoin Trace-Net: Formal Contract Verification at Signing Time

07/15/2020
by   James Chiang, et al.
0

Smart contracting protocols promise to regulate the transfer of cryptocurrency amongst participants in a trustless manner. A safe smart contract implementation should ensure that each participant can always append a contract transaction to the blockchain in order move the contract towards secure completion. To this goal, we propose Bitcoin Trace-Net, a contract verification framework which generates an executable symbolic model from the underlying contract implementation. A Trace-Net model consists of a Petri Net formalism enriched with a Dolev-Yao-like actor knowledge model. The explicit symbolic actor knowledge model supports the verification of contracts featuring cryptographic sub-protocols, which may not be observable on the blockchain. Trace-Net is sufficiently expressive to accurately model blockchain semantics such as the delay between a transaction broadcast and its subsequent confirmation, as well as adversarial blockchain reorganizations of finite depths, both of which can break smart contract safety. As an implementation level framework, Trace-Net can be instantiated at run-time to monitor and verify smart contract protocol executions.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
06/28/2021

Verification of a Smart Contract for a Simple Casino

We describe the verification of an existing smart contract for a simple ...
research
11/28/2020

Verification of recursive Bitcoin contracts

Smart contracts - computer protocols that regulate the exchange of crypt...
research
03/16/2023

Smart Contract Generation for Inter-Organizational Process Collaboration

Currently, inter-organizational process collaboration (IOPC) has been wi...
research
11/17/2022

Towards Trace-based Deductive Verification (Tech Report)

Contracts specifying a procedure's behavior in terms of pre- and postcon...
research
04/15/2020

Hardening X.509 Certificate Issuance using Distributed Ledger Technology

The security of cryptographic communication protocols that use X.509 cer...
research
12/03/2018

Debugging Smart Contract's Business Logic Using Symbolic Model-Checking

Smart contracts are a special type of programs running inside a blockcha...
research
12/22/2018

Literature Review: Smart Contract Semantics

This review presents and evaluates various formalisms for the purpose of...

Please sign up or login with your details

Forgot password? Click here to reset