Tendermint
摘要
Tendermint, as HotStuff, Diem (ex Libra), Algorand, etc., is a committee-based blockchain where subsets of processes, called committees, use an agreement procedure tolerant to Byzantine behaviors to decide on the next block to add to the blockchain. Tendermint has been the first blockchain proposing such a committee-based approach, where committees are selected on the basis of the participants’ stake. Tendermint agreement procedure takes inspiration from classical Byzantine fault-tolerant (BFT) consensus distributed algorithms, which allows to formalize and prove its safety and liveness following distributed computing theory’s tools and methodology. In this chapter, we present the Tendermint platform and architecture, alongside a deep analysis of Tendermint core distributed algorithms. In this respect, we show the differences between the first implemented algorithm which contained a very subtle design bug-hindering liveness and the current, correct algorithm where the bug has been solved.