From traditional fault tolerance to blockchain - Zhao, Wenbing, Ph.D (John Wiley & Sons, Inc., 2021)
"The primary challenge in dependable distributed computing is the difficulty in achieving distributed consensus. Traditional consensus algorithms all depend on the knowledge of a membership and rely on multi-round voting, which are inevitably highly complex and non-scalable. Bitcoin completely abandoned the traditional approach by converting the leader election into a stochastic process where mining nodes compete to solve a puzzle and the one who solves the puzzle would proceed to creating the next block. Because the consensus is achieved probabilistically, it is unavoidable that sometimes two or more blocks are created at the same block height, in which case, nodes would follow a conflict resolution rule, where the branch that has the most cumulative difficulty would be selected as the main chain. This new way of reaching consensus opened the door for building large-scale systems that use consensus as their basis for operation. A few years later in 2015, Ethereum became the first platform that supports Turing-complete computing using smart contract, which made it possible to develop arbitrary complex decentralized applications. This book will explain in depth how blockchain consensus works and how the blockchain technology could be used to develop secure and dependable systems."--