拜占庭將軍問題(TheByzantineGeneralsProblem)提供了對分布式共識問題的一種情景化描述,由LeslieLamport等人在1982年首次發表。論文《TheByzantineGeneralsProblem》同時提供了兩種解決拜占庭將軍問題的算法:口信消息型解決方案(Asolutionwithoralmessage);簽名消息型解決方案(Asolutionwithsignedmessage).論文:https://www-inst.eecs.berkeley.edu/本文之后將詳細講述這兩種算法。事實上,拜占庭將軍問題是分布式系統領域最復雜的容錯模型,它描述了如何在存在惡意行為(如消息篡改或偽造)的情況下使分布式系統達成一致。是我們理解分布式一致性協議和算法的重要基礎。拜占庭將軍問題描述
拜占庭將軍問題描述了這樣一個場景:
圖1.拜占庭將軍問題拜占庭帝國(ByzantineEmpire)軍隊的幾個師駐扎在敵城外,每個師都由各自的將軍指揮。將軍們只能通過信使相互溝通。在觀察敵情之后,他們必須制定一個共同的行動計劃,如進攻(Attack)或者撤退(Retreat),且只有當半數以上的將軍共同發起進攻時才能取得勝利。然而,其中一些將軍可能是叛徒,試圖阻止忠誠的將軍達成一致的行動計劃。更糟糕的是,負責消息傳遞的信使也可能是叛徒,他們可能篡改或偽造消息,也可能使得消息丟失。為了更加深入的理解拜占庭將軍問題,我們以三將軍問題為例進行說明。當三個將軍都忠誠時,可以通過投票確定一致的行動方案,圖2展示了一種場景,即GeneralA,B通過觀察敵軍軍情并結合自身情況判斷可以發起攻擊,而GeneralC通過觀察敵軍軍情并結合自身情況判斷應當撤退。最終三個將軍經過投票表決得到結果為進攻:撤退=2:1,所以將一同發起進攻取得勝利。對于三個將軍,每個將軍都能執行兩種決策(進攻或撤退)的情況下,共存在6中不同的場景,圖2是其中一種,對于其他5中場景可簡單地推得,通過投票三個將軍都將達成一致的行動計劃。
Tether在以太坊鏈上增發10億枚USDT:金色財經報道,Whale Alert監測數據顯示,北京時間4月21日5點14分,Tether在太坊鏈上增發10億枚USDT。[2023/4/21 14:17:33]
圖2.三個將軍均為忠誠的場景當三個將軍中存在一個叛徒時,將可能擾亂正常的作戰計劃。圖3展示了GeneralC為叛徒的一種場景,他給GeneralA和GeneralB發送了不同的消息,在這種場景下GeneralA通過投票得到進攻:撤退=1:2,最終將作出撤退的行動計劃;GeneralB通過投票得到進攻:撤退=2:1,最終將作出進攻的行動計劃。結果只有GeneralB發起了進攻并戰敗。
圖3.二忠一叛的場景事實上,對于三個將軍中存在一個叛徒的場景,想要總能達到一致的行動方案是不可能的。詳細的證明可參看LeslieLamport的論文。此外,論文中給出了一個更加普適的結論:如果存在m個叛將,那么至少需要3m+1個將軍,才能最終達到一致的行動方案。解決方案
以太坊礦工地址余額突破1700萬:2月21日消息,據OKLink多鏈瀏覽器數據顯示,昨日鏈上以太坊礦工地址余額突破1700萬枚ETH,占以太坊當前總供應量的14.23%,較2023年年初增長了90.9萬枚 ETH。[2023/2/21 12:19:19]
LeslieLamport在論文中給出了兩種拜占庭將軍問題的解決方案,即口信消息型解決方案(Asolutionwithoralmessage)和簽名消息型解決方案(Asolutionwithsignedmessage)。1、口信消息型解決方案首先,對于口信消息(Oralmessage)的定義如下:A1.任何已經發送的消息都將被正確傳達;A2.消息的接收者知道是誰發送了消息;A3.消息的缺席可以被檢測。基于口信消息的定義,我們可以知,口信消息不能被篡改但是可以被偽造。基于對圖3場景的推導,我們知道存在一個叛將時,必須再增加3個忠將才能達到最終的行動一致。為加深理解,我們將利用3個忠將1個叛將的場景對口信消息型解決方案進行推導。在口信消息型解決方案中,首先發送消息的將軍稱為指揮官,其余將軍稱為副官。對于3忠1叛的場景需要進行兩輪作戰信息協商,如果沒有收到作戰信息那么默認撤退。圖4是指揮官為忠將的場景,在第一輪作戰信息協商中,指揮官向3位副官發送了進攻的消息;在第二輪中,三位副官再次進行作戰信息協商,由于GeneralA、B為忠將,因此他們根據指揮官的消息向另外兩位副官發送了進攻的消息,而GeneralC為叛將,為了擾亂作戰計劃,他向另外兩位副官發送了撤退的消息。最終CommandingGeneral,GeneralA和B達成了一致的進攻計劃,可以取得勝利。
Electric Capital:在Serum(SRM)盡職調查時發現問題,對FTX的敞口有限:11月18日消息,據外媒報道,ElectricCapital高管周四告訴其有限合伙人,Electri在FTX崩潰中影響很小,對FTX的敞口有限,這要歸功于Electric在盡職調查時發現了“yellowflags”(存在風險)。Electric曾質疑Serum的代幣SRM的代幣經濟學,其發行時的流通量將占總流通量的10%左右。所有預售、團隊和貢獻者代幣都將在此后一到七年內解鎖。Electric認為SRM缺乏流通性,而低流通量會限制供應,從而抬高價格。
Electric因此放棄了對SRM的投資,后來也決定不再投資FTT。據Electric透露,該公司沒有FTX股權,也沒有接觸FTT、SRM或Solana的SOL代幣。Electric從未與Bankman-Fried的Alameda Research有過業務往來。目前,該公司有8個比特幣由FTX保管。Electric Capital投資的兩家未具名的初創公司的其中一只風險基金的擁有FTX資產,風險敞口約為70萬美元。(Blockworks)[2022/11/18 13:19:53]
國際證監會組織發布2023年加密監管路線圖:7月11日消息,國際證監會組織(IOSCO)發布了其未來幾年通過解決加密貨幣法規缺乏問題來管理該行業的框架。
7月7日發布的指南顯示,IOSCO董事會級金融科技工作組(FTF)的框架將專注于兩個工作流程,重點是Crypto和Digital Assets(CDA)和DeFi。每個工作組計劃在2023年底前發布一份包含政策建議的報告。
今年年初成立的特別工作組表示,今年出現投資者的損失是由于缺乏市場監管。因此,FTF指出,有必要保護投資者,并應對市場的完整性。考慮到加密貨幣的跨境性質,該組織還與金融穩定委員會(FSB)就金融穩定可能面臨的風險等問題進行合作。這種合作還需要在全球和區域兩級交換信息。(Finbold)[2022/7/11 2:05:24]
圖4.指揮官為忠將的場景圖5是指揮官為叛將的場景,在第一輪作戰信息協商中,指揮官向GeneralA、B發送了撤退的消息,但是為了擾亂GeneralC的決定向其發送了進攻的消息。在第二輪中,由于所有副官均為忠將,因此都將來自指揮官的消息正確地發送給其余兩位副官。最終所有忠將都能達成一致撤退的計劃。
美國加密貨幣稅收執法機構正在考慮實施獎勵舉報人計劃:金色財經消息,美國加密貨幣稅收執法機構正在考慮實施獎勵舉報人計劃,如果納稅人少報或未能從加密貨幣收入來源繳納所得稅,他們可能面臨刑事和民事責任,雖然過去聯邦法規未能達到這一目標,但合作機構的努力正在利用州立法來針對全國各地的不合規納稅人。為了進一步努力,其中一些計劃正在考慮實施舉報人計劃,以增強他們識別和起訴涉及數字貨幣和NFT的逃稅和欺詐的能力,美國當局可能很快會通過獎勵提供有關虛報虛擬貨幣交易收入信息的個人來加強執法力度。(美通社)[2022/6/22 1:24:13]
圖5.指揮官為叛將的場景如上所述,對于口信消息型拜占庭將軍問題,如果叛將人數為m,將軍人數不少于3m+1,那么最終能達成一致的行動計劃。值的注意的是,在這個算法中,叛將人數m是已知的,且叛將人數m決定了遞歸的次數,即叛將數m決定了進行作戰信息協商的輪數,如果存在m個叛將,則需要進行m+1輪作戰信息協商。這也是上述存在1個叛將時需要進行兩輪作戰信息協商的原因。2、簽名消息型解決方案同樣,對簽名消息的定義是在口信消息定義的基礎上增加了如下兩條:A4.忠誠將軍的簽名無法偽造,而且對他簽名消息的內容進行任何更改都會被發現;A5.任何人都能驗證將軍簽名的真偽。基于簽名消息的定義,我們可以知道,簽名消息無法被偽造或者篡改。為了深入理解簽名消息型解決方案,我們同樣以3三將軍問題為例進行推導。圖6是忠將率先發起作戰協商的場景,GeneralA率先向GeneralB、C發送了進攻消息,一旦叛將GeneralC篡改了來自GeneralA的消息,那么GeneralB將將發現作戰信息被GeneralC篡改,GeneralB將執行GeneralA發送的消息。
圖6.忠將率先發起作戰協商圖7是叛將率先發起作戰協商的場景,叛將GeneralC率先發送了誤導的作戰信息,那么GeneralA、B將發現GeneralC發送的作戰信息不一致,因此判定其為叛將。可對其進行處理后再進行作戰信息協商。
圖7.叛將率先發起作戰協商簽名消息型解決方案可以處理任何數量叛將的場景。總結在分布式系統領域,拜占庭將軍問題中的角色與計算機世界的對應關系如下:將軍,對應計算機節點;忠誠的將軍,對應運行良好的計算機節點;叛變的將軍,被非法控制的計算機節點;信使被殺,通信故障使得消息丟失;信使被間諜替換,通信被攻擊,攻擊者篡改或偽造信息。如上文所述,拜占庭將軍問題提供了對分布式共識問題的一種情景化描述,是分布式系統領域最復雜的模型。此外,它也為我們理解和分類現有的眾多分布式一致性協議和算法提供了框架。現有的分布式一致性協議和算法主要可分為兩類:一類是故障容錯算法(CrashFaultTolerance,CFT),即非拜占庭容錯算法,解決的是分布式系統中存在故障,但不存在惡意攻擊的場景下的共識問題。也就是說,在該場景下可能存在消息丟失,消息重復,但不存在消息被篡改或偽造的場景。一般用于局域網場景下的分布式系統,如分布式數據庫。屬于此類的常見算法有Paxos算法、Raft算法,、ZAB協議等。一類是拜占庭容錯算法,可以解決分布式系統中既存在故障,又存在惡意攻擊場景下的共識問題。一般用于互聯網場景下的分布式系統,如在數字貨幣的區塊鏈技術中。屬于此類的常見算法有PBFT算法、PoW算法。
看完本文,你對這兩種解決方案有什么看法?歡迎在評論區跟我們討論!
頭條 IOTA官方:Trinity錢包用戶資金遭竊IOTA基金會宣布,Trinity錢包軟件用戶的資金已被竊取。IOTA基金會已關閉了該基金會目前控制的協調節點.
1900/1/1 0:00:00在前幾個故事里面我們提到,剛開始時中本聰與密碼學郵件組成員的主動接觸,以及他在metzdowd上面的留言,為比特幣吸引了一批早期支持者.
1900/1/1 0:00:00編者按:本文來自加密谷Live,作者:ScottKupor,翻譯:ZoeZhou,Odaily星球日報經授權轉載.
1900/1/1 0:00:00編者按:本文來自互鏈脈搏,作者:LauraStarita,翻譯:雅棋,Odaily星球日報經授權轉載。不管接不接受,每個個體,企業都在經歷向數字經濟轉型。新舊更替,也會有很多過時的想法.
1900/1/1 0:00:00編者按:本文來自:以太坊愛好者,作者:ETHGasStation,翻譯&校對:閔敏&阿劍,Odaily星球日報經授權轉載.
1900/1/1 0:00:00編者按:本文來自量化踢馬河,Odaily星球日報經授權轉載。一提到到布朗尼,可千萬不要以為就是那種黑色巧克力味的美味小蛋糕,這里說到的布朗尼,指的是以太坊上,名為布朗尼的智能合約基礎框架.
1900/1/1 0:00:00