前言:本文簡單明了地闡述了達成共識的兩個主要流程:區塊的提議和區塊的共識達成。區塊的提議主要涉及到PoW和PoS機制,也就是工作量證明和權益證明的機制,用以抵抗女巫攻擊,安全地選出可靠的區塊提議者。區塊的共識達成則涉及到共識算法,主要包括中本聰共識和經典共識。中本聰共識采用最長鏈規則,經典共識則可實現最終性。每種共識算法都有自己的權衡取舍。本文作者JulianKoh和CherylSewHoy,由“藍狐筆記”社群的“曉L”翻譯。
區塊鏈共識是2017年和2018年最廣為討論的區塊鏈子領域之一。可以看到,很多公司試圖從零開始構建新的智能合約平臺,并與以太坊競爭,而其中的一個差異化或創新點就在區塊鏈的共識算法方面。試圖理解這些算法,并能對它們進行批判性比較,這對很多加密投資者來說,都是一項全職工作,毫無疑問,要掌握它們并不簡單。
為揭開這些“共識算法”的神秘面紗,不少人做了很多工作。但是,對于普通人來說,它們太過于技術化。一些概念,例如同步、安全/活性證明、不可能結果,這些有助于人們通局了解。不過,在我看來,對于大多數人來說,完全理解并不特別重要。
本文重點是區塊鏈的共識算法,而沒有提及更大的也是超級復雜的分布式系統領域。為了簡單易懂,還會放棄一些技術概念。
本文結束時,你應該理解PoW和PoS的區別,了解BFT的意思,最重要的是,當考慮在哪個區塊鏈上構建你的應用時,你應該知道它們的權衡是什么。
什么是共識?為什么很重要?
簡單來說,區塊鏈是一種公共數據庫,其中用戶就什么是正確的達成一致。比特幣是記錄所有交易的公共數據庫,保留了貨幣系統的完整性。有兩個主要問題需要理解:
1.就什么達成共識?
2.如何達成共識?
DID信用協議Getaverse已開啟IDO:據官方消息,DID信用協議Getaverse已于北京時間7月5日上午8點開啟IDO,持續到北京時間7月6日19:00結束。Getaverse IDO僅限于Getaverse白名單用戶參與,GETAIDO將100%釋放,每個白名單限購5,000枚GETA。GETA是Getaverse治理代幣,持有GETA的社區成員可參與治理提案、提高DID信用分、獲得生態系統激勵,以及獲得生態項目早期福利等。[2023/7/5 22:18:40]
我們需要有人提議,然后讓其他人選擇,直到達成某種形式的共識。就區塊鏈的情況,我們需要有人提議區塊,然后需要剩余節點接受區塊。
一個簡單的例子如下:
4位朋友嘗試并安排共同做事的時間
4個人嘗試并安排共同的時間來做事。每個人提出其可用時間。可以看到,有兩個共同可用的時間段,下午2點和6點。他們如何達成共識?在他們提出可用時間前,他們同意一個特定規則:每個人必須選擇最早的共同可用時間。在這種規則下,這意味著,他們將會在下午2點而不是下午6點見面。由此,他們達成了共識。
按照這種框架,我們將它類比擴展到比特幣區塊鏈:
人們就什么達成共識?
人們就區塊數據達成共識。區塊中包含有效的比特幣交易。在比特幣中,任何人都可以提議區塊,只要他們率先解決一個計算謎題。
人們如何達成共識?
人們同意接受最長鏈上的區塊。例如,如果鏈A的高度為100,而鏈B的高度為200,如果你收到鏈A上的區塊101和鏈B上的區塊201,你必須接受區塊201。有人在更短的鏈上添加區塊,可能是因為他們沒有意識到更長的鏈,但“最長鏈規則”確保一旦區塊在整個網絡中傳播,每個人最終就相同的事情達成共識。
數據聚合器Otherside Wiki發布庫存工具更新:6月26日消息,Yuga Labs元宇宙項目Otherside旗下數據聚合器Otherside Wiki發推稱,推出庫存工具更新,新功能包括快速市場數據訪問、交易指標快速顯示、合約資產視圖、錢包詳細信息等。同時,Otherside Wiki目前正在嘗試引入基于NFT地板價的損益(PnL)功能,預計很快將發布解決方案。[2023/6/26 22:00:13]
該框架支持所有共識算法。不同算法可以采用不同的方法來提議區塊,也可以使用不同的方式來對區塊達成共識。
提議區塊
考慮區塊提議時,最大的問題是誰來提議區塊。如果任何人隨時都可以提議區塊,會很難達成共識,因為這類似于人們不停地相互交談。必須以某種方式選出代表,這樣剩余的人可以一次看到一個提議。
最幼稚的方式是讓協議隨機選擇一個人來提議新區塊。然而,在互聯網上,一個人可以通過運行相同程序的一百個實例來偽裝成一百個人。因此,我們需要創造某種形式的稀缺性,以抵抗女巫攻擊。。
因此,這個游戲必須能夠抵擋單一黑客操縱很多人的攻擊。這正是PoW和PoS給你帶來的:一種讓計算機受到某些資源限制的方式。
PoW如下:為獲得提議區塊的權利,你必須率先完成計算密集型的任務。模擬一個虛擬的計算機拋硬幣任務,直到它得到連續100次的虛擬硬幣的正面。這是計算密集型的,沒有人能偽裝成一百人,因為這受制于其算力。
然而,通過采用這種“抗女巫攻擊”機制,人們已經建立了數千臺計算機組成的礦場,以便在算力競爭中勝出,從而獲得提議區塊的權利。這些服務器礦場消耗巨量電力,因此它們集中于可獲得最便宜電力的國家或地區。
那么,當大多數比特幣礦工位于中國時,這對于去中心化意味著什么?這種地理上的中心化給系統的長久性構成了真正的威脅,因為這些挖礦公司很容易被監管。
Bernstein:香港的加密監管方式可能會吸引資本和人才流向亞洲:金色財經報道,市場分析機構Bernstein在周一發布的研究報告中表示,中國香港證券及期貨事務監察委員會(SFC)對加密貨幣采取通過監管實現保護的做法,這與美國最近通過執法進行監管的行動形成了鮮明對比。這可能是加密貨幣行業的一個關鍵岔路口,可能會導致資本和人才流向亞洲,使其成為加密中心。
香港證監會周一公布虛擬資產交易平臺的擬議規則,并正在征求公眾意見。它計劃允許散戶投資者在受到限制的情況下訪問持牌交易所,理由是投資者更適合在持牌交易所交易,而不是通過離岸和不受監管的平臺進行交易。加密衍生品交易目前仍不在討論范圍內,因為香港證監會已將允許此類工具交易的決定推遲至稍后時間。新的許可制度預計將于6月1日生效,現有的加密交易所將有12個月的過渡期。尚未在香港運營的交易所在開始交易前必須完全合規。(CoinDesk)[2023/2/21 12:20:12]
比特幣礦場
PoS采用了跟PoW完成不同的“抗女巫攻擊”機制。既然要花錢購買比特幣挖礦計算機和購買電力,那么,為什么不只是用錢來選擇區塊生產者并將計算密集型過程跳過呢?PoS是這樣的想法:基于人們在系統中質押的錢多少來選擇區塊提議者,也就是人們在系統中擁有的代幣的比例。
在PoW中,擁有算力越多,被選為提議下個區塊的概率就越高。在PoS中,擁有的代幣越多,成為區塊生產者的概率就越高。
請注意,還沒有開始談論如何就區塊達成共識。有一種常見的誤解,認為PoW和PoS是共識算法。其實它們不是。它們只是通過約束稀缺資源的方式來選擇區塊生產者。
數據:Paxos金庫銷毀逾7202萬枚BUSD:1月17日消息,據鏈上數據顯示,被標記為Paxos金庫(Paxos:Treasury)的0xe25開頭地址約半小時之前銷毀72,024,270枚BUSD。[2023/1/17 11:16:19]
區塊共識
這是事情變得有趣的地方,也是近年來大部分創新發生的地方。一旦有人提議區塊,我們如何達成共識?這是從上個世紀80年代以來計算機科學家們一直試圖解決的問題,以在一些計算機偶爾發生崩潰時,其計算機集群也能同步。到了上世紀90年代,這些計算機科學家開始思考一個更難的問題:如果黑客可以控制其中的一些計算機呢?
他們能否構建足夠強健的系統,以確保所有非惡意的計算機依然能夠達成共識?這一特性被稱為“拜占庭容錯”,它是基于拜占庭將軍問題而來。BFT系統是一個相當小的研究課題,因為大多數系統并不需要這種級別的穩健性,因為大多數計算機集群通常都屬于單一公司。直到區塊鏈的到來,才改變了這一局面。
在區塊鏈中,任何人都可以運行節點,并且可以向其他節點發送信息或數據。這是一個真正對抗性的環境,因為惡意行為者可以假裝為誠實節點。例如,如果集群中的10個惡意計算機向其他9個計算機發送沖突信息,該怎么辦?
惡意計算機向不同的誠實計算機發送沖突信息
由于誠實計算機無法區分惡意和非惡意的計算機,這個問題變得非常棘手。解決這個問題有兩種主要方法:中本聰共識和經典共識。
中本聰共識
中本聰共識用于比特幣和大多數PoW系統中,由中本聰開創。它有一條單一規則:“當你看到提議的區塊擁有最多工作量證明,就接受它。”通常來說,具有最高編號的區塊擁有最多工作量證明。
NFT指數平臺RedHare(Redharenft)現已上線:據官方消息,NFT指數平臺RedHare(Redharenft)現已上線。
據悉,RedHareAnalyticsLtd.(\"RedHare\")允許投資者通過市場指數等傳統投資工具,在持續增長的NFT市場中,提供更快更好的決策。2022年5月,RedHare推出全亞洲首個NFT指數(RHNI),該指數反映整個NFT市場的表現。與此同時,RedHare也為每個頂級NFT項目,包括CryptoPunks、BoredApeYachtClub(BAYC)、MutantApeYachtClub(MAYC)、Moonbirds、Sandbox等,建立單個的NFT指數,以反映該項目不同作品的整體表現。通過專業的數據,幫助投資者輕松地追蹤該項目的價格走勢,從而選擇合適的買入、持有及出售時機。[2022/6/6 4:06:04]
這意味著,對于你看到的區塊是否“正確”,你永遠沒有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?活性
------
風險警示:藍狐筆記所有文章都不能作為投資建議或推薦,投資有風險,投資應該考慮個人風險承受能力,建議對項目進行深入考察,慎重做好自己的投資決策。
8月27日,NewStar宣布完成2000萬人民幣的天使輪融資。 NewStar是由高維空間和99EX聯合共建的大文娛類鏈改項目,通過區塊鏈技術改造文娛行業底層經濟體系,將有價值的內容進行存證,
1900/1/1 0:00:00新浪最新發布的社交APP“綠洲”引入了數字資產“水滴”。盡管產品或因涉嫌Logo抄襲而下架,但它利用區塊鏈元素的做法備受市場關注.
1900/1/1 0:00:00時間對于分布式賬本技術的意義不言而喻,任何賬本都需要達到「有序」,而在時間和狀態分離的時鐘體系中,時間和狀態并非耦合綁定,鏈上交易的時間戳將會被編碼,交易像水一樣在網絡間流動.
1900/1/1 0:00:00注:關于比特派莽撞冠以imToken各種假名,請見imToken官方聲明。本文是我個人想跟比特派創始人及他的團隊,各媒體們、朋友們,以及imToken的伙伴們,聊聊我們做過的事情和想要做的事情.
1900/1/1 0:00:00導讀:整個區塊鏈的圈子里面,不乏投資者,投機者,開發者,項目方,最稀缺的是C端的“消費者”,因為沒有應用和內容真正解決了消費者的需求.
1900/1/1 0:00:00根據IEEE此前的一項調查,Python已成為最受開發者歡迎的語言之一。由于其對于技術小白天然友好的特性,以及不斷更新的新功能。Python越來越受到國內外開發者的喜愛.
1900/1/1 0:00:00