gardless of the current round or step. At any time during the consensus process if a node is locked on a block from round R but receives a proof-of-lock for a round R′ where R < R′, the node unlocks. 6.3 Proof of Safety 1 If there are less than /3 in Byzantine voting power and at least one good validator decides on a block B, then no good validator will decide on any block other than B. Consider the earliest round R where at least one good validator 2 commits block B at round R. This validator received more than /3 of precommits 1 for block B at round R. Considering that less than /3 are Byzantine, by arithmetic 1 at least /3 of good validators must have precommitted block B at round R. These good validators must have a lock on block B at round R. No other block can be committed by good validators unless some of the good validators unlock from B, which is impossible. 6.4 Proof of Liveness 1 If there are less than /3 in Byzantine voting power then this protocol does not deadlock. The only way the consensus process can deadlock is if two different blocks had been locked by some good validators from different rounds (a rare oc- currence without an active global adversary). Say that some good validators locked on block B and round R, and some good validators locked on block B′ at round R′, where R < R′. In this case the proof-of-lock from R′ included in a proposal by a good validator will eventually unlock those validators locked on R allowing the consensus process to continue. 6.5 Cooperation Since validators divide the transaction fees of block H amongst themselves, a greedy validator might be tempted to exclude some signatures when proposing the next block H+1. This is an inferior strategy when considering that other validators are game optimal participants. Given that the total amount of fees to be divided in a block is f , and that the sum of the voting powers v of all validators that 1 i have signed and successfully broadcasted their signatures is 1, consider proposer P with voting power v < 1 who is considering whether to include validator Alice’s p signature with voting power v < 1. At stake is Alice’s fair share of the fees which a is f1 · va. Of this, P’s incremental benefit of excluding Alice’s signature is: f ·v ·v /(1−v ) 1 a p a Then, Alice could react tit-for-tat by excluding P’s signature when it be- comes Alice’s turn to propose the next block, where the sum of the fees in that 8
Tendermint: Consensus without Mining Page 7 Page 9