共识算法,得从一个“不可解的两个将军问🁯题”说起。
两个将军在攻击同一个敌人。将军甲被认为是主帅,将军乙则是副将。每个将军的军队都无法仅靠自己的力量成功打败敌军,所以他们需要合☥🁤🇰作并同一时间发起攻击。这看起来是一个简单的情况,但有一点要注意:
为了两军的沟通和决定作战时间,将军甲必须要派遣一个信使穿过敌人的营地去把攻击时间告诉将军乙。但是,信使可🛢能会被敌人抓住因而信息无法传到🃎🖬友军。那会导致将军甲发起攻击时,将军乙和他的军队还待在原地。
即使第一条信息传到了,将军乙也需要确认他收到了信息,所以他要派遣一个信使回去,因此重复上一🗀😣🃊个信使可能被抓🛢的情况。⛬这种情况会延伸到无限,两位将军将无法达成一致。
没有任何办法可以保证第二个要求,那就是每个将军都要确保对方同意了攻击计🕜划。两个将军都总会怀疑他们最后的信使是否能到达。
因为信使无法到达的可能性总🔒是大于0,所以将军们永远无法以10😯🄼0%的自信达成共识。
在地球,这个问题被称🚰作“拜占庭将军问题”。
而拜占庭将军问题,还有一个升级版♺🍝本,叫“两军问题”。
“两🚜军问题”当中,两个以上的将军需要对攻打他们共同敌人的时间作出统一。而可怕的是,其中一个或几个将军有可能是叛徒,意味着他们可以对他们的选择撒谎。
数学家经过一系♶🌽列详细论证之后,得出了一个结论。
当叛徒的数量小于三🅱🐣分之一的时候,算法就可以达成共识。
这也就是区块链技术的核心。
它无需🛂一个中心,无需指挥众将的“指挥部”。只需要三😫🄓☲分之二以上的成员认可一个指令,整个系统就可以达成共识。
也正是因为如此,区块链难以侵入它不畏惧内部叛徒。任何一个节点的叛变都无关紧要。而想要劫持掉三分之一以上的节点,付⛬出的代价又会过高。
理想主义者将之视作对🚰抗暴政与集权的手段🁯,犯罪者将之😫🄓☲视作法外地带。
难道说,多于三分之二的“自己”🈹🃎🖮认可了某个未来流向过去的前知,那么当前节点的自己不🚿🙆🚿🙆认可,也只能接受?
一时之间,也想不明白。
于是,🛂王崎问出了下一个问题:“那么,妖皇陛下,前知者的斗战,是什么样子的?”
他倒是知道把握这个机会。
龙皇陛下一向是保密主义者。他或许是不希望自己选择的历史,将人族限制在自己知道的历史之中,而是期待人族带来自己不知道的改变。
但他让王🚞崎来对抗身为前知者的救济天魔王,是否可以认为……龙皇陛下已经默许了这种事情的发生呢🗀😣🃊?
当然,这种事情王崎是🚰绝对不会直接去向龙皇确定的。至少在遇到龙皇之前不会。
他会利用这个机会,好好问妖皇几个问题。
妖皇反问:“你觉得是什么样子?”
王崎思考片刻:“完全信息动态博弈?”