- BFT:
- PBFT:节点数量固定、全连接、用于联盟链/私有链
- 节点数量有限,节点过多则不适用,无法用于公有链
- C/S
- DBFT(NEO使用的BFT算法)
- 由选出的超级节点进行共识过程,一个议长(轮流当)
- 不再是C/S,是对等节点
- 不会分叉
- 能动态加入和离开
- PBFT:节点数量固定、全连接、用于联盟链/私有链
缺点
多于2/3n个节点达成一致才能一致
弱中心化
- POW
- Permissionless、算力、节点可自由加入离开、中心化、正常节点算力只要>50%、安全性高
- 确认时间长、没有最终性、资源浪费
- POS
- 纯POS
- 持币数*持币时间大的更容易成为区块产生者、确认时间短
- 不用50%算力也有可能攻击成功(分叉攻击)、富者愈富穷者愈穷、如何激励、没有最终性
- 引入惩罚的POS
- 更安全、最终性
- 纯POS
- DPOS
选出代理者,由代理者轮流生产区块、虽然简单高效但是弱中心化
-
- EOS
- 21个块为一轮,每轮选出21个代理者,前20个投票选出、最后一个根据投票按概率生成,代理者随机产生区块。
- DPOS的优缺点
- Cardano
- 代理者的选择过程随机(抛硬币协议),保证了中心化
- EOS
- PalletOne
共识发展过程:https://www.jinse.com/blockchain/193226.html
分布式跨链协议
- Ouroborous
Cardano的共识算法