Formal verification of consensus algorithms tolerating malicious faults

  • Authors:
  • Bernadette Charron-Bost;Henri Debrat;Stephan Merz

  • Affiliations:
  • CNRS & LIX, Palaiseau, France;INRIA Nancy & LORIA, Nancy, France;INRIA Nancy & LORIA, Nancy, France

  • Venue:
  • SSS'11 Proceedings of the 13th international conference on Stabilization, safety, and security of distributed systems
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

Consensus is the paradigmatic problem in fault-tolerant distributed computing: it requires network nodes that communicate by message passing to agree on common value even in the presence of (benign or malicious) faults. Several algorithms for solving Consensus exist, but few of them have been rigorously verified, much less so formally. The Heard-Of model proposes a simple, unifying framework for defining distributed algorithms in the presence of communication faults. Algorithms proceed in communication-closed rounds, and assumptions on the faults tolerated by the algorithm are stated abstractly in the form of communication predicates. Extending previous work on the case of benign faults, our approach relies on the fact that properties such as Consensus can be verified over a coarse-grained, round-based representation of executions. We have encoded the Heard-Of model in the interactive proof assistant Isabelle/HOL and have used this encoding to formally verify three Consensus algorithms based on synchronous and asynchronous assumptions. Our proofs give some new insights into the correctness of the algorithms, in particular with respect to transient faults.