Verifying Randomized Consensus Protocols with Common Coins
Song Gao, Bohua Zhan, Zhilin Wu, Lijun Zhang
TL;DR
The paper extends probabilistic threshold automata (PTA) to support common coins by introducing a common-coin automaton and communication primitives, enabling verification of randomized fault-tolerant consensus protocols under adaptive Byzantine adversaries. It reformulates multi-round probabilistic correctness into single-round non-probabilistic queries, incorporating a binding-style condition to guard against adaptive attacks. The authors develop an extended counter-system framework, prove reduction theorems, and use ByMC to verify eight common-coin protocols, reproducing known attacks and confirming fixes. The approach broadens parameterized verification capabilities for real-world consensus protocols in cloud and blockchain contexts. Practically, it provides a scalable method to certify correctness properties (agreement, validity, and termination) for complex randomized protocols using common coins.
Abstract
Randomized fault-tolerant consensus protocols with common coins are widely used in cloud computing and blockchain platforms. Due to their fundamental role, it is vital to guarantee their correctness. Threshold automata is a formal model designed for the verification of fault-tolerant consensus protocols. It has recently been extended to probabilistic threshold automata (PTAs) to verify randomized fault-tolerant consensus protocols. Nevertheless, PTA can only model randomized consensus protocols with local coins. In this work, we extend PTA to verify randomized fault-tolerant consensus protocols with common coins. Our main idea is to add a process to simulate the common coin (the so-called common-coin process). Although the addition of the common-coin process destroys the symmetry and poses technical challenges, we show how PTA can be adapted to overcome the challenges. We apply our approach to verify the agreement, validity and almost-sure termination properties of 8 randomized consensus protocols with common coins.
