Mechanized Formal Model of Bitcoin’s Blockchain Validation Procedures
At a glance
- Citations
- 6
- References
- 0
- Comments
- 0
Abstract
We present the first mechanized formal model of Bitcoin’s transaction and blockchain data structures including the formalization of the blockchain validation procedures. Our formal model, though still a simplified representation of an actual Bitcoin blockchain, includes regular and coinbase transactions, segregated witnesses, relative and absolute locktime, the Bitcoin Script language expressions together with a denotational semantics, transaction fees and block rewards. We formally specify the details of validity checks performed when adding new blocks to the blockchain. We assume perfect cryptography and use the symbolic approach for modeling hash functions and digital signatures. To demonstrate the utility of the model, we formally state and prove several essential properties of a valid blockchain - transactions are unique, each coin can be spent at most once and the new value is only created through block rewards. The model and the proofs are largely independent of Bitcoin specific details and easily generalize to any cryptocurrency blockchain based on the Unspent Transaction Output (UTXO) paradigm. We mechanize all the results using the Coq proof assistant.
Publication details
- DOI
- 10.4230/oasics.fmbc.2020.7
- OpenAlex
- W3118037443
- Document type
- article
- Language
- EN
- Source
- DROPS (Schloss Dagstuhl – Leibniz Center for Informatics)
- Last metadata update
Comments
Log in to join the discussion.