解密区块链:拜占庭将军问题

生活中的共识

共识问题存在我们的生活中的方方面面,它是构成我们和谐社会的基础。

比如考大学,1977年恢复高考,全中国就考大学这个问题形成了一个统一的共识,而这个共识也是中国几千年来形成的一个共同认识——那就是通过统一考试来决定你是否上大学,以及上什么样的大学。

我们在开车或者走路时,共识就是:红灯停绿灯行。

我们在工作时,共识就是:能者多得。

我们考驾照时,共识就是:通过车管所的考试。

我们读大学时,要取得毕业证的共识就是:修够学分。

共识问题在我们的生活中比比皆是,我们通过达成共识,解决了很多问题。

无解的拜占庭将军问题

然而,有些问题却曾经是无法达成共识的,这其中最有名的就是拜占庭将军问题。

这个故事大概是这么讲的:

拜占庭帝国即中世纪的土耳其,拥有巨大的财富,周围10个邻邦垂诞已久,但拜占庭高墙耸立,固若金汤,没有一个单独的邻邦能够成功入侵。任何单个邻邦入侵的都会失败,同时也有可能自身被其他9个邻邦入侵。拜占庭帝国防御能力如此之强,至少要有十个邻邦中的一半以上同时进攻,才有可能攻破。

然而,如果其中的一个或者几个邻邦本身答应好一起进攻,但实际过程出现背叛,那么入侵者可能都会被歼灭。

于是每一方都小心行事,不敢轻易相信邻国。这就是拜占庭将军问题。

关于拜占庭将军问题,百度百科是这样定义的:

拜占庭将军问题(Byzantine failures),是1982年由莱斯利·兰伯特提出的点对点通信中的基本问题。含义是在存在消息丢失的不可靠信道上试图通过消息传递的方式达到一致性是不可能的。

在计算机技术及网络还未完全发展到2000年以后这么成熟时,任何人想要尝试解决拜占庭将军问题,都失败了。

在不使用当今的计算机及网络通信技术,那么点对点的通信一般都是通过“口头传递信息”或“书面传递信息”的方式来进行。

口头传递信息最大的问题就是无法验证消息的真伪,容易被偷听,也无法追溯消息的源头,是最不靠谱的通信方式,就是在今天,我们在工作时,如果为了避免扯皮,一般都建议用书面方式来沟通,至少书面的沟通,还有个记录,可以防止抵赖。

书面传递信息它确实也解决了口头传递信息可能存在的“空口无凭”的问题,但书面传递在不使用计算机或网络通信技术的前提下,它存在延时的问题,另外一个仍然是消息的真伪性仍然无法验证,有人或许会提出,签字盖章,但是看过古装剧的人,恐怕都看过,书信仍然是很容易伪造的,模仿字体,私刻签章。

那么拜占庭将军问题是不是就真的无解了?

当然不是!

(未完待续)

仅有不到7%的公众号还在坚持原创

如果喜欢,请关注“闻西说科技”

  • 发表于:
  • 原文链接:http://kuaibao.qq.com/s/20180111A0R2KL00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券