美文网首页
区块链——拜占庭将军

区块链——拜占庭将军

作者: 柒柒猫1343 | 来源:发表于2018-06-24 19:40 被阅读0次

    区块链是一门新的领域,任何领域上都有属于他的专属学科,那么想要把这一门知识学好,学精你需要一点一点去发现,去学习。上周我们提到POW机制,这周我们来谈谈拜占庭将军。

    但凡关于区块链和比特币的书籍,都会围绕着一个恒古不变的话题,拜占庭将军问题。那么什么是拜占庭将军问题呢?如果你在百度上一搜索,很多很多就出来了,还有很多区块链大神,甚至把拜占庭将军问题写成了,一篇非常科学,带有计算性质的论文。

    何为拜占庭将军?

    拜占庭,现在位于土耳其。古代,是东罗马帝国的首都。那个时候,国土面积十分辽阔,为了防御和管理,每支军队都会隔得很远,将军之间只能靠信差,古时候就有一个专门骑着马,送信的人,靠着他们来传递信息。在战争年代,拜占庭军队内所有的将军和副官们,必须达成一个共识。是否,去攻打一个敌人的阵营,进或者退,都必须达成统一的共识。而这些共识,往往是将军和副官们做的决定,他不代表着所有人的决定,有些士兵,他就会觉得这个共识不是他想要的。那么他就可能会背叛整个军队,出现,谋反的情况。那么在军队已经知道有叛徒存在的情况下,如何让剩下的士兵们在不受到叛徒的,劝说影响下仍然,达成一致的共识,这就是著名的拜占庭将军问题。

    如何解决拜占庭将军问题?

    既然有了问题,当然就要去解决这个问题。那么在古代,一个技术匮乏的年代,他们是怎么解决这个问题的呢?现代人又是怎么解决这个问题的呢?

    口头传达消息,口头确认消息——书面协议——区块链技术。

    口头传达消息,口头确认消息:

    假设有3个将军A,B,C,将军A分别派2个人去通知B和C,x月x日向敌方阵营发出攻击,同时B和C两位将军也会派自己的人向其他两位将军发出通知攻击,但是由于路途遥远,时间就很有可能会错开。并且口头的传送消息,消息的可信度,无法确认,且消息的传达就会出现没完没了的循环,造成还没到敌方阵营就先被自家的消息确认弄晕的局面。

    书面协议:

    口头传达这个方法既然行不通那就换个方法呗,用信件的模式,派各自的信差去给另外的将军们送信,并且要保证每个将军们在信件上印好他们的章,确认章都盖好的情况下再出兵进攻敌方。依旧很麻烦,在今天也就是个电话加互联网的操作,5分钟搞定。

    区块链:

    大家都知道区块链是一个信任的技术,同时区块链中最主要的交易就是达成“共识”,这也是拜占庭将军的核心问题。让将军们在接到上一位将军的信息之后,加上自己的签名再转发给除自己之外的其他将军。在这样的信息连环周转中,将军们可以在不找出叛徒的情况下达成共识,从而保证得到的信息和作出的决策是正确的。当某位将军发出确认信息之后,收到消息的将军必须签名盖章,以验证自己的身份。这里运用了一种非对称加密技术为这个信息签名。

    相关文章

      网友评论

          本文标题:区块链——拜占庭将军

          本文链接:https://www.haomeiwen.com/subject/jeysyftx.html