Towards a Verified Model of the Algorand Consensus Protocol in Coq

  title={Towards a Verified Model of the Algorand Consensus Protocol in Coq},
  author={Musab A. Alturki and Jing Chen and Victor Luchangco and Brandon M. Moore and Karl Palmskog and Lucas Pe{\~n}a and Grigore Rosu},
  booktitle={FM Workshops},
The Algorand blockchain is a secure and decentralized public ledger based on pure proof of stake rather than proof of work. At its core it is a novel consensus protocol with exactly one block certified in each round: that is, the protocol guarantees that the blockchain does not fork. In this paper, we report on our effort to model and formally verify the Algorand consensus protocol in the Coq proof assistant. Similar to previous consensus protocol verification efforts, we model the protocol as… Expand
Formalizing Nakamoto-Style Proof of Stake
This work verifies a Proof of Stake (PoS) Nakamoto-style blockchain (NSB) protocol, using the foundational proof assistant Coq, and presents the first machine checked proof that guarantees both safety and liveness for a consensus algorithm. Expand
On the Formal Verification of the Stellar Consensus Protocol
This paper believes this is the first mechanized proof of both safety and liveness, specified in LTL, for a deployed BFT protocol. Expand
Red Belly: A Secure, Fair and Scalable Open Blockchain
Although its performance is affected by attacks, RBBC scales in that its throughput increases to hundreds of consensus nodes and achieves 30k TPS throughput and 3 second latency on 1000 VMs, hence improving by 3× both the latency and the throughput of its closest competitor. Expand
Compositional Verification of Byzantine Consensus
Until now, computer-aided proofs of the liveness of byzantine consensus algorithms assumed synchrony to reason in lock steps or the error-prone manual intervention of experts in the proof checker butExpand
A formal model of Algorand smart contracts
We develop a formal model of Algorand stateless smart contracts (stateless ASC1.) We exploit our model to prove fundamental properties of the Algorand blockchain, and to establish the security ofExpand


Mechanising blockchain consensus
This work provides a library of theorems about a pure functional implementation of block forests, defines an inductive system invariant, and shows that, in a quiescent system state, it implies a global agreement on the state of per-node transaction ledgers. Expand
ALGORAND AGREEMENT: Super Fast and Partition Resilient Byzantine Agreement
A simple Byzantine agreement protocol with leader election, that works under > 2/3 honest majority and does not rely on the participants having synchronized clocks, that is resilient to arbitrary network partitions with unknown length, and recovers fast after the partition is resolved and bounded message delay is restored. Expand
Planning for change in a formal verification of the raft consensus protocol
This work presents the first formal verification of state machine safety for the Raft consensus protocol, a critical component of many distributed systems, with an end-to-end guarantee that the implementation provides linearizable state machine replication. Expand
Algorand: A secure and efficient distributed ledger
Algorand is an alternative, secure and efficient distributed ledger that guarantees the finality of a transaction the moment the transaction enters the ledger and requires only a negligible amount of computation. Expand
Algorand: Scaling Byzantine Agreements for Cryptocurrencies
Experimental results show that Algorand confirms transactions in under a minute, achieves 125x Bitcoin's throughput, and incurs almost no penalty for scaling to more users. Expand
Velisarios: Byzantine Fault-Tolerant Protocols Powered by Coq
This paper presents Velisarios, a logic-of-events based framework implemented in Coq, which is developed to implement and reason about BFT-SMR protocols and presents the first machine-checked proof of a crucial safety property of an implementation of the area’s reference protocol: PBFT. Expand
Programming and proving with distributed protocols
Disel is presented, the first framework for implementation and compositional verification of distributed systems and their clients, all within the mechanized, foundational context of the Coq proof assistant. Expand
Bitcoin: A Peer-to-Peer Electronic Cash System
A purely peer-to-peer version of electronic cash would allow online payments to be sent directly from one party to another without going through a financial institution. Digital signatures provideExpand
Algorand verification
  • 2019
  • 2018