传统分布式一致性算法和区块链共识过程的异同点:
相同点:
Append only强调序列化少数服从多数原则分离覆盖的问题:即长链覆盖短链区块,多节点覆盖少数节点日志
不同点:
传统分布式一致性算法大多不考虑拜占庭容错(Byzanetine Paxos除外),即假设所有节点只发生宕机、网络故障等非人为问题,并不考虑恶意节点篡改数据的问题;传统分布式一致性算法是面向日志(数据库)的,即更通用的情况,而区块链共识模型面向交易的,所以严格来说,传统分布式一致性算法应该处于区块链共识模型的下面一层。
区块链共识模型与传统一致性算法的关系:
考虑上面的不同点,结合私有链和行业链的性质,我们有:
私有链:封闭生态的存储网络,所有节点都是可信任的,如某大型集团内部多数公司。行业链:半封闭生态的交易网络,存在对等的不信任节点,如房地产行业A、B、C、D公司。公有链:开放生态的交易网络,这层主要是为行业链和私有链提供全球交易网络。
由于私有链是封闭生态的存储网络,也就是说使用传统分布式一致性模型应该是最优的;由于联盟行业链其半封闭半开放特性,使用Delegated Proof of XXX 是最优的,可以考虑以传统一致性算法作为基础加入拜占庭容错/安全防护机制进行改进。公有链PoW应该仍然是最优的选择。
如下图所示: