延伸阅读
4月11日晚间 财经圈动态消息10条
3月28日晚间 财经圈动态消息10条
2月7日晚间 财经圈动态消息10条
PBFT如何运作?
共识:想说爱你不容易
前言
在这篇文章中,笔者将介绍一个历久不衰的经典:PBFT。它的全名为Practical Byzantine Fault Tolerance,诞生至今已逾20年。它的发明源于分布式系统中一个著名的共识难题:拜占庭将军问题(Byzantine Generals Problem)。PBFT并不是一个针对全开放环境的共识协定——事实上在区块链出现之前,并未出现任何一个针对开放环境的拜占庭容错共识。区块链的横空出世启发了研究人员再度审视PBFT这个经典。PBFT具有一些与区块链截然不同的特性,这提供了改进区块链一些有用的思路,例如以PBFT为基础建立的权益证明(Proof-of-stake)模型。接下来的篇幅中,笔者将简介PBFT的起源背景、共识运作、正确性证明,以及PBFT与区块链不同的特性。
为什么要发明PBFT?
人类自古以来便不断追求可以永续运作的系统。一个永续的系统,首先要能够容错以避免因单一故障而停摆。一个实现容错的直觉作法就是让系统具有一定程度的冗余——让有多个具有相同组成与状态的个体同时运作,如此当故障发生时只需替换故障的个体便能保证系统继续运作。在分布式系统中,我们称这样的设计为状态机复制(State Machine Replication)。
什么是状态机?
状态机是一个抽象的黑盒子,它具有初始状态,并且在收到输入后,能依据相应的转换函数而转换至新的状态,且转换的过程是决定性的(Deterministic)——只要给定相同的初始状态及输入,必定会得到相同的输出。而由数个具有相同转换函数的状态机组成的系统即为状态机复制。
点击关注币海启行微信公众号,了解更多