拜占庭时代有一个非常富有强大的城邦,它的周围被10个小城邦所包围环绕,小城邦们觊觎大城邦的财富,所以意图侵略它。但大城邦很强大,必须至少一半以上的小城邦联合一起才能成功。
在拜占庭将军问题里,最重要的事情是如何让所有城邦将军达成一致,如果中间出现了被拜占庭帝国收买的将军导致只有半数以下的城邦将军攻打拜占庭,那么基本上这些国家将会灭亡,所以建立信任是攻打拜占庭帝国最关键的一环!
从拜占庭将军问题我们可以发现两个主要的问题:
1、无法保证每个城邦将军都是诚实的。
2、无法保证内部信息的统一,每个城邦将军收到的信息可能有所不同。
再来看区块链,我们知道区块链是一种去中心化的分布式系统,这个系统存在了多个节点,各个节点协同工作。
那么这样区块链和拜占庭将军问题就联系起来了:每个网络节点相当于一个城邦,这些节点最终要共同维护工作。拜占庭将军问题的难点在于:在任意时间系统中可能会存在多个提案,这样就很难在一个时刻对结果进行一致性确认。