- Mastering Blockchain
- Imran Bashir
- 324字
- 2021-06-11 18:32:30
Classification
The consensus algorithms can be classified into two broad categories:
- Traditional—voting-based consensus
- Lottery-based—Nakamoto and post-Nakamoto consensus
Traditional voting-based consensus has been researched in distributed systems for many decades. Many fundamental results and a lot of ground-breaking work have already been produced in this space. Algorithms like Paxos and PBFT are prime examples of such types of algorithms. Traditional consensus can also be called fault-tolerant distributed consensus. In other words, this is a class of consensus algorithms that existed before Bitcoin and has been part of distributed system research for almost three decades.
Lottery-based or Nakamoto-type consensus was first introduced with Bitcoin. This class can also be simply called blockchain consensus.
The fundamental requirements of consensus algorithms boil down to safety and liveness conditions. A consensus algorithm must be able to satisfy the safety and liveness properties. Safety is usually based on some safety requirements of the algorithms, such as agreement, validity, and integrity. Liveness means that the protocol can make progress even if the network conditions are not ideal.
Now we'll define these terms separately:
Safety: This requirement generally means that nothing bad happens. There are usually three properties within this class of requirements, which are listed as follows:
- Agreement. The agreement property requires that no two processes decide on different values.
- Validity. Validity states that if a process has decided a value, that value must have been proposed by a process. In other words, the decided value is always proposed by an honest process and has not been created out of thin air.
- Integrity. A process must decide only once.
Liveness: This requirement generally means that something good eventually happens.
- Termination. This liveness property states that each honest node must eventually decide on a value.
With this, we have covered the classification and requirements of consensus algorithms. In the next section, we'll introduce various consensus algorithms, which we can evaluate using the consensus models covered in this section.
- 電子商務(wù)概論(第4版)
- 金牌網(wǎng)店客服實戰(zhàn)108招:小服務(wù)大效果
- 從0到1學做短視頻
- 社群商業(yè):社群經(jīng)濟時代的掘金法則
- 巧妙玩轉(zhuǎn)精準引流
- 信用超導(dǎo)重塑社會經(jīng)濟:區(qū)塊鏈創(chuàng)新理論與實踐
- 物聯(lián)網(wǎng)商業(yè)時代
- 微商引流爆粉實戰(zhàn)手冊:全網(wǎng)引流實戰(zhàn)300招
- 網(wǎng)店應(yīng)該這樣推廣
- 互聯(lián)網(wǎng)+創(chuàng)業(yè)相對論
- 生鮮電商的新零售之路
- 互聯(lián)網(wǎng)商業(yè)思維
- 68招玩轉(zhuǎn)視頻號
- 物聯(lián)網(wǎng)與電子商務(wù)
- 區(qū)塊鏈解密:構(gòu)建基于信用的下一代互聯(lián)網(wǎng)