什么是拜占庭将军问题? 拜占庭将军问题由Leslie Lamport于1982年提出。Leslie Lamport是微软研究院的首席研究员。曾获得2013年图灵奖—计算机界的诺贝尔奖。Leslie Lamport有一个特点,他认为用故事来引出理论比较受大家欢迎。因此他在提出观点和问题时常用故事来吸引大家的眼球。拜占庭将军的故事就是Leslie Lamport在研究分布式系统容错时编出的一个故事。 拜占庭帝国是5~15世纪的东罗马帝国,也就是现在的土耳其。拜占庭城邦拥有巨大的财富,它的十个领邦垂涎已久。但拜占庭高墙耸立,固若金汤,没有一个单独领邦可以成功侵入。除非所有领邦一半以上同时进攻,才能攻破。但是这就引发很多问题,比如说其中一个或多个领邦发生背叛,或者有卧底从中捣乱的话,就会导致进攻失败。参与进攻的国家也会因此遭殃。这就是拜占庭将军问题。 拜占庭将军问题归根结底就是要解决两个问题: 第一:怎样防止叛军冒充忠诚的将军发布军令? 第二:怎样保证忠诚将军的军令是保持一致的? 自从拜占庭将军问题被提出,几十年来,科学家提出了很多解决方案,比如说口头协议、书面协议等等。但都存在各种各样局限性。 2008年诞生的比特币却完美的解决了拜占庭将军问题。在区块链当中,拜占庭的将军们被抽象成一个一个用户节点。将军们传播的军令抽象成交易信息。那么相应的拜占庭将军问题就转换成了两个问题。 第一:怎样防止恶意节点冒充诚实节点; 第二怎样保证所有节点记录的交易信息一致性。 对于第一个问题,中本聪使用了非对称加密技术,每一个交易信息都是由发送者使用私钥进行签名。比如说“进攻=A将军”这样,然后传播到其他各个节点,因为恶意节点无法获取发送者的私钥,也就无法对交易信息进行篡改,因此就保证了交易信息的可靠性。 对于第二个问题,为了保证所有节点的交易信息都是一致的,中本聪规定每隔10分钟打包一次交易信息。但是由于节点都有权力打包交易信息,以谁的数据为准?中本聪从Hashcash当中获取了灵感。就是以工作量做的最多的节点打包的数据为准。这样所有节点都只承认工作量最多的节点的数据。这样就可以保证所有节点记录的交易信息的一致性。但这里有一个前提条件,就是恶意节点的算力占全部节点算力的比例要小于50%,不然就会导致我们平常所说的51%攻击。 这样区块链就完美的解决的拜占庭将军问题。 —- 编译者/作者:超节点区块链SSS 玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。 |
拜占庭将军问题—如何在不信任的环境下达成共识
2019-12-13 超节点区块链SSS 来源:区块链网络
LOADING...
相关阅读:
- Filecoin挖矿指南之设备性能对证明计算的影响2020-08-01
- Filecoin挖矿指南之系统的证明机制2020-08-01
- 金色算力云超级群主争霸帖2020-08-01
- 浩瀚读币:科普挖矿衍生品怎么玩?2020-08-01
- 全网首创,Pre-Burn挖矿2020-07-31