提起区块链,大家似乎感觉这项技术很神秘。今天从技术的角度剖析一下区块链的分布式一致性问题,很多研究人员称此问题为分布式领域的幽灵,也就是大家常常听到的拜占庭将军问题。
拜占庭将军问题是LeslieLamport提出的针对分布式对等网络中的通信容错问题。
LeslieLamport在其论文TheByzantineGeneralsProblem中以一个示例形象的描述了此问题:一组拜占庭将军分别各率领一支军队共同围困一座城市。为了简化问题,各支军队的行动策略仅限定为进攻或撤离两种。因为部分军队进攻、部分军队撤离可能会造成灾难性后果,因此各位将军必须通过投票来达成一致策略,即所有军队一起进攻或所有军队一起撤离。因为各位将军分别处于城市不同方向,他们只能通过信使互相联系。在投票过程中每位将军都将自己投票给进攻还是撤退的信息通过信使分别通知其他所有将军,从而,每位将军根据自己的投票和其他所有将军送来的信息就可以知道共同的投票结果而决定行动策略。
分布式存储和计算平台Hive完成700万欧元融资,Global Ventures参投:金色财经消息,分布式存储和计算平台Hive宣布完成了一笔700万欧元的种子轮融资,本轮融资由Global Ventures、One Ragtime等参投,天使投资人包括汤森路透前首席执行官兼摩根士丹利首席董事TomGlocer、Finan zcheck.de创始人Moritz Thiele、OSI Digital首席执行官Kumar Yamani等。
Hive由法国工程师、创业家David Gurle创立,其推出的点对点网络Hivenet可以解决Web3云存储和计算高成本、低安全性等问题,Hive网络能够汇集所有可用计算和存储资源,然后根据需求进行分配,用户将根据对计算资源所做的贡献获得Token激励,继而解决Web3时代日益增长的计算需求。[2022/6/4 4:02:10]
用通信术语描述拜占庭将军问题:可靠的计算机系统必须处理有故障的组件,这些组件的引入可能与系统其它部分信息冲突。根本不发送任何消息,向不同的邻居发送不同且错误的消息,以及谎报自己的输入值。一个可靠的计算机系统必须能够处理一个或多个组件的失败。失败的组件出现被忽略的行为,向系统的其他部分发送不一致的信息。
分布式存储项目Filecoin公布代币经济模型细节:分布式存储项目Filecoin(FIL)正式发布了一份长达32页的Filecoin经济报告,详细阐述了代币经济模型设计的原理和细则。按照Filecoin代币分配细则,Filecoin代币总量为20亿枚,5%分配给Filecoin基金会,10%用于融资,15%分配给协议实验室,70%分配给矿工。代币总量的15%(占矿工奖励的21.4%)将被作为挖矿储备金,以在未来激励检索矿工和其他类型的矿工,具体使用方式以后由社区通过Filecoin改进提案(FIP)共同决定。Filecoin网络引入了区块奖励基准铸造的概念,通过估算网络效用发放代币,改变了纯粹地基于时间的推移来铸造代币的传统方法。Filecoin团队还表示,未来可能推出维修矿工、应用矿工、Filecoin借贷和通用智能合约等新功能。此前曾报道,Filecoin主网启动时间为9月中下旬,预计将在9月下旬发放FIL代币。[2020/8/28]
在分布式计算中,不同的计算交换通讯信息从而达成共识并按照同一套协作策略行动。但有时,系统中的成员计算机可能因出错而发送错误的信息,用于传递信息的通讯网络也可能导致信息损坏,使得网络中不同的成员关于全体协作的策略得出不同结论,从而破坏系统一致性。
BitCherry CEO:疫情后以区块链为底层的分布式系统将成为新的商业应用模式:对于受疫情影响,国际经济形式将会迎来哪些转变,BitCherry创始人兼CEO Paul表示,面对新冠肺炎作为导火索带来的全球性经济灾难,所带来的不仅仅是危险,更多的是机会。各国相继封城、拒绝入境、商场关门、消费停滞,商业社会或将借此机会迎来新的消费形态,并进一步向分布式商业时代跨进。在分布式商业模式下,所有关系都将被重新定义,疫后全球大量商业企业都将面临现金流断裂、用工成本高及消费者信心不足等问题,而以区块链技术作为底层的分布式协作系统必然是未来各种组织系统的基础,BitCherry作为分布式商业公链,以基于IPv8技术开发的专注服务于分布式商业的可扩容区块链基础设施,将为全球商业提供高性能、高安全、高可用的底层技术支持,为商业带来更多发展机遇。[2020/3/19]
拜占庭将军问题是存在前提假设条件的,在消息丢失的不可靠信道上试图通过消息传递的方式达到一致性是不可能的,因此对一致性的研究一般假设是建立在信道是可靠的这个前提下。拜占庭将军问题的核心是允许存在少数节点作恶的情况下如何达成共识的问题。
动态 | Gemalto与R3合作推出分布式数字身份证管理方法:据Newsbtc消息,荷兰数字安全公司Gemalto与区块链技术公司R3合作推出了分布式数字身份证管理方法,以解决传统身份系统的繁琐问题。[2018/9/19]
拜占庭将军问题实际上是如何让一个分布式系统的保持一致性和在特定条件下保持正确性的问题。可抽象为满足以下2个条件的算法:
条件IC1.所有忠诚的将军得出相同的作战指令,并且按指令执行,保持指令的一致性。
条件IC2.如果作战指令是忠诚的将军发出的,所有忠诚的将军会遵循该将军发出的作战指令,特定条件下的正确性。
LeslieLamport论文里TheByzantineGeneralsProblem提到了OralMessages和Signedmessages两个解决方案,其算法如下:
1、OM(m)口头协议算法
结论:如果有m个叛军,必须至少有3m+1位将军才能保证口头协议算法能解“拜占庭将军问题”。
前提假设:
A1.每个被发送的消息都能够被正确的投递
A2.信息接收者知道是谁发送的消息
A3.能够知道缺少的消息(如果叛军不配合发送消息,算法默认一个值“撤退”的来替代)
证明过程:
https://www.microsoft.com/en-us/research/uploads/prod/2016/12/The-Byzantine-Generals.pdf
2、SM签名协议算法
结论:在不管有多少叛军的情况下,都能让忠诚的将军们保持一致的行动
前提假设:
A1.每个被发送的消息都能够被正确的投递
A2.信息接收者知道是谁发送的消息
A3.能够知道缺少的消息(如果叛军不配合发送消息,算法默认一个值“撤退”的来替代)
A4.1签名不可被伪造,一旦被篡改即可发现
A4.2任何人都可以验证将军签名的可靠性
证明过程:
https://www.microsoft.com/en-us/research/uploads/prod/2016/12/The-Byzantine-Generals.pdf
读者如果想对分布式算法深入解析,如Paxos、Pow、BFT,推荐区块链核心算法一书,文中有部分值得深入研读的参考文献。
参考文献:
TheByzantineGeneralsProblem.LESLIELAMPORT,ROBERTSHOSTAK,andMARSHALLPEASESRIInternational
区块链核心算法解析.RogerWattenhofer
参考链接
TheByzantineGeneralsProblem
同步链接:
https://www.microsoft.com/en-us/research/uploads/prod/2016/12/The-Byzantine-Generals.pdf
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。