虛擬貨幣拜占廷將軍問題
Ⅰ 拜占庭將軍問題確保系統正常為什麼需要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...
Ⅹ 拜占庭將軍問題的起源
拜占庭位於如今的土耳其的伊斯坦布爾,是東羅馬帝國的首都。由於當時拜占庭羅馬帝國國土遼闊,為了防禦目的,因此每個軍隊都分隔很遠,將軍與將軍之間只能靠信差傳消息。 在戰爭的時候,拜占庭軍隊內所有將軍和副官必需達成一致的共識,決定是否有贏的機會才去攻打敵人的陣營。但是,在軍隊內有可能存有叛徒和敵軍的間諜,左右將軍們的決定又擾亂整體軍隊的秩序。在進行共識時,結果並不代表大多數人的意見。這時候,在已知有成員謀反的情況下,其餘忠誠的將軍在不受叛徒的影響下如何達成一致的協議,拜占庭問題就此形成。