区块链:OK区块链60讲 | 第14集:什么是拜占庭将军问题?

\n    \n

《OK区块链60讲》是由OKEx&新浪科技联合出品的区块链科普动画视频,针对区块链零基础用户,通过系列文章、科普动画等形式,从概念、技术、应用等角度,通过5大板块,60个知识点,生动形象地科普区块链概念。本集课程内容由FIBOS发起人响马导师指导完成。哈喽大家好,我是小K君。今天我们要讲的内容是:“什么是拜占庭将军问题”?

声音 | Facebook区块链项目负责人:Libra需要政府和监管机构的帮助:据Cointelegraph消息,Facebook区块链项目负责人David Marcus在一封写给美国参议院银行委员会的信中表示,Libra的发行还需政府、中央银行和相关监管机构的帮助。对于连续两日的参众两院听证会,Marcus在上述信件中表示, “我保证自己会花时间做好”。[2019/7/10]

我们在之前讲过,分布式账本可以说是区块链的框架,每一个人都可以自由地参与进来,共同处理区块链中的数据,基于这一点,区块链实际上就是一个大的分布式计算网络。它并没有一个类似中央指挥室的东西来发号施令,整个网络是完全分散的,要依靠不同的节点间,彼此交换信息、达成共识,才能统一行动,整个过程就像无领导小组讨论一样。

动态 | 多位Instagram高管已转至Facebook区块链小组:据CNBC消息,近几个月来,Instagram的多位重要管理层人员和员工都已转至Facebook新成立的区块链小组,其中包括前产品副总裁Kevin Weil、工程主管James Everingham和基础设施工程总监Hui Ding。该小组对其工作的保密,但已有报道称该小组正在PayPal前总裁David Marcus的领导下开发自己的加密货币。[2019/6/2]

对此,有人就提出了疑问,万一有节点发送了错误的信息,干扰网络正常运行或者大家产生了分歧怎么办?于是,学者们便建立了一个模型,统一将这类用来描述分布式系统一致性的问题,称为拜占庭将军问题。所谓拜占庭将军问题是这样的:拜占庭帝国想要攻打一个国家,它派出了多支军队进行围攻,但敌国军事实力也很强,将军们必须在同一个时间,一起发动进攻才能获取胜利。

动态 | Facebook区块链团队招聘战略合作伙伴经理:据Facebook官方消息,Facebook的区块链团队正在寻找一位战略合作伙伴经理。该职位将负责与主要业务和非营利利益相关方建立和管理战略关系,还将与政策、法律、营销、公关和运营部门跨职能合作,以优化新功能,改善用户体验并确保Facebook的合作伙伴取得成功。[2019/5/31]

现在的问题在于,每个将军都分散在敌国四周,只能依靠通信兵骑马相互通信,确定进攻的时间,可是一方面通讯兵可能会在送信过程中被敌方击杀,另一方面根据不可靠消息,在这些将军中有叛徒的存在,叛徒可能会擅自变更进攻意向或者进攻时间,从而向其他将军传达虚假指令,影响他人判断。如果整个分布式网络相当于拜占庭帝国,而每个节点相当于里面的将军,那么在这种状态下,该怎么做才能保证网络中的全部节点对于某个事情达成一致?这就是拜占庭将军问题。

所以简单来说,拜占庭将军描述的是,分布式网络会面临的两个问题:1)如何解决各个节点之间的同步问题。比如在没有叛徒情况下,将军A向其他将军传递进攻方案时,可能将军B也在传递进攻方案。2)如何解决恶意节点,故意发送错误信息干扰网络的运行的问题。比如在有叛徒情况下,叛徒会向不同的将军发出不同的进攻提议,干扰其他将军们达成一致。后来大家发现,想要在分布式网络中,让每一个节点都不出错是不可能的,于是就有人提出了“拜占庭容错”的观点来解决拜占庭将军的问题,这个解决办法就是信息的伪造或错误并不重要,只要诚实的将军数量大于总数的三分之二,即使有少部分不诚实的将军存在,整个系统也可以达成一致。

于是大家以此为基础,设计出了很多解决方案。区块链四大核心技术中的共识机制,就是为了解决这个问题,而诞生的一个方案,至于具体是如何解决的,请容小K君卖个关子,我们下节课再说。

感谢响马老师对本集内容的帮助和指导。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

地球链

[0:15ms0-0:753ms