IOHK | Paper

Library > Ouroboros-BFT: A Simple Byzantine Fault Tolerant Consensus Protocol

Ouroboros-BFT: A Simple Byzantine Fault Tolerant Consensus Protocol

October/2018, EPrint Archive

BFTBLOCKCHAINCONSENSUSDISTRIBUTEDPROTOCOL

We present a simple, deterministic protocol for ledger consensus that tolerates Byzantine faults. The protocol is executed by n servers over a synchronous network and can tolerate any number t of Byzantine faults with t < n/3. Furthermore, the protocol can offer (i) transaction processing at full network speed, in the optimistic case where no faults occur, (ii) instant con- firmation: the client can be assured in a single round-trip time that a submitted transaction will be settled, (iii) instant proof of settlement: the client can obtain a receipt that a submitted transaction will be settled. A derivative, equally simple, binary consensus protocol can be easily derived as well. We also analyze the protocol in case of network splits and temporary loss of synchrony arguing the safety of the protocol when synchrony is restored. Finally, we examine the covert adversarial model showing that Byzantine resilience is increased to t < n/2.