作者|?YuLiebing
责编|Carol
出品|区块链大本营
拜占庭将军问题(TheByzantineGeneralsProblem)提供了对分布式共识问题的一种情景化描述,由LeslieLamport等人在1982年首次发表。论文《TheByzantineGeneralsProblem》同时提供了两种解决拜占庭将军问题的算法:
口信消息型解决方案(Asolutionwithoralmessage);
签名消息型解决方案(Asolutionwithsignedmessage).
论文:
https://www-inst.eecs.berkeley.edu/~cs162/sp16/static/readings/Original_Byzantine.pdf
本文之后将详细讲述这两种算法。事实上,拜占庭将军问题是分布式系统领域最复杂的容错模型,?它描述了如何在存在恶意行为(如消息篡改或伪造)的情况下使分布式系统达成一致。是我们理解分布式一致性协议和算法的重要基础。
Web3风投公司Rockaway更名为RockawayX:11月4日消息,Web3风险投资公司Rockaway Blockchain Fund宣布更名为RockawayX。更名为RockawayX之前,该公司已将员工人数增加到 30 多名技术专家、科学家和工程师,分布在三个部门——风险投资、工程和流动性领域,管理的总资产约为 5 亿美元。
自2018年以来,Rockaway在Solana、Cosmos 和 Ethereum 生态系统中投资了38 个早期项目,以及 27 个 Web3 行业最著名的基金,包括a16z、Multicoin Capital、CoinFund 等。其首个基金Rockaway Blockchain Fund l超过 80% 的资金现已通过直接股权、代币和基金投资进行部署。[2022/11/5 12:18:38]
拜占庭将军问题描述
拜占庭将军问题描述了这样一个场景:
图1.拜占庭将军问题
拜占庭帝国(ByzantineEmpire)军队的几个师驻扎在敌城外,每个师都由各自的将军指挥。将军们只能通过信使相互沟通。在观察敌情之后,他们必须制定一个共同的行动计划,如进攻(Attack)或者撤退(Retreat),且只有当半数以上的将军共同发起进攻时才能取得胜利。然而,其中一些将军可能是叛徒,试图阻止忠诚的将军达成一致的行动计划。?更糟糕的是,负责消息传递的信使也可能是叛徒,他们可能篡改或伪造消息,也可能使得消息丢失。
VR游戏初创公司ForeVR Games获得1000万美元A轮融资:金色财经报道,ForeVR今天宣布了1000万美元的A轮融资,Lobby Capital领投A轮融资,Bessemer Venture Partners和Galaxy Interactive参投。新的资本使该公司的融资总额达到1850万美元。天使投资人包括Zynga的创始人Mark Pincus,以及Twitch的创始人Emmett Shear和Justin Kan。该资金将用于建立其游戏组合和巩固自己作为 \"VR的Wii Sports \"的地位。
ForeVR游戏可以在Meta Quest或Meta Quest 2上进行单人或多人游戏。
该公司将于11月17日推出其第四款产品ForeVR Pool,这是一款适合所有年龄段的虚拟现实8球台球游戏。它将在Meta Quest商店以20美元的价格出售。(techcrunch)[2022/10/28 11:50:36]
为了更加深入的理解拜占庭将军问题,我们以三将军问题为例进行说明。当三个将军都忠诚时,可以通过投票确定一致的行动方案,图2展示了一种场景,?即GeneralA,B通过观察敌军军情并结合自身情况判断可以发起攻击,而GeneralC通过观察敌军军情并结合自身情况判断应当撤退。?最终三个将军经过投票表决得到结果为进攻:撤退=2:1,?所以将一同发起进攻取得胜利。对于三个将军,每个将军都能执行两种决策(进攻或撤退)的情况下,共存在6中不同的场景,图2是其中一种,对于其他5中场景可简单地推得,通过投票三个将军都将达成一致的行动计划。
食品巨头卡夫为其标志性“热狗车”Weinermobile申请NFT商标:金色财经报道,据商标律师Mike Kondoudis在社交媒体上透露,食品巨头卡夫(Kraft Foods)已为其标志性的“热狗车”Weinermobile申请了NFT和元宇宙商标。根据美国专利商标局披露的申请信息显示,卡夫食品公司将提供虚拟食品和饮料产品、NFT、以及基于实体和虚拟实物的线上元宇宙餐厅。此前卡夫食品公司还提交了“Kraft”、“Jell-O”、“Kool-Aid”、“Velveeta”、“Lunchables”、“Oscar Mayer”和“Philadelphia”等元宇宙和NFT商标申请。[2022/10/21 16:34:12]
图2.三个将军均为忠诚的场景
当三个将军中存在一个叛徒时,将可能扰乱正常的作战计划。图3展示了GeneralC为叛徒的一种场景,他给GeneralA和GeneralB发送了不同的消息,在这种场景下GeneralA通过投票得到进攻:撤退=1:2,最终将作出撤退的行动计划;GeneralB通过投票得到进攻:撤退=2:1,最终将作出进攻的行动计划。结果只有GeneralB发起了进攻并战败。
非洲区块链市场2022 H1获得超3亿美元投资:金色财经报道,2022年上半年,非洲的区块链公司共获得了 3.04 亿美元的投资资金。此外,以加密货币为中心的支付也在增长,在 2020 年 7 月至 2021 年 6 月期间飙升了 1,200%。南非标准银行区块链 COE 负责人Ian Putter表示,肯尼亚、尼日利亚和加纳已经看到加密资产的迅速普及,以访问由区块链网络提供的更有效的支付路径,并通过与美元价值挂钩的比特币或稳定币等资产产生收入回报。此外,网络攻击在今年第二季度在非洲显着上升,共检测到 10,722,886 次网络钓鱼攻击。(thisdaylive)[2022/8/8 12:09:17]
图3.二忠一叛的场景
事实上,对于三个将军中存在一个叛徒的场景,想要总能达到一致的行动方案是不可能的。详细的证明可参看LeslieLamport的论文。此外,论文中给出了一个更加普适的结论:如果存在m个叛将,那么至少需要3m+1个将军,才能最终达到一致的行动方案。
解决方案
LeslieLamport在论文中给出了两种拜占庭将军问题的解决方案,即口信消息型解决方案(Asolutionwithoralmessage)和签名消息型解决方案(Asolutionwithsignedmessage)。
俄罗斯最古老的监狱中发现了加密矿场:金色财经消息,建于1771年位于莫斯科中部Tverskoy区的Butyrskaya(也称Butyrka)监狱的一名官员正在接受调查,原因是他可能滥用职权建立了一个加密矿场,矿机是在监狱的精神病诊所发现的,到目前为止,调查人员已经确定,该官员及其尚未确定身份的同伙于2021年11月安装了矿机。这些矿机一直在提取加密货币,直到今年2月。(news.bitcoin)[2022/5/23 3:34:56]
1、口信消息型解决方案
首先,对于口信消息(Oralmessage)的定义如下:
A1.任何已经发送的消息都将被正确传达;
A2.消息的接收者知道是谁发送了消息;
A3.消息的缺席可以被检测。
基于口信消息的定义,我们可以知,?口信消息不能被篡改但是可以被伪造。基于对图3场景的推导,我们知道存在一个叛将时,必须再增加3个忠将才能达到最终的行动一致。为加深理解,我们将利用3个忠将1个叛将的场景对口信消息型解决方案进行推导。在口信消息型解决方案中,首先发送消息的将军称为指挥官,其余将军称为副官。对于3忠1叛的场景需要进行两轮作战信息协商,如果没有收到作战信息那么默认撤退。图4是指挥官为忠将的场景,在第一轮作战信息协商中,指挥官向3位副官发送了进攻的消息;在第二轮中,三位副官再次进行作战信息协商,由于GeneralA、B为忠将,因此他们根据指挥官的消息向另外两位副官发送了进攻的消息,而GeneralC为叛将,为了扰乱作战计划,他向另外两位副官发送了撤退的消息。最终CommandingGeneral,GeneralA和B达成了一致的进攻计划,可以取得胜利。
图4.指挥官为忠将的场景
图5是指挥官为叛将的场景,在第一轮作战信息协商中,指挥官向GeneralA、B发送了撤退的消息,但是为了扰乱GeneralC的决定向其发送了进攻的消息。在第二轮中,由于所有副官均为忠将,因此都将来自指挥官的消息正确地发送给其余两位副官。最终所有忠将都能达成一致撤退的计划。
图5.指挥官为叛将的场景
如上所述,对于口信消息型拜占庭将军问题,如果叛将人数为m,将军人数不少于3m+1,那么最终能达成一致的行动计划。值的注意的是,在这个算法中,叛将人数m是已知的,且叛将人数m决定了递归的次数,即叛将数m决定了进行作战信息协商的轮数,如果存在m个叛将,则需要进行m+1轮作战信息协商。这也是上述存在1个叛将时需要进行两轮作战信息协商的原因。
2、签名消息型解决方案
同样,对签名消息的定义是在口信消息定义的基础上增加了如下两条:
A4.忠诚将军的签名无法伪造,而且对他签名消息的内容进行任何更改都会被发现;
A5.任何人都能验证将军签名的真伪。
基于签名消息的定义,我们可以知道,签名消息无法被伪造或者篡改。为了深入理解签名消息型解决方案,我们同样以3三将军问题为例进行推导。?图6是忠将率先发起作战协商的场景,GeneralA率先向GeneralB、C发送了进攻消息,一旦叛将GeneralC篡改了来自GeneralA的消息,那么GeneralB将将发现作战信息被GeneralC篡改,GeneralB将执行GeneralA发送的消息。
图6.忠将率先发起作战协商
图7是叛将率先发起作战协商的场景,叛将GeneralC率先发送了误导的作战信息,那么GeneralA、B将发现GeneralC发送的作战信息不一致,因此判定其为叛将。可对其进行处理后再进行作战信息协商。
图7.叛将率先发起作战协商
签名消息型解决方案可以处理任何数量叛将的场景。
总结
在分布式系统领域,拜占庭将军问题中的角色与计算机世界的对应关系如下:
将军,对应计算机节点;
忠诚的将军,对应运行良好的计算机节点;
叛变的将军,被非法控制的计算机节点;
信使被杀,通信故障使得消息丢失;
信使被间谍替换,通信被攻击,攻击者篡改或伪造信息。
如上文所述,拜占庭将军问题提供了对分布式共识问题的一种情景化描述,是分布式系统领域最复杂的模型。此外,它也为我们理解和分类现有的众多分布式一致性协议和算法提供了框架。现有的分布式一致性协议和算法主要可分为两类:
一类是故障容错算法(CrashFaultTolerance,CFT),?即非拜占庭容错算法,解决的是分布式系统中存在故障,但不存在恶意攻击的场景下的共识问题。也就是说,在该场景下可能存在消息丢失,消息重复,但不存在消息被篡改或伪造的场景。一般用于局域网场景下的分布式系统,如分布式数据库。属于此类的常见算法有Paxos算法、Raft算法,、ZAB协议等。
一类是拜占庭容错算法,可以解决分布式系统中既存在故障,又存在恶意攻击场景下的共识问题。一般用于互联网场景下的分布式系统,如在数字货币的区块链技术中。属于此类的常见算法有PBFT算法、PoW算法。
看完本文,你对这两种解决方案有什么看法?欢迎在评论区跟我们讨论!
1、谁也没有料想到,期待已久的减半行情,竟然成了庄家操纵市场的利器,而庄家操纵市场目前已经有很顺手的工具:合约.
1900/1/1 0:00:00“MOV成,BTM必成”。作为基于Bystack主侧链架构的下一代去中心跨链Layer2价值交换协议,MOV在2019年11月25日上线测试网.
1900/1/1 0:00:00孙宇晨VSSteem社区是上周行业内讨论度最高的话题。2月14日,孙宇晨完成了对Steemit的收购.
1900/1/1 0:00:00今年是2008年。次级抵押贷款刚刚开始产生连锁反应,这将在全球经济中引发冲击波,造成历史上最严重的衰退.
1900/1/1 0:00:00eToro分析师NemoQin认为从长远来看中国的央行数字货币不会对加密市场造成影响。 NewBest分析师:波场官方支持的DZI暴跌万倍,JustSwap急缺安全和有现金流支撑的DeFi项目:.
1900/1/1 0:00:00来源:互链脉搏,原题《互链月报|2月全球区块链相关政策发布量下降广东山东扶持力度大》作者:金走车未经授权,不得转载!2月份,全球区块链相关政策发布数量有所下降.
1900/1/1 0:00:00