區塊鏈共識機制中,常見的一個名詞是——拜占庭將軍問題。小白每次試圖去理解它的時候,百度百科出來的每一個字都認識,但合在一起就覺得晦澀難懂,難以靜心看下去。
正是這個心路歷程讓我有了這篇寫作靈感,像小白一樣對它復雜的解釋繳械投降的人不在少數,想要全面了解區塊鏈,拜占庭將軍問題是一個繞不過的門檻,如果小白能通俗易懂的解釋拜占庭將軍問題,那豈不是為眾多小白謀福利。
哈哈。好,為了這個靈感,我看了二十幾篇關于拜占庭將軍問題的文章,終于有了一些能讓我自圓其說的認識。
播客主持人:當下的孩子們或許知道比特幣是什么:播客節目“Magic Internet Money”主持人Brad Mills發推稱:“我在萬圣節糖果盒里放了一些價值100美元的Rise Wallet比特幣卡,捕捉到了一些隨機的‘不給糖就搗蛋’的人發現它們的瞬間。‘嘿哥們,我發現了比特幣!’我想這些孩子們或許確實知道比特幣是什么。”[2020/11/1 11:22:05]
首先,明確一點,拜占庭將軍問題不是一個真實的故事,而是學者通過虛擬故事描述的分布式節點傳輸信息時如何保持數據的一致,即共識這個問題。
聲音 | 美國眾議院議員:沒有什么能力能夠“殺死”比特幣:美國眾議院議員Patrick McHenry接受采訪時表示,沒有什么能力能夠“殺死”比特幣。在被問到“你認為監管者或政客是否會允許出現比特幣、Libra這種跟法幣監管大相徑庭的新型貨幣?”McHenry回應道:“沒有什么能力能夠殺死比特幣,但是新的迭代將會試圖模仿比特幣,但同時又不夠去中心化,不夠開放,那么就會有不同的機制可能會致其于死地。”[2019/7/17]
拜占庭是真實存在的,拜占庭帝國又稱東羅馬帝國,是歐洲最悠久的君主制國家,軍事力量很強大。萊斯利蘭伯特,微軟研究院的首席研究員,用一個歷史上真實的國家虛擬一個故事,本意是想吸引眼球,讓更多的人對共識機制產生興趣,但誰知這個故事講的也挺復雜,也被演繹了好幾個版本,版本中共同的一點是:拜占庭式一個帝國,富有而遼闊的帝國,有10個部隊和10個將軍,要發動一場戰爭。接下來有兩個主要的版本。
聲音 | 趙長鵬:我不明白為什么黑客總向幣安發送盜幣:針對推特用戶反饋有黑客在向幣安發送盜幣,趙長鵬發推特稱,剛剛檢查了下,我們已經凍結一部分資金。我不明白黑客為什么總是向幣安發送盜幣。社交媒體很快就會報道出來,這對他們來說是一個高風險的做法。[2019/1/16]
版本一:拜占庭帝國周圍有10個小國,每個小國都有部隊和將軍,這些小國的將軍們必須達成共識一半以上同時進攻才能打敗拜占庭。
版本二:拜占庭有10支軍隊、10個將軍,一起去攻擊強大的敵人。這些軍隊分散在敵國的周邊,需要達成協議至少有6支軍隊同時進攻才能勝利。
現場 | 朱砝:最后從Token獲得什么利潤取決于什么時候賣:金色財經現場報道,幣印聯合創始人兼運營總監朱砝在第三期金色沙龍圓桌論壇上表示,手續費是否可以低于成本呢?也不是不可以,一般是這么幾種情況。第一個,你太重要了,作為礦池沒有你不行,我從別的礦工那里賺錢補貼你,所以可以給你比成本還低的手續費,這是第一種情況。所以拿到很低的手續費,首先要掂量是不是跟礦池的關系好到這種程度。你作為一個礦池,你的體量是否已經大到這種程度。可是太大也有問題,所有的散戶賺的錢補貼不了你。第二種情況,暗箱操作。我告訴你只收1個點,其實我收了2個點,這種現象非常多。我們叫做暗箱操作,或者這里面有腐敗的情況在發生。第三種情況,礦池發行的Token,比如火幣礦池,這件事情一個正常手段。可是在核算收益和成本的時候,要分開看待。因為最后從Token獲得什么利潤,取決于什么時候賣。[2018/11/21]
如果單純從故事的名字來判斷,應該是版本二更可靠一些,第二個版本的將軍才是拜占庭的將軍啊,版本一中的將軍不是拜占庭的將軍。所以,我們以版本二位藍本,繼續研究下去。
拜占庭將軍問題的核心是如何讓地位平等的10個將軍達成共識同時進攻,確保勝利。每個將軍各派9個通信兵發出進攻命令,每個將軍將受到來自9個將軍的信息“進攻”、“何時進攻”、“不進攻”。9個信息都同意進攻,且進攻時間一致的概率太低,迅速達成共識的可能性基本為零。
本身達成共識的概率就太低,實際應用中還有很多其他難點,距離很遠,將軍不能聚在一起開會;可能有叛徒;通信兵可能被殺;信息被敵國截獲;無法確認消息來源的真實性;將軍在商量的過程中浪費時間,貽誤戰機。重重阻撓,很難讓各將軍達成共識發動進攻。
拿出現叛徒的事來進行示例。為了更好的解釋,先將10個將軍簡化成3個將軍。將軍A、將軍B、將軍C,其中將軍B是叛徒。將軍A對將軍B、C發出進攻的消息,將軍B發出不進攻的消息,并同時告訴將軍C他收到將軍A不進攻的消息。此時的將軍C混亂了,他沒辦法判斷將軍A到底是要進攻還是不進攻?正是由于上述原因,只要三個將軍中出現一個叛徒,即叛徒等于1/3,拜占庭將軍問題就不可解決。
拿商量過程太長,貽誤戰機的因素繼續舉例。還是三個將軍,將軍A、將軍B、將軍C,三個將軍中沒有叛徒。將軍A對將軍B、C發出明天下午一點進攻的消息,將軍B對將軍A、C發出明天上午十點進攻的消息,此時將軍C也無所適從,到底選擇哪個時間進攻?繼續將軍A發個消息給將軍B,我認為下午一點進攻何最合適,原因是……;將軍B也發消息給將軍A,我認為上午十點進攻最合適,原因是……。等將軍A和將軍B統一意見,同時再告訴將軍C進攻時間時,已經是兩天后了。這已經是最簡化的模型,沒有考慮叛徒和將軍C的意見,都如此復雜。
以上只是將問題簡化為3個分布式節點,考慮單一因素的影響都很難達成一致,如果節點增多,各種因素交叉影響,那情況將更為復雜。解決這個問題一直沒有好的辦法。
小結
如果將場景放回現實世界中,那就是一個去中心化的分布式系統,將軍們是里面的節點,而節點間通信過程中可能會出現的信息丟失、重復,甚至是內容損壞和篡改問題。如果要讓系統運行順利起來,就需要一個可信的“客觀機器”。
Tags:比特幣TOKEKENTOK比特幣中國官網登錄入口imtoken官網apppSilva TokenVTube Token
親愛的KuCoin用戶:KuCoin宣布將進行MatrixAINetwork(MAN)主網映射,幫助MAN持幣用戶完成所有映射操作.
1900/1/1 0:00:00今天封面是《小神學院》,安東尼奧.曼奇尼。大餅的走勢還是橫盤,且略微震蕩向上,基本接近收復10天前的高點.
1900/1/1 0:00:00親愛的Coinw用戶:幣贏網Coinw即將推出行業首創的“打新”模式——Priority雙優計劃,平臺將甄選優質項目上幣,并提前將項目的打新額度免費贈送給平臺的核心用戶.
1900/1/1 0:00:003月26日,DragonEx公布了被盜資產的黑客錢包地址,其中涉及到的加密貨幣高達20種,除此之外還涉及部分ERC20Token.
1900/1/1 0:00:00親愛的社區用戶: 依據社委會通過排序挖礦規則提案,現公布FCoin排序挖礦實施計劃如下:排序挖礦將于2019年4月30日0點起在以下交易對試行:? FCoin主板A 交易對???????? 每日.
1900/1/1 0:00:00親愛的KuCoin用戶 KuCoin將于2019年5月14日上線Spotlight第二期申購項目Trias(TRY),同時為給用戶提供更加公平公正的申購活動,我們制定了新的申購規則——抽獎模式.
1900/1/1 0:00:00