前言:本文簡單明了地闡述了達成共識的兩個主要流程:區塊的提議和區塊的共識達成。區塊的提議主要涉及到PoW和PoS機制,也就是工作量證明和權益證明的機制,用以抵抗女巫攻擊,安全地選出可靠的區塊提議者。區塊的共識達成則涉及到共識算法,主要包括中本聰共識和經典共識。中本聰共識采用最長鏈規則,經典共識則可實現最終性。每種共識算法都有自己的權衡取舍。本文作者JulianKoh和CherylSewHoy,由“藍狐筆記”社群的“曉L”翻譯。
區塊鏈共識是2017年和2018年最廣為討論的區塊鏈子領域之一。可以看到,很多公司試圖從零開始構建新的智能合約平臺,并與以太坊競爭,而其中的一個差異化或創新點就在區塊鏈的共識算法方面。試圖理解這些算法,并能對它們進行批判性比較,這對很多加密投資者來說,都是一項全職工作,毫無疑問,要掌握它們并不簡單。
為揭開這些“共識算法”的神秘面紗,不少人做了很多工作。但是,對于普通人來說,它們太過于技術化。一些概念,例如同步、安全/活性證明、不可能結果,這些有助于人們通局了解。不過,在我看來,對于大多數人來說,完全理解并不特別重要。
本文重點是區塊鏈的共識算法,而沒有提及更大的也是超級復雜的分布式系統領域。為了簡單易懂,還會放棄一些技術概念。
本文結束時,你應該理解PoW和PoS的區別,了解BFT的意思,最重要的是,當考慮在哪個區塊鏈上構建你的應用時,你應該知道它們的權衡是什么。
什么是共識?為什么很重要?
簡單來說,區塊鏈是一種公共數據庫,其中用戶就什么是正確的達成一致。比特幣是記錄所有交易的公共數據庫,保留了貨幣系統的完整性。有兩個主要問題需要理解:
杜卡迪在XRP Ledger上推出獨家限量版NFT系列“Ducati Legacy”:金色財經報道,意大利摩托車生產商杜卡迪在官方社交媒體宣布推出獨家限量版NFT數字藏品“Ducati Legacy”,該系列將在XRP Ledger上發布,總計推出5000枚,每枚售價為100美元,旨在向定義杜卡迪品牌的豐富性能和卓越設計歷史致敬,該NFT預計會在九月發布,但具體日期暫未披露。[2023/9/7 13:23:35]
1.就什么達成共識?
2.如何達成共識?
我們需要有人提議,然后讓其他人選擇,直到達成某種形式的共識。就區塊鏈的情況,我們需要有人提議區塊,然后需要剩余節點接受區塊。
一個簡單的例子如下:
4位朋友嘗試并安排共同做事的時間
4個人嘗試并安排共同的時間來做事。每個人提出其可用時間。可以看到,有兩個共同可用的時間段,下午2點和6點。他們如何達成共識?在他們提出可用時間前,他們同意一個特定規則:每個人必須選擇最早的共同可用時間。在這種規則下,這意味著,他們將會在下午2點而不是下午6點見面。由此,他們達成了共識。
按照這種框架,我們將它類比擴展到比特幣區塊鏈:
人們就什么達成共識?
人們就區塊數據達成共識。區塊中包含有效的比特幣交易。在比特幣中,任何人都可以提議區塊,只要他們率先解決一個計算謎題。
人們如何達成共識?
人們同意接受最長鏈上的區塊。例如,如果鏈A的高度為100,而鏈B的高度為200,如果你收到鏈A上的區塊101和鏈B上的區塊201,你必須接受區塊201。有人在更短的鏈上添加區塊,可能是因為他們沒有意識到更長的鏈,但“最長鏈規則”確保一旦區塊在整個網絡中傳播,每個人最終就相同的事情達成共識。
梁鳳儀:香港證監會對基金代幣化持開放態度:金色財經報道,6月5日,香港證監會行政總裁梁鳳儀出席香港投資基金公會年會致辭時表示,香港400間持有第9類提供資產管理牌照的公司,去年每季的財富管理收入錄得雙位數跌幅,今年首季按年持平。梁鳳儀表示,現時只有6個在港上市的交易所買賣基金(ETF)納入南向ETF通。到4月為止,ETF通的南向交易額達18億港元,占整體交易額的20%。她指出,人工智能可以賦能金融清算和結算,香港證監會對基金代幣化持開放態度。[2023/6/5 21:16:36]
該框架支持所有共識算法。不同算法可以采用不同的方法來提議區塊,也可以使用不同的方式來對區塊達成共識。
提議區塊
考慮區塊提議時,最大的問題是誰來提議區塊。如果任何人隨時都可以提議區塊,會很難達成共識,因為這類似于人們不停地相互交談。必須以某種方式選出代表,這樣剩余的人可以一次看到一個提議。
最幼稚的方式是讓協議隨機選擇一個人來提議新區塊。然而,在互聯網上,一個人可以通過運行相同程序的一百個實例來偽裝成一百個人。因此,我們需要創造某種形式的稀缺性,以抵抗女巫攻擊。。
因此,這個游戲必須能夠抵擋單一黑客操縱很多人的攻擊。這正是PoW和PoS給你帶來的:一種讓計算機受到某些資源限制的方式。
PoW如下:為獲得提議區塊的權利,你必須率先完成計算密集型的任務。模擬一個虛擬的計算機拋硬幣任務,直到它得到連續100次的虛擬硬幣的正面。這是計算密集型的,沒有人能偽裝成一百人,因為這受制于其算力。
然而,通過采用這種“抗女巫攻擊”機制,人們已經建立了數千臺計算機組成的礦場,以便在算力競爭中勝出,從而獲得提議區塊的權利。這些服務器礦場消耗巨量電力,因此它們集中于可獲得最便宜電力的國家或地區。
Celsius:今日起將對加入和解的托管帳戶用戶分配其余額的36.25%:5月10日消息,Celsius發推文稱:“上個月,法院批準我們與無擔保債權人委員會(UCC)和托管特別小組達成和解。今天,選擇選擇加入和解的人可以開始提款。提醒一下,符合條件的托管帳戶用戶可以選擇加入托管和解,條件是選擇不追究任何與托管相關的索賠或針對Celsius的訴訟理由,并在其托管索賠中投票支持本計劃。合格資產的分配將分兩個階段進行。第一次分配為每個結算托管賬戶持有人托管賬戶余額的36.25%,從今天開始。在所有帳戶信息均已更新并經過驗證之前,用戶將無法提取資產。”
此前5月5日消息,Celsius表示,符合資格的用戶將能夠提取100%的可分配托管資產。[2023/5/10 14:53:31]
那么,當大多數比特幣礦工位于中國時,這對于去中心化意味著什么?這種地理上的中心化給系統的長久性構成了真正的威脅,因為這些挖礦公司很容易被監管。
比特幣礦場
PoS采用了跟PoW完成不同的“抗女巫攻擊”機制。既然要花錢購買比特幣挖礦計算機和購買電力,那么,為什么不只是用錢來選擇區塊生產者并將計算密集型過程跳過呢?PoS是這樣的想法:基于人們在系統中質押的錢多少來選擇區塊提議者,也就是人們在系統中擁有的代幣的比例。
在PoW中,擁有算力越多,被選為提議下個區塊的概率就越高。在PoS中,擁有的代幣越多,成為區塊生產者的概率就越高。
請注意,還沒有開始談論如何就區塊達成共識。有一種常見的誤解,認為PoW和PoS是共識算法。其實它們不是。它們只是通過約束稀缺資源的方式來選擇區塊生產者。
Babylon測試網已與Juno Network集成:5月5日消息,Cosmos生態項目Babylon宣布其測試網已與Cosmos生態智能合約公鏈Juno Network集成。此次集成可將比特幣安全性引入Juno Network智能合約網絡。[2023/5/5 14:44:39]
區塊共識
這是事情變得有趣的地方,也是近年來大部分創新發生的地方。一旦有人提議區塊,我們如何達成共識?這是從上個世紀80年代以來計算機科學家們一直試圖解決的問題,以在一些計算機偶爾發生崩潰時,其計算機集群也能同步。到了上世紀90年代,這些計算機科學家開始思考一個更難的問題:如果黑客可以控制其中的一些計算機呢?
他們能否構建足夠強健的系統,以確保所有非惡意的計算機依然能夠達成共識?這一特性被稱為“拜占庭容錯”,它是基于拜占庭將軍問題而來。BFT系統是一個相當小的研究課題,因為大多數系統并不需要這種級別的穩健性,因為大多數計算機集群通常都屬于單一公司。直到區塊鏈的到來,才改變了這一局面。
在區塊鏈中,任何人都可以運行節點,并且可以向其他節點發送信息或數據。這是一個真正對抗性的環境,因為惡意行為者可以假裝為誠實節點。例如,如果集群中的10個惡意計算機向其他9個計算機發送沖突信息,該怎么辦?
惡意計算機向不同的誠實計算機發送沖突信息
由于誠實計算機無法區分惡意和非惡意的計算機,這個問題變得非常棘手。解決這個問題有兩種主要方法:中本聰共識和經典共識。
中本聰共識
中本聰共識用于比特幣和大多數PoW系統中,由中本聰開創。它有一條單一規則:“當你看到提議的區塊擁有最多工作量證明,就接受它。”通常來說,具有最高編號的區塊擁有最多工作量證明。
以太坊已實現市值跌至2057億美元,創7個月以來新低:6月15日消息,Glassnode數據顯示,以太坊已實現市值(Realized Cap)達205772044567.67美元,創7個月以來新低。
注:已實現市值是通過每枚以太坊按其最近一次移動時的價格來進行計算,它考慮了所有鏈上交易的最后價格,可視為以太坊價值的更“真實”的長期衡量指標,能更準確地反映以太坊的市值。[2022/6/15 4:29:37]
這意味著,對于你看到的區塊是否“正確”,你永遠沒有100%的確定。例如,如果你看到的最高區塊編號是99,你可以在區塊編號100接收到區塊A,因此你接受了。
突然,你在區塊編號103收到區塊B,而它在區塊編號100有不同的區塊。根據共識規則,你需要“反轉”之前接受的區塊A,轉而接受新的區塊歷史。
在這個系統中,超過系統算力50%的攻擊者將能夠持續構建最長鏈,因此,可以創建他們想要的任何區塊。通過這個例子,我們可以看到這些規則有助于人們就哪一條鏈是可接受的鏈達成一致。
經典共識
在中本聰共識2009年發明之前,計算機科學家對此問題有不同的解決方案,這問題有不同的特性。第一個拜占庭容錯共識算法稱為實用拜占庭容錯算法。它的工作原理是:讓一組參與者進行多輪投票,直到一定比例的投票者達成共識。
基于PoS之類的機制,選擇某人提議區塊。他將區塊發送給其他已知的參與者。由其他參與者進行投票。
由于大多數參與者都對區塊投贊成票,系統中的每個人都將接受該區塊作為正確區塊。使用這種類型的共識,須有一組已知的投票者,但一旦他們投票通過,區塊就有了最終性。因此,就不存在區塊回滾的事情。如果存在爭議,那么系統會停止。
PBFT算法已經被用在區塊鏈上,區塊鏈中迄今為止,最突出的BFT算法是TendermintCore。TendermintCore是區塊鏈上第一個不使用中本聰共識的共識算法,而是基于20多年的計算機科學研究基礎上。
BFT算法的主要局限是它們通常僅限于一小部分投票者,因為所有投票者都需要事先知道。讓10萬人不斷地與其他人溝通以達成共識是極其困難的事情。到目前為止,Cosmos已經運行了可能是最大的公共BFT系統之一,他們的GameofStakes測試網有超過200的驗證者參與。
中本聰共識有其他變種,例如GHOST,也有其他BFT共識的變種,例如Casper-BFT和Thunderella。
這些共識算法變種的主要區別實際上只是其區塊提議方式的不同或參與共識的溝通人數不同而已。大多數情況下,在一個算法系列中,它們之間有類似的權衡。還有一些新的共識形式,例如Avalanche,它們不屬于任何一個系列。
經典共識和中本聰共識的權衡,來自于GunSirer’s的Avalanche演示
如何選擇共識算法?
根據你想構建的應用類型,下面是選擇哪種共識算法的指南問題,由此也會涉及到選擇何種智能合約平臺。
1.你要構建的應用對最終性的急需程度?
對于一些應用來說,最終性非常重要,而另外一些應用,則不那么重要。如果你構建的是用于微支付的新型支付系統,交易可以逆轉并不是世界的末日。類似地,如果你構建的是去中心化的社交網絡,100%保證狀態更新立即完成并非是一個特別重要的特性。相反,如果你構建的是去中心化的交易所,最終性是用戶體驗中至關重要的部分。讓交易逆轉比不發生交易還要糟糕。作為參考,比特幣的最終性大約是1小時左右以太坊的最終性大約6分鐘左右,而TendermintCore有1秒的最終性。
2.你要構建的應用所需的快速程度?
如果你構建的是游戲應用,每個動作前需要等待15秒鐘是否合理?由于以太坊的區塊時間,基于以太坊區塊鏈構建的游戲用戶體驗糟糕,因為它的吞吐量太低。然而,一個轉讓房屋證書所有權的應用可能非常適合在以太坊上運行。使用CosmosSDK構建應用,允許開發者使用現成的TendermintCore,它有更短的區塊時間和高吞吐量,每秒最高可以達到10,000筆交易。你可以通過為你的應用設置更少的驗證者數來實現這一目的,因為可以減少通信開銷,提高應用處理速度。
3.你要構建的應用所需的“去中心化”程度?
一些應用,比如游戲,可能并不需要顯著的抗審查特性,這只是去中心化的副產品。在理論上,驗證者可以創建卡特爾以及在游戲中實現區塊/逆轉交易以獲取利潤,這些在應用中真的重要嗎?如果它不那么重要,類似于EOS的區塊鏈可能適合你的應用場景,因為它有更快的交易速度且無需費用。
然而,有的應用,比如自治銀行,它對去中心化要求很高。盡管以太坊被認為是去中心化的,但有些支持者聲稱,以太坊礦池的集中也是其中心化趨勢一個重要體現,事實上,它只有11個驗證者。
構建自己的區塊鏈而不是基于其他智能合約平臺來構建應用的一大好處是,你可以為自己應用定制驗證方式。然而,構建自己的區塊鏈非常困難,因此,從這方面來說,使用CosmosSDK非常有用,可以輕松構建自己的區塊鏈,并自定義應用所需的去中心化程度。
4.如果系統停止是否可以接受?
如果你構建的是類似于去中心化的共享騎行應用,那么,確保服務全天候運行可能是最高優先級的,即使出現一些偶然的錯誤,例如交易被逆轉。
TendermintCore的一個屬性是,如果網絡驗證者之間存在分歧,網絡將選擇停止,而不是進行不正確的交易。一些應用,例如去中心化的交易所應用,需要不惜一切代價確保正確性。如果存在問題,可以暫停去中心化交易,而不是進行可逆轉的交易。
結論
不存在單個“最好”的共識算法。每個算法都有它自己的權衡取舍。但是,通過理解共識流程,并建立一個框架來思考你的應用可能需要何種共識算法,能有助于你在選擇區塊鏈時,做出更明智的決策。當然,還有其他因素需要考慮,例如開發者工具、社區等。
總的來說,PoW和PoS并不是共識算法。它們是“抗女巫攻擊”的機制,可以幫助挑選區塊提議者。
兩種主要的共識家庭是中本聰共識和經典共識。這些算法用于就區塊鏈中的區塊達成共識。每種共識算法都有自己的權衡取舍。根據應用的場景來選擇共識算法和智能合約平臺。要考慮的因素:
l最終性
l速度
l去中心化程度
l活性
親愛的用戶: 您好! ZG.COM推出第二期鎖倉有獎活動!!!該活動將持續1周,具體時間為2019年8月26日14:00:00-2019年9月2日14:00:00,鎖倉時間為3個月.
1900/1/1 0:00:00活動時間 北京時間2019年8月28日16:00–2019年9月4日16:00 活動內容 1、50萬EGG空投,BIX用戶專享活動期間,Bibox將統計用戶BIX日均鎖倉量,每鎖倉1.
1900/1/1 0:00:00近日,清華大學李稻葵與厲克奧博發文《Libra對人民幣支付體系的影響及對策建議》。文章稱,本質上講天秤幣和支付寶、微信支付是一樣的,只不過支付寶和微信支付直接與人民幣掛鉤,一塊錢的人民幣對應著微.
1900/1/1 0:00:00尊敬的用戶, BiKi.com即將開放THBC的充值、提現,并開放THBC/USDT交易對,具體時間如下:1、開放充值時間:8月24日11:00;2、開放提現時間:8月24日11:00;3、開放.
1900/1/1 0:00:008月21日晚,Dfund創始人、Bitfinex股東趙東在朋友圈預告了這一消息稱,近期Tether將會發行錨定離岸人民幣的穩定幣CNHT.
1900/1/1 0:00:00今天的封面是《海上的船只》,尤金·布丹這兩天,Tether計劃發行錨定離岸人民幣穩定幣CNHT的消息在幣圈持續發酵,消息源是趙東的朋友圈,鑒于趙東的Bitfinex股東身份.
1900/1/1 0:00:00