拜占庭将军与区块链有啥关系?

每一本讲区块链技术的书籍,几乎都会讲到拜占庭将军问题,看到这个词语时,我曾经一度认为有一位名叫拜占庭的将军带领着一支庞大的军队打仗时遇到了难题,但查阅了一些资料后,发现实际上并没有拜占庭将军,也没有这场战争,完全是计算机专家假想出的问题。

1)拜占庭帝国

拜占庭这个专有名词取自于拜占庭帝国,又叫东罗马帝国,其军事力量很强大,地处现今欧洲的土耳其国家。

(取自百度百科)

在《区块链----从数字货币到信用社会》中关于拜占庭将军问题的描述有点小错误,书中把问题描述成10个邻国去攻打拜占庭国家,但查到这个问题的提出者Leslie Lamport的论文原稿时,实际上这是一个假想的问题。

莱斯利·兰伯特(Leslie Lamport),是微软研究院的首席研究员,曾获得2013年图灵奖——计算机界的诺贝尔奖。这家伙觉得故事让问题变得受欢迎,因此他在提出观点和问题时常用故事背景吸引眼球,拜占庭将军的故事就是兰伯特在研究分布式系统容错性的时候编出的一个故事。

外国研究人员引用欧洲历史来举例说明一个算法问题,中国人容易误解,拜占庭幅员辽阔、军事力量强大,派出多支部队去攻打敌军,并不是挨打。

2)问题描述

论文中的原文:

We imagine that several divisions of the Byzantine army are camped outside an enemy city, each division commanded by its own general. The generals can communicate with one another only by messenger. After observing the enemy, they must decide upon a common plan of action. However, some of the generals may be traitors, trying to prevent the loyal generals from reaching agreement.

假设拜占庭帝国的几支军队在敌人的城池外扎营,每支军队听命于自己的将军,这些将军之间只能通过信使传递消息。在对敌军进行侦察后,将军们必须制订一份共同行动计划。但是,有些将军可能是叛徒,这些叛徒会阻碍那些忠诚的将军达成共识。

这个问题的简洁描述:在已知有间谍的分布式军队中,将军们如何达成共识,执行共同的作战计划,来取得战争的胜利。

3)问题的难点

这个问题困扰了程序员们很多年,直到比特币的出现。通常会遇到的问题有:

  • 这些将军离得很远,不能每遇到一个问题,就聚到一起开会商量对策
  • 这些将军中可能有少量叛徒,叛徒会乱发消息
  • 信使在传递消息时可能会把信弄丢
  • 信息可能会被敌国截获
  • 无法确认消息是否真的来自某位将军
  • 将军们在商量过程中可能会浪费很多天时间,贻误战机

4)区块链的解决方案

把军队想像成计算机节点,把信使想像成计算机间的网络通讯,攻占敌军就是写入一个大家公认的区块记录。

区块链技术在发送信息中加入了成本,降低了信息传递的速率,并采用了工作量证明(PoW),即一个节点必须经过大量尝试性计算才能得出一个结果,而其它节点只需极少的时间就能证明其真伪,这样能够减少垃圾消息、假消息在节点间传播的状况。

挖矿节点把一段时间内的交易信息打包成一个区块,盖上时间戳,与上一个区块衔接在一起,每个区块都包含了上一个区块的索引(哈希值),然后再写入新的信息,从而形成新的区块,首尾相连,最终形成了区块链。

用工作量证明、公钥加密等技术,使比特币网络从一个去中心化的不可信网络变为可信网络,使所有参与者可以在某些事情上达成一致,使价值传递成为了可能。

参考文献:

区块链生存训练的文章选读:

币圈有风险,入圈需谨慎。

币圈有风险,入圈需谨慎。

原文发布于微信公众号 - 申龙斌的程序人生(slbGTD)

原文发表时间:2017-07-09

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏区块链大本营

1分钟链圈 | 快看快看!首款基于EOS智能合约的博弈游戏发布!Canaan Creative推出比特币采矿电视机

这里是 8 月 3 日的每日1句话新闻晚报,只需1分钟,看看全球最热、最新的区块链新闻。

891

温柔地介绍比特币挖掘

最近在吃晚饭时,我被要求解释比特币挖掘,而我挣扎着,因为它与许多其他概念纠缠在一起。这是我的尝试,把它分解成一口大小的小块。

3709
来自专栏不止思考

从拜占庭将军问题看:区块链「 共识算法 」

而由于地域上特殊原因,你们这10支军队不能集合在一起单点进攻,必须在分开的状态下同时包围攻击敌国。如果是单支军队单独进攻的话是毫无胜算的,除非有至少有6支军队同...

1263
来自专栏Coco的专栏

区块链 PoW 与 PoS 的纷争

1523
来自专栏圆方圆学院精选

区块链主流共识算法

Proof Of Work,也就是工作量证明。工作量证明系统(或者说协议、函数),是一种应对拒绝服务攻击和其他服务滥用的经济对策。它要求发起者进行一定量的运算,...

1111
来自专栏圆方圆学院精选

【董天一】Filecoin: 影响力容错(PFT)和预期共识(EC)

这是filecoin协议里面对 PFT的解释,power概念就是矿工的影响力(influence),“Power”是filecoin系统的投票权力的大小度量,根...

1171
来自专栏Coco的专栏

区块链 PoW 与 PoS 的纷争

1083
来自专栏腾讯社交用户体验设计

随心而绘,春暖花开的童趣乐园 - 腾讯ISUX

1404
来自专栏CDA数据分析师

五分钟了解共识机制

“共识机制是区块链的灵魂。”这是业内经常能听到的一句话,共识机制在区块链中的地位可想而知。那么到底什么是共识机制呢?我们不妨从拜占庭将军问题说起。

1454
来自专栏乐享123

比特币史上的九大悲剧

1663

扫码关注云+社区