作者:趙超越
Hi,相信關注區塊鏈的你,一定對經常聽到的“共識”一詞充滿了好奇,那作為區塊鏈靈魂的共識算法到底是什么呢?
今日在線解決三大疑問:共識算法到底是什么?有哪些?未來發展如何?
共識算法到底是什么?
在了解這個概念之前,或許我們得先回顧一下,什么是區塊鏈?我們上期給出的一句話總結是:“區塊鏈是由分布式數據存儲、點對點傳輸、共識機制、加密算法等技術構成的分布式數據庫技術,可為存證溯源、業務協作、數字資產、數據交換等高價值場景提供多方互信的解決方案。”
其中,共識機制就是我們今天要聊到的——共識算法。
共識算法是用于保證分布式系統一致性的機制。這里的一致性可以是交易順序的一致性、賬本一致性、節點狀態的一致性等。
在上期家庭財政舉的例子中,夫妻各自管理自己的賬本時,新增的每一筆收入都需要經過兩人的共同查驗,確認無誤后才會被分別記入二人的賬本中,并確認雙方賬本是否一致。其中“共同查驗”、“確認雙方賬本一致”的過程就是共識。
行情 | A股收盤:區塊鏈板塊收漲0.82%:A股收盤,區塊鏈板塊收漲0.82%。80只概念股中,58只為漲,15只為跌,6只平盤,1只停牌。漲幅前三為:航天信息(+3.99%)、高升控股(+3.76%)、思特奇(+3.50%);跌幅前三為:中元股份(-5.39%)、第一創業(-3.24%)、暴風集團(-2.54%)。[2018/12/24]
共識算法有哪些?
想要達成共識,我們就必須得解決一個問題:聽誰的?
比比誰更強,誰更快:POW工作量證明、Raft算法。
以「王者榮耀」為例,五個路人剛組好戰隊,需要選出一名指揮官,決定如何在比賽時交流信息,保證行動的一致性,從而一起奪得戰隊賽的好名次。
有人提出在王者快跑一決高下,這個趣味賽要求玩家隨機選擇英雄,利用英雄技能,誰先抵達終點誰就勝出,擔任指揮官。這意味著使用同樣的英雄,誰的技能操作更熟練,位移更準確且迅速,誰的能力更強,經驗更足,也自然更能勝任指揮官。
聲音 | 中信銀行李國峰:區塊鏈等的發展與應用直接影響客戶服務等方面:據金融投資報消息,中信銀行資產管理業務中心總裁李國峰看來,金融科技是推動資管行業轉型發展的核心動力,云計算、大數據、區塊鏈、移動互聯、人工智能及生物互聯等新一代技術的發展應用,對資管行業的影響最直接表現在客戶服務、產品設計、策略優化、團隊建設、運營模式、風險管理等方面。[2018/11/11]
這種方法的原理就是比特幣使用的工作量證明機制,區塊鏈中哪個節點的算力更強,就更有可能發現下一個區塊的有效值。然而正如這個例子中,玩家需要在常規比賽之外再另比一場王者快跑的比賽,而且對于不擅長玩位移英雄的玩家來說不公平。對應到區塊鏈中,節點在處理鏈上信息的同時,還要時時與其他節點比賽算力,POW算法最終變成算力的角逐,浪費大量算力,也使得POW失去了公平的初衷。
為了節省算力消耗,也有人說不如去五軍對決,每人占據一個buff點,等待隨機刷新的重生之石。誰先等到刷新的重生之石,誰就成為候選人,如果同時等到,則同時當選候選人,就不用增加過多的比賽。候選人具備競選指揮官的資格,指揮官由大家投票選出,每人手中僅有寶貴的一票,而第一個收到一半以上票數的候選人即可當選指揮官。這種方法的原理就是Raft算法,像所有人都需等待重生之石隨機刷新那樣,Raft算法中的普通節點需要等待隨機的時間變成候選節點,沒投過票的普通節點可以把票投給候選節點,收到一半以上票數的候選節點即可成為領導節點。
聲音 | BM:區塊鏈的意義在于誠實 正直和智能合約的客觀理性:據 IMEOS 報道,BM 剛剛在 URI 電報群發表了幾段消息,他表示,URI 是志愿社區的和平條約,每個社區都有它自己極力捍衛的價值觀。那些不以這些價值觀并破壞和平條約的人將沒有資格獲得 URI。
如果人們不明白其道德準則,任何和平條約都不成立。不接受和平條約準則的人會拿著不勞而獲的錢去資助戰爭或者其他東西。我們需要記載和明確最低可行道德準則,不容質疑的,落地實行的。
區塊鏈的意義在于誠實,正直和智能合約的客觀理性。讓人們信守他們的加密諾言和明白客觀歷史。[2018/9/29]
拒絕作惡:RBFT算法、BFT類拜占庭容錯算法
但即使通過上面兩種方法選出了指揮官,也并不意味著戰隊就能統一行動,奪得最終的勝利。可能有隊員其實是個“演員”,實際上卻并不聽從指揮,反而假傳指揮官命令給其他隊友,帶著他們單獨行動。這種情況下,保證戰隊比賽時能夠交流真實的有效信息,就尤為重要。在區塊鏈中,這被稱作存在作惡節點的情況,此時系統應該如何達成共識呢?
動態 | 多位業界人士圍繞區塊鏈在大農業產業的應用展開交流:據新華網消息,在中國農民豐收節·一縣一品品牌扶貧合作峰會暨品牌農業區塊鏈平臺上線儀式上,圍繞發揮區塊鏈等新技術在農業品牌化進程中的作用等議題展開討論,多位區塊鏈專家、貧困縣代表、終端店銷售代表、源頭企業代表對區塊鏈在大農業產業的應用展開了深入交流。[2018/9/25]
既然如此,干脆取消競選指揮官的環節,每個人都有擔任指揮官的機會,在實戰中檢驗大家的指揮能力。在每局比賽中,系統會不斷發出提示,比如“摧毀敵方防御塔”。指揮官篩選出這些消息中的有用消息,再向其他隊友轉達進攻指令。隊友們在收到消息后自行判斷這個命令是否合理,如果覺得合理,就回復“收到”,一旦收到超過2/3的其他隊友回復的“收到”,就明白大多數隊友都會配合,便放心發起進攻。在一局比賽結束后,如果超過2/3的隊友認為這局的指揮官不行,就更換指揮官的人選。
這便是趣鏈高魯棒性拜占庭容錯算法的原理,客戶端給主節點發送請求,主節點收到請求后發送消息給所有從節點,從節點給其他所有節點發送消息確認收到,收到超過2/3確認消息的從節點執行命令,并同時通知其他所有節點,最終將執行結果反饋給客戶端,如果主節點出現故障則進行視圖切換,更換主節點。
動態 | 捷藍航空公司投資區塊鏈初創公司:據華爾街日報報道,美國捷藍航空公司(JetBlue Airways Corp.)投資了區塊鏈初創公司Filament,這可能會幫助該航空公司近乎實時地驗證和支付例如燃料和配置卡車等服務。捷藍頂級技術執行官Eash Sundaram認為,初創公司將提供捷藍其可能無法在內部開發的或傳統技術供應商無法提供的尖端技術。[2018/7/4]
除此之外,RBFT算法在基于普通的拜占庭容錯算法的基礎上做了諸多改進,比如利用Recovery機制提升了系統的可靠性、拓展性,當隊員因網絡卡頓等原因重新游戲鏈接時,隊員能夠自動回顧重連過程中錯過的戰局信息與小隊指令,讓隊員能夠跟上游戲進度。
RBFT算法-王者榮耀版示意圖
RBFT算法示意圖
更優化的傳遞共識:NoxBFT算法、HotStuff算法
但又有人提出,當小隊的人數變多時,BFT類的算法的要求的所有隊友互相交流就會有些麻煩,所有人最好僅與指揮官交流。
為了降低交流的成本,且確保指揮官的指令得到了大部分人的認可,每個人都會在回復指揮官的消息中附上自己的頭像,而指揮官在給所有人發送最終指令時,會附上這些頭像的集合,來證明指令經過了大家的認可,否則隊員可以無視指令。除此之外,還把更換指揮官的步驟直接挪到比賽中,以免指揮官在比賽中臨時斷線或者狀態不佳總發送錯誤指令。
這就是HotStuff算法的原理,它將BFT的網狀通信網絡拓撲變成了星形通信網絡拓撲,節點不再通過p2p網絡將消息廣播給其它節點,而是將消息發送給主節點,由主節點處理后發送給其它節點。得益于星型通信網絡拓撲,系統的通信復雜度得到了大大降低。它通過將視圖切換流程和正常流程進行合并,也降低了視圖切換的復雜度。
BasicHotStuff的流程
在借鑒HotStuff算法的理念后,自研NoxBFT算法,在大規模組網環境下,能夠有效降低區塊鏈網絡傳輸的復雜度,提升系統的共識效率與可擴展性。
所以,我們支持哪些共識算法?
我們的共識模塊采用可拔插的模塊化設計,用戶可針對不同的業務場景需求按需選擇不同的共識算法。目前支持RBFT、NoxBFT、Raft共識算法,這三類算法分別有其適合的場景。
RBFT:具有高性能高魯棒性,設計了動態數據自動恢復機制與動態共識節點增刪機制,大大增強了共識模塊的可用性,提升了系統的整體交易吞吐能力和系統穩定性,可達到萬級TPS以及毫米級延遲。適用于一般數量級的節點組成的網絡環境。
NoxBFT:借鑒Hotstuff算法后自研,通過星型網絡拓撲結構將全網網絡復雜度由O(n2)降低至O(n),減少了一個量級,并進一步優化算法的活性、可靠性以及數字簽名性能,有效解決大規模節點組網場景下共識效率低下、可擴展性不強的問題,現已支持以千為數量級的大規模節點擴展。
Raft:區塊鏈平臺支持Raft共識算法保證賬本一致性,在聯盟各方足夠信任的前提下,實現高效共識。該算法僅限于強信任聯盟鏈場景中使用。
共識算法未來發展方向
區塊鏈共識算法從一開始的算力密集型算法POW、POS開始,后來逐漸演變出減少耗能的選舉型共識方式BFT等,整體性能上有4-5個數量級的提升。但隨著節點數量增多到幾百個甚至更大的共識節點規模,需要交換的信息增多,系統負載及網絡通信量增大,性能會有所下降,可擴展性也較弱。如何突破共識性能、帶寬瓶頸,實現大規模節點高效共識、增強可擴展性是當前共識研究的重要發展方向。
目前,共識算法的研究嘗試結合更多的技術進行優化,比如引入VRF保證主節點選取隨機性和公平性,應用DAG數據結構提升系統吞吐量、結合密碼學算法優化共識效率等等,整體趨勢上是向混合型共識算法演變。
原題《比特幣成為技術的旗幟》撰文:BalajiS.Srinivasan,Coinbase前CTO,a16z前普通合伙人翻譯:詹涓原文首發于加密貨幣內容平臺Nakamoto.com創刊之時.
1900/1/1 0:00:00開放金融協議Synthetix和研究組織Optimism已經合作推出了一個新的OptimisticRollup演示,朝著開發成熟的以太坊Layer-2擴容解決方案又邁出了一步.
1900/1/1 0:00:00截至2020年5月5日,全球數字通證總市值為2550.72億美元,相比期初上漲672.4億美元,漲幅為35.8%。四月日均成交額為1338億美元,較上月下降173億美元,跌幅為11.4%.
1900/1/1 0:00:00來源:?深潮DeepFlow編者注:本文作了不改變作者原意的刪減。5月8日,在距離減半不到72小時的當口,比特幣價格突破一萬美金.
1900/1/1 0:00:00十余年來,加密貨幣市場大概是第一次面對如此復雜的內外部環境,多元變量令多數經驗不再具備實用價值,區塊鏈作為強「未來感」的行業發展正處迷茫期.
1900/1/1 0:00:00文丨互鏈脈搏·金走車 未經授權,不得轉載! 4月份,隨著區塊鏈被列入新基建,國內區塊鏈發展前列的城市,步入競速期.
1900/1/1 0:00:00