虚拟货币拜占廷将军问题
Ⅰ 拜占庭将军问题确保系统正常为什么需要2k+1个正常节点
地域虽然沦陷了,但是本地居民基本上还是那些人,他们的宗教信仰不会变的,就像耶路撒冷,不管被什么人占着,他都是圣城,基督、伊斯兰、犹太人心中的圣城
Ⅱ 数字货币双花 拜占庭将军是什么意思
拜占庭将军问题在我看来是提出了一个错误模型。即错误节点可以做任意事情(不受protocol限制),比如不响应、发送错误信息、对不同节点发送不同决定、不同错误节点联合起来干坏事等等。总之就是说,没有节点会出现比这更严重的错误。
很显然,拜占庭错误是overly
pessimistic的模型,因为这种错误实际环境中比较少见。那么为什么要研究这个模型呢看其中最简单的一个原因是,如果某个一致性算法能够保证在系统出现f个拜占庭错误时保持系统一致,那么这个算法也就能够保证在出现f个任意其他错误的时候也保持系统一致。
错误模型有上限,肯定也就有一个下限(overly
optimistic,没有比它还要弱的模型)。这个下限就是‘fail-stop’模型。这个模型的假设是:当一个节点出错,这个节点会停止运行,并且其他所有节点都知道这个节点发生了错误。用同样的逻辑,如果某个一致性算法不能保证在系统出现f个错误的时候保持一致,那么这个算法也就没法处理其他f个任意其他问题。
应用这些错误模型,可以对不同算法进行比较,也可以对具体算法的cost进行讨论。
Ⅲ 如何理解拜占庭将军问题
拜占庭将军问题,其实看似一个军事问题,实质上是一个政治问题,这也算是涉及到拜占庭的地缘政治问题吧,在国际上也算是热点问题。
Ⅳ 理论上区块链怎么解决拜占庭将军问题
拜占庭将军问题(以下简称“共识问题”)的正式表述是:如何在一个不基于信任的分布式网络中就信息达成共识?这个表述听起来有些晦涩,但其本质并不复杂,下面的例子与共识问题虽然并不完全一致,但却有助于我们的理解[9]。
想象一下在遥远的拜占庭时代,有一个富饶的城邦,金银珠宝绫罗绸缎应有尽有,它的领主哆啦A梦独享着这一切奢华与荣耀。而在城邦的外围,四位拜占庭将军大雄、胖虎、小夫和静香都觊觎着哆啦A梦的财富,于是他们决定联手攻占哆啦A梦的城邦。根据双方的实力对比,必须有超过半数的将军同时发起进攻方能克敌制胜,因此获胜条件就是四人中至少三个人可以就进攻时间达成一致。那么四位将军的胜算有多少呢?
这个问题的答案就要取决于四个人的合作方式了,如果是集中式系统,有一个盟主,比如胖虎(相当于中央服务器),那么他们的胜利是毫无悬念的,因为就进攻时间达成一致非常简单,只要胖虎召集大雄、小夫和静香开个会讨论一下就可以了,即使大家意见有分歧胖虎也可以在最后予以定夺。下面让我们回到拜占庭将军问题的假设里,在不基于信任的分布式网络中,四位将军的胜算又如何呢?
?
首先由于四位将军之间缺乏信任,因此聚到小黑屋里开个密谋会的可能性被排除了(一旦在小黑屋里被胖虎绑架了怎么办?);其次由于没有盟主,四个人的意见都会被同等的看重。在这种情况下,四位将军只能通过信使在各自营地之间传递消息,来商定进攻时间了。比如大雄觉得早上6点是发动进攻的好时机,他就会派信使将自己的意见告诉胖虎、小夫和静香,与此同时,胖虎可能认为晚上9点发动突袭更好,小夫更喜欢下午3点出击,而静香希望是上午10点,他们三人也会在同一时间派出自己的信使。这样一来,在第一轮通信结束后,四位将军每个人都有了四个可供选择的进攻时间,他们各自要在下一轮通信中把自己选定的时间告知另外三人。由于四个人的决策都是独立做出的,因此最终的选择结果就有256种可能,而只有当三人以上都恰好选择了同一时间的时候,共识才被达成,而这样的结果才64种,也就是说达成共识的概率仅为1/4。这还只是四位将军的情况,如果将军的人数是10人,100人,1000人呢?我们稍加计算就可以发现随着人数的增加,达成共识的希望会变得越来越渺茫。
把上面例子中的将军换成计算机网络中的节点,把信使换成节点之间的通信,把进攻时间换成需要达成共识的信息,你就可以理解共识问题所描述的困境了。达成共识的能力对于一个支付系统来说重要性不言而喻,如果你给家里汇了一笔钱买车,第二天去银行核实的时候柜台告诉你“关于你汇了多少钱的问题,我们的系统里有三个版本的记录”,这样的银行你显然是不敢把钱存进去的。在比特币出现之前共识问题是很难被完美解决的,要保证达成共识就需要采用集中式系统(除非节点满足特定条件),要想去中心化共识就无法保证。那么区块链技术又是如何解决这一难题的呢?(关注公众号weoption,回复“区块链”,可查看全文。)
Ⅳ 拜占庭将军问题 口头协议算法是怎么推导出来的
我也是额,老是卡,而且不止第一集,后面两集也是,放一会时间就会卡一下,就像定格了一样
Ⅵ 区块链共识机制,拜占庭将军问题是什么
POW完全依靠用经济激励的方式来大量增加记账参与者, 从而稀释作恶节点的比例, 或者说大幅增加作恶的成本, 做假账者需要控制或者贿赂更多的节点。这是一种简单粗暴的共识机制, 在算法上没有优化过,但是又非常可行, 现在体量最大的两条区块链, 比特币和以太坊都是用POW挖矿的方式。
POW虽然不是最优,但是现在最最切实可行的共识算法。例如比特币、莱特币、DECENT都是采用的POW证明机制。
Ⅶ 如何理解拜占庭将军问题
关于拜占庭将军问题,一个简易的非正式描述如下:
拜占庭帝国想要进攻一个强大的敌人,为此派出了10支军队去包围这个敌人。
这个敌人虽不比拜占庭帝国,但也足以抵御5支常规拜占庭军队的同时袭击。
基于一些原因,这10支军队不能集合在一起单点突破,必须在分开的包围状态下同时攻击。
他们任一支军队单独进攻都毫无胜算,除非有至少6支军队同时袭击才能攻下敌国。
他们分散在敌国的四周,依靠通信兵相互通信来协商进攻意向及进攻时间。
困扰这些将军的问题是,他们不确定他们中是否有叛徒,叛徒可能擅自变更进攻意向或者进攻时间。
在这种状态下,拜占庭将军们能否找到一种分布式的协议来让他们能够远程协商,从而赢取战斗 。
这就是著名的拜占庭将军问题。
应该明确的是,拜占庭将军问题中并不去考虑通信兵是否会被截获或无法传达信息等问题,即消息传递的信道绝无问。
Lamport已经证明了在消息可能丢失的不可靠信道上试通过消息传递的方式达到一致性是不可能的。
所以,在研究拜占庭将军问题的时候,已经假定了信道是没有问题的,并在这个前提下,去做一致性和容错性相关研究。
Ⅷ 拜占庭将军问题的失效
所谓拜占庭失效指一方向另一方发送消息,另一方没有收到,发送方也无法确认消息确实丢失的情形。
在容错的分布式计算中,拜占庭失效可以是分布式系统中算法执行过程中的任意一个错误。这些错误被统称为“崩溃失效”和“发送与遗漏式失效”。当拜占庭失效发生时,系统可能会做出任何不可预料的反应。
这些任意的失效可以粗略地分成以下几类:
进行算法的另一步时失效,即崩溃失效;
无法正确执行算法的一个步骤;
执行了任意一个非算法指定的步骤
各个步骤由各进程执行,算法就是由这些进程执行的。一个错误的进程是在某个点出现了上述情况的进程。没有出现错误的进程是正确的进程。
Ⅸ 这是一个用甲乙丙丁表示的共识问题,不存在拜占庭将军问题
A: Test...
Ⅹ 拜占庭将军问题的起源
拜占庭位于如今的土耳其的伊斯坦布尔,是东罗马帝国的首都。由于当时拜占庭罗马帝国国土辽阔,为了防御目的,因此每个军队都分隔很远,将军与将军之间只能靠信差传消息。 在战争的时候,拜占庭军队内所有将军和副官必需达成一致的共识,决定是否有赢的机会才去攻打敌人的阵营。但是,在军队内有可能存有叛徒和敌军的间谍,左右将军们的决定又扰乱整体军队的秩序。在进行共识时,结果并不代表大多数人的意见。这时候,在已知有成员谋反的情况下,其余忠诚的将军在不受叛徒的影响下如何达成一致的协议,拜占庭问题就此形成。