A Formally Verified Protocol for Log Replication with Byzantine Fault Tolerance
Joel Wanner, Laurent Chuat, Adrian Perrig

TL;DR
This paper introduces a formally verified Byzantine fault-tolerant protocol for secure logging that guarantees agreement on proposed entries without leader election, emphasizing correctness, simplicity, and practicality.
Contribution
It presents a novel, formally verified consensus protocol tailored for secure logging, with a fully machine-checked security proof and practical implementation.
Findings
Protocol is optimal in rounds and fault tolerance.
Provides a fully machine-checked security proof.
Prototype implementation demonstrates practicality.
Abstract
Byzantine fault tolerant protocols enable state replication in the presence of crashed, malfunctioning, or actively malicious processes. Designing such protocols without the assistance of verification tools, however, is remarkably error-prone. In an adversarial environment, performance and flexibility come at the cost of complexity, making the verification of existing protocols extremely difficult. We take a different approach and propose a formally verified consensus protocol designed for a specific use case: secure logging. Our protocol allows each node to propose entries in a parallel subroutine, and guarantees that correct nodes agree on the set of all proposed entries, without leader election. It is simple yet practical, as it can accommodate the workload of a logging system such as Certificate Transparency. We show that it is optimal in terms of both required rounds and tolerable…
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.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
