众所周知,比特币作为一个开放的、分布式的点对点网络,所需要克服的一个非常关键的问题就是拜占庭将军问题,也就是关于分布式共识的问题。 共识机制,也是区块链领域一个非常热门的创新点。各种项目层出不穷,热衷于向大家推销的卖点之一,一定是弃用了比特币的所谓浪费能量的PoW共识算法,替换成了某种不费电的XXX共识算法。甚至有些项目,还要堂而皇之的把自己要从PoW“升级”(我给升级打了引号)成其他共识算法作为重要的技术路线图。 很多人讲比特币,也会选择从分布式共识这个角度切入,先讲拜占庭将军问题,然后引出比特币的分布式记账,进而展开比特币的整个设计。 按照这样的叙事逻辑,就要从1982年Leslie Lamport的《拜占庭将军问题》讲起。然后讲到1985年Fischer, Lynch, Paterson的论文《有一个错误进程即不可能达成分布式共识》及其中证明的“FLP不可能定理”。FLP不可能定理基本上可以看作是通过严格的理论证明,把异步网络下解决拜占庭将军问题的可能性给枪毙了。 所以Leslie Lamport后来提出的BFT(Byzantine Fault Tolerant)也就是拜占...