「幣衆課堂」第二講——拜占庭將軍問題是什麼?

「幣眾課堂」第二講——拜占庭將軍問題是什麼?

幣眾每天三分鐘區塊鏈課堂


區塊鏈的擁躉認為區塊鏈核心貢獻是解決多點信息交互過程中的信任問題——“拜占庭將軍問題”。本期的幣眾課堂第二講,就為大家介紹拜占庭將軍問題。

拜占庭將軍問題

實際上這個問題並不是起源於5世紀的拜占庭羅馬帝國,而是在1982年,由Leslie Lamport與另外兩人提出來的。設定的場景是:由於帝國國土遼闊,帝國軍隊的將軍們在地理上是分隔開來的,並且將軍中存在叛徒,叛徒會誤導將軍決策,從而使得他們無法獲勝,而讓將軍們基於正確的信息達成一致決議成為了一個難題。

在那原始的戰爭時代,將軍與將軍、將軍與下屬之間只能靠“出行靠走,通訊靠吼”的口頭傳輸。在這種情況下,真偽很難辨別。科學家針對拜占庭問題進行研究最終得出結論:只有當叛徒總數不超過1/3時,形成“拜占庭容錯系統”時,才能實現最終的一致行為。而在只有三個將軍的前提下,其中一個是叛變者的話,那麼此時無解。



如何解決拜占庭將軍問題


科學家們提出了口頭信息方案和書面協議兩個方案。但這兩個方案都存在很明顯的缺點。口頭協議並不會告知消息的上一個來源是誰,也就是消息不可追根溯源,出現信息不一致也很難找到叛徒在哪。書面協議相比口頭協議,所有的消息都是有記錄的,解決了追根溯源的問題。但在現實中仍然可能面臨各種問題,例如無法避免簽名造假的問題。真正解決“拜占庭將軍問題”的便是中本聰。他在系統中加入了發送信息的成本,即:一段時間內只有一個節點可以傳播信息。引入了“工作量證明 ”和現代的加密技術。同時設計了時間戳,為每個將軍在解好題的時間(出塊時間)蓋上時間印章。將一個不可信的分佈式網絡變成了一個可信的網絡。


拜占庭將軍問題需要解決的是誰來發起信息,如何實現信息的統一同步的問題。而區塊鏈上的共識機制主要解決由誰來構造區塊,以及如何維護區塊鏈統一的問題。中本聰對拜占庭將軍問題的解決方案,實際上是融合了各種高新技術,為解決任何核心問題是分佈式網絡上缺乏信任的領域提供了一個新思路。



每天三分鐘,讀懂區塊鏈技術,瞭解更多區塊鏈知識,歡迎收看幣眾區塊鏈知識小課堂。


分享到:


相關文章: