NEW EVENT
最新活動
幣安
HOT ARTICLES
熱門文章
初接觸加密貨幣/虛擬貨幣的時候,偶爾會遇上一個非常特別的名詞:「拜占庭容錯協議」,而這個名詞總與「共識機制」同時出現。
這看似與地名有關的名詞,到底是什麼?其實這是一個非常經典的信息邏輯問題,而又與加密貨幣的發展息息相關。
要了解「拜占庭容錯協議」,首先要知道什麼是「拜占庭將軍問題」(Byzantine Generals Problem),是由矽谷科學家Robert Shostak於1978年提出的情境難題。內容是這樣的:
古代某個大城市「拜占庭」正經歷一場戰爭,四位將軍散落在城內各處,必須在短時間內決定進攻還是撤退。條件在於,不論進攻或撤退,都必須四位將軍一致同意,才能保證最後勝利。
四位將軍決定各自寫信予其他三人,告知相關決定。當每位將軍都寄出信息,又同時收到其他三名將軍的來信後,就會知道決定是否一致,到底是進攻還是撤退。
聽來很簡單對吧?但問題是--
如何防止其中一位將軍叛變?
又或者,其中一位將軍已被暗殺,寄信的其實是間諜?
又或者,寄出信件後被敵方截取,篡改成相反的內容,從而阻止四位將軍達成共識?
如果仍然覺得難以理解的話,可以嘗試從現代的生活環境去設想。假設某公司中有四位女同事決定要一同午餐,在選擇餐廳的時候,必須要徵得一致同意才可以去吃飯。
我們故且假設四位女同事分佈在四個樓層,工作繁忙而且無法以群組溝通,每一人必須各自告知其他三位女同事心儀的餐廳,但又如果有第五位女同事出於某種原因(可能是積怨在先?),希望破壞這場午餐,她即可以截取其中一人的其中一封通信,又篡改成相反的內容,就可令四位女同事無法達成共識,無法出外午餐了。
這就是拜占庭將軍問題的本質:在沒有中心化通訊機制的前題下,如何保證某一團隊/情境下的相互信息驗證功能--如何在去中心化的同時,找出密碼學的「唯一事實」(single truth)?
拜占庭容錯協議,又或稱拜占庭容錯協議(Byzantine Fault Tolerance, BFT)正是解決這個情境題的經典解答,所以,我們常聽見的「拜占庭容錯協議」其實是答案,背後要解決的,是上述的「拜占庭將軍問題」。
拜占庭容錯協議的做法,就是基於團隊會忠誠執行指令的前題下,所有人只需要執行最大多數的共同指示即可。以上述「女同事午餐問題」為例,那就是最後四人一同選擇佔大多數的餐廳提案即可--說穿了,就是少數服從多數,將錯誤的信息預計在內,再加以排除。
如果將同樣情況,套用於複雜的電腦信息及區塊鏈驗證當中,就會發現「拜占庭容錯協議/BFT」比我們想象來得更重要。
試想想,如果沒有任何機制確保去中心化信息的正確性﹐又沒有一個方案能夠容許少數錯誤的情況下仍然確保系統運作,那麼整個區塊鏈都都會寸步難行。
看到這裡,你一定會問,如果所謂的「容錯」,只是執行多數決定,那麼,如果敵人佔了大多數呢?如果更多的信息被篡改又如何呢?如對女同事積怨的不只是一個人呢?
拜占庭容錯協議所提供的,只是在邏輯/數學上最經典的答案,背後所延伸出來的,是所有去中心化機制都要面對的最核心問題:共識&容錯機制。
「共識機制」顧名思義,就是能夠尋求可行共識的機制,在去中心化的世界裡,如何訂立這項機制、如何執行這項機制、這項機制的速度、擴展性、私密度、容錯度,將會決定每一項去中心化系統的價值。
比特幣的中本聰協議,就是一個比經典的BFT(少數服從多數)更進一步的解決方案,透過將信息重度加密,再要解密者以極高難度的蠻力去計算數學題,從而獲得答案。這項驗證方式要大量高難度數學計算,所以又名為「工作證明」(Proof-of-work, PoW),而獲得最多工作證明的區塊鏈就是最佳的驗證鏈。
其他的區塊鏈亦有更先進機制去應對容錯/共識問題,不論是以太坊,Solana,Cardano,Avalanche,也同樣在追求更有效率的方式,去獲得「唯一事實」(single truth)。
看到這裡,你就會發現為何拜占庭容錯協議會一再出現。因為任何的區塊鏈,其實都需要先解決拜占庭將軍問題,亦可以說,每一項新發明的共識機制,其實都是拜占庭容錯協議的進階版,或直接推翻再創新。
現實世界當中,一群沒有中心領導的個體,要集中統一行動,追求最大利益,第一件事就要找出合符所有人利益的「唯一事實」。
這同樣是密碼學的最終目的,如何在充滿密鑰的世界裡,找出可行而高效的解密方案,傳輸及保存「唯一事實」。
當這個概念套用於區塊鏈,就變成所有區塊鏈節點能夠互相以密鑰驗證,再具有能夠防止惡意攻擊的容錯,從而達成共識機制。
共識機制的誕生過程中,就要解決速度及可擴展性的問題。比特幣長年為人詬病之處,即中本聰共識機制「工作證明」需要消耗非常多資源與時間,對於以太坊及其他公鏈後起之秀,已顯得太過高成本,設計上更無法與以太坊等公鏈互通。
時至今天,已有各種方案去解決拜占庭將軍的問題/女同事午餐問題。中本聰的「工作證明」PoW只是其中一個方案,其他如公鏈 Solana 的「PoH(Proof-of-History,歷史證明)」,Terra/Luna 的「PoS(Proof-of-Stake,權益證明)」,Avalanche的「雪崩共識」,或更多進階共識機制,都是旨在解決拜占庭將軍問題的本質:
獨立去中心化的計算器,如何可以自我容錯運算,互相以單一事實驗證。
最複雜的計算,往往是為了解決最簡單的問題。當我們認真了解拜占庭將軍問題/拜占庭容錯協議,其實已經足以了解區塊鏈,以至加密貨幣世界的本質。
All rights reserved.© 每日幣研 CryptoWesearch 2021
每日幣研
《每日幣研》為來自台灣及香港的區塊鏈從業者所創立的自媒體品牌。我們致力於普及與推廣艱澀難懂的加密貨幣及區塊鏈資訊。