TL;DR
This paper provides the first machine-checked formal proof of safety and liveness for a Nakamoto-style Proof of Stake blockchain protocol using the Coq proof assistant, ensuring protocol correctness in a synchronous network.
Contribution
It introduces a formal, machine-verified proof of safety and liveness for a PoS Nakamoto-style blockchain, covering chain growth, quality, and common prefix.
Findings
Verified safety and liveness properties for the protocol
Formal proof of chain growth, quality, and common prefix
Applicable to a synchronous network with static adversaries
Abstract
Fault-tolerant distributed systems move the trust in a single party to a majority of parties participating in the protocol. This makes blockchain based crypto-currencies possible: they allow parties to agree on a total order of transactions without a trusted third party. To trust a distributed system, the security of the protocol and the correctness of the implementation must be indisputable. We present the first machine checked proof that guarantees both safety and liveness for a consensus algorithm. We verify a Proof of Stake (PoS) Nakamoto-style blockchain (NSB) protocol, using the foundational proof assistant Coq. In particular, we consider a PoS NSB in a synchronous network with a static set of corrupted parties. We define execution semantics for this setting and prove chain growth, chain quality, and common prefix which together imply both safety and liveness.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
