作者|ColinSchwarz
編譯|Jhonny
背景信息
在本系列的第一篇文章《Serenity將帶來什么?》中,我們概述了以太坊網絡發展至今的歷史,并解釋了備受期待的Eth2.0將解決的主要問題。在第二篇文章《以太坊2.0:如何實現擴展性?》中,我們介紹了Eth2.0中有望實現的Plasma、狀態通道等Layer2擴容方案和Sharding(分片)擴容方案。在本文中,我們將探討Eth2.0將使用的Casper共識機制,并介紹實現Casper機制的信標鏈。建議讀者結合之前的兩篇文章來對Eth2.0有著更加深入的了解。
共識算法
在傳統的價值和信息交換網絡中,通常有一個中介機構來保護和驗證網絡。例如,銀行為客戶的資產提供安全保障,并對客戶的在線交易和信息進行中心化的控制。而在區塊鏈領域,由于區塊鏈網絡是去中心化的,因此不需要這樣的中介機構。
由于沒有中介機構,區塊鏈網絡就必須使用某種形式的系統來維護安全,并確保添加至分布式賬本中的新信息的有效性。
也就是說,區塊鏈網絡的大多數節點必須就單一版本的網絡狀態“達成共識”,以便保證網絡的安全。
為了實現這個目的,區塊鏈使用各種“共識算法”,這些算法是一組被寫入協議代碼中的預定義規則,允許網絡達成共識并實現最終性(finality)。最終性的意思就是“一旦完成了特定的操作,該操作將永遠銘刻在歷史記錄中,并且該操作將不可被逆轉。”。
共識算法決定了網絡的安全性、確認速度,以及在分布式賬本中對交易進行排序和驗證的方式,從而提供真實的賬本記錄。這確保了通過去中心化的方式,添加至區塊鏈中的新區塊將是系統中唯一的真相版本。
工作量證明(PoW)是最早由比特幣使用的區塊鏈共識算法,該算法確保了比特幣網絡的安全性和去中心化。最近,出于很多原因,很多其他區塊鏈平臺已經引入了諸如PoS(權益證明)、DPoS(代理權益證明)和PoA(權威證明)等其他共識算法。
為何需要PoS?
諸如比特幣等工作量證明(PoW)系統涉及許多通過計算機硬件連接至區塊鏈網絡的礦工。PoW共識算法會為每個新區塊設定一個目標值(targetvalue),礦工們會競相成為第一個找到該目標值并添加該新區塊,這樣就可以獲得挖礦獎勵。
為此,他們通過一個哈希函數來運行被提議區塊的區塊頭數據(headerdata),該哈希函數將返回/輸出一個固定長度的字符串(哈希值)。礦工會一直改變他們輸入的“nonce值”,也即對這個區塊頭重新運算哈希,直到輸入的“nonce值”生成的哈希值與該目標值相匹配。此時,新區塊將被廣播至網絡中的所有節點,這些節點將驗證該區塊并將之添加至賬本中,而成功挖出此區塊的礦工將獲得挖礦獎勵。
PoW系統的關鍵方面是,找到正確的哈希輸入需要大量的計算能力(也即存在挖礦難度),但是一旦礦工找到了正確的輸入(也即“nonce值”),就很容易驗證輸出(也即哈希函數返回的哈希值)。挖礦過程的難度保證了網絡的安全性,而節點驗證每個區塊是相對簡單的,這使得成千上萬的網絡節點可以維護該區塊鏈的最新記錄。
以太坊網絡當前已銷毀256.62萬枚ETH:金色財經報道,據Ultrasound數據顯示,截止目前,以太坊網絡總共銷毀2566274.76枚ETH。其中,ETHtransfers銷毀236865.62枚ETH,OpenSea銷毀230049.74枚ETH,UniswapV2銷毀130520.69枚。
注:自以太坊倫敦升級引入EIP-1559后,以太坊網絡會根據交易需求和區塊大小動態調整每筆交易的BaseFee,而這部分的費用將直接燃燒銷毀。[2022/7/31 2:48:46]
但不幸的是,通過哈希找到每個目標值的難度需要大量的計算能力和電力,這降低了網絡的效率和礦工的利潤。所有礦工都必須花費大量的電力和計算來試圖確認區塊并贏得獎勵,但只有其中一個礦工會成功地挖出新區塊。正因為如此,每個區塊的挖掘都會造成大量電力和計算的浪費。這意味著盡管PoW算法能夠保證網絡安全,但該算法的效率非常低。
PoW區塊鏈除了效率低下外,挖礦領域還容易受到市場壟斷的影響,因為這種挖礦方式給予了那些擁有更多資源的參與者不公平的優勢。有錢有勢的個人和組織能夠負擔得起大量更快、更強大的挖礦硬件設備,這使他們有更大的機會成功地挖出新的代幣。當前,大約65%的比特幣挖礦是由5家大型挖礦集團完成的,理論上他們可以聯合起來控制50%以上的算力市場(盡管他們不太可能會這么做)。這就造成了一種情況,比特幣和其他PoW區塊鏈網絡并不像它們最初設想的那樣去中心化,這危及了它們的獨立性和實用性。
PoS(權益證明)最早出現于2012年,是為了解決PoW機制在效率、成本和中心化等方面的問題而提出的。事實上,以太坊團隊從項目一開始就計劃過渡到PoS,但是直到最近才制定了通過Casper機制來實現這一過渡的計劃。在PoS系統中,整個挖礦過程都是虛擬的,從而消除了對昂貴且低效的挖礦硬件的需求。能源消耗被經濟激勵和博弈論所取代,作為一種保護網絡和驗證區塊的手段。
在PoS網絡中,“礦工”被“驗證者”所替代,這些驗證者都擁有該網絡的原生代幣。驗證者通過質押(staking)一定數量的代幣來參與網絡中的區塊驗證(包括提議區塊和對區塊進行證明),如果該被提議/證明的區塊被添加進了網絡中,那提議/證明該區塊的驗證者都將獲得與質押成比例的獎勵。在PoS網絡中,由于不存在PoW那樣的挖礦,使其比PoW系統的成本效益和能源效率要高幾千倍。
“NothingatStake”的問題
實現PoS共識證明算法的最大問題之一是“NothingatStake(作惡無成本,好處無限多)”的問題。自2013年以來,人們一直在嘗試PoS共識,Peercoin等早期采用者很快就遇到了這個問題。
PoS協議的早期采用允許任何擁有網絡原生代幣的人充當網絡驗證者,這些PoS項目假定那些擁有代幣的人對網絡的成功有既得利益(即會為了自身利益而自發地參與進來成為驗證者,并誠實地進行驗證)。
在假定擁有更多代幣的人幾乎沒有動機會進行攻擊的前提下,那些擁有更多代幣的人被賦予了更多的驗證權。
數據:以太坊鏈上錨定BTC的代幣總量為151300枚:DeBank數據顯示,以太坊鏈上錨定BTC的代幣總量為151300枚,其中,WBTC總量為122831枚,renBTC總量為16935枚,HBTC總量為6010枚。[2020/11/29 22:30:20]
然而,早期的PoS項目很快意識到這種邏輯是有缺陷的。通常,礦工/驗證者只會被提供一個區塊進行驗證。然而,由于延遲的原因,常常會有多個區塊被提議,并向礦工/驗證者提供兩個可供選擇的區塊。
在傳統的PoW系統中,礦工一次性只能在一條分叉鏈中進行挖礦。要成功地將一條非法的分叉鏈取代之前的“權威鏈”(也即最長鏈),那需要擁有50%以上的網絡算力,這對于比特幣等大型PoW區塊鏈網絡來說是非常困難的。
而在PoS網絡中,驗證者是有可能同時對兩條不同的分叉鏈上的區塊進行驗證的,而且不需要承擔額外的費用。事實上,在PoS采用的早期階段,從理論上講,驗證者在任何可用的分叉鏈上進行staking都符合自身的經濟利益,因為這樣做,無論哪條分叉鏈被確認,驗證者都會獲得交易費用獎勵,這就是“NothingatStake(作惡無成本,好處無限多)”問題。
這種問題的最糟糕后果可以通過以下幾個安全性假設來加以闡述:
驗證者將試圖實現自我利潤的最大化,即便這會損害整個網絡;
沒有驗證者會無私地進行驗證(只在一條鏈上驗證區塊);
驗證者將修改它們的軟件,或者下載修改后的軟件,從而允許他們驗證多條分叉鏈(標準軟件帶有內部邏輯,用于在發生分叉時選擇正確的分叉鏈)。
由于上述這些安全性假設,可能會導致出現多條分叉鏈,使得網絡共識出現延遲并更加復雜,如果不加以解決,還可能導致網絡出現重大的安全漏洞。如果每個驗證者實際上都可以對網絡中每條分叉鏈的區塊進行驗證,那么惡意驗證者將能夠最少通過1%的驗證權就可以進行雙花攻擊(也即對同一筆代幣花費多次)。他們可以將代幣通過其中一條分叉鏈發送至某個交易所,然后將代幣從該交易所中提現,之后只驗證另一條分叉鏈上的區塊。
由于假設所有驗證者都在對兩條不同的分叉鏈進行驗證,第二條鏈將會獲得越來越多的證明并最終成為唯一有效的鏈。這意味著,之前在第一條分叉鏈上支出并從交易所提現的代幣交易將不再有效。如此一來,一筆成功的雙花支出就發生了,而交易所也被騙走了資金,無論涉案金額有多大。
實際上,這幾乎是不可能的場景,因為肯定有很多驗證者是誠實的,并且他們只驗證一條正確的分叉鏈。更有可能的情況是,攻擊者需要在網絡中擁有超過1%的驗證權,或者賄賂或與其他驗證者合謀,才可能完成更復雜的群體攻擊。無論哪種方式,早期的PoS算法都沒有PoW算法那么安全,而PoW算法在51%的攻擊可能發生之前都是安全的。
簡而言之,PoS的早期嘗試由于缺乏要求每個驗證者需要質押實際價值,這導致了網絡很可能出現延遲、復雜和不安全等問題。
動態 | MakerDAO鎖定以太坊占比達年內最低:過去一個月內,鎖定在MakerDAO上的以太坊在總流通量中占比不斷下降,由1.74%降為0.79%,這也是今年年初以來最低的水平。發生這種變化的原因是,ETH 價格在過去一月不斷下跌,降幅將近30%,促使更多的用戶贖回抵押債倉(CDP)。[2019/12/17]
“NothingatStake”問題的解決方案:Casper
幸運的是,以太坊團隊已經從早期PoS項目的缺點中吸取了教訓,并設計了Casper協議來消除“NothingatStake”的問題。2014年,Vitalik在一篇名為《Slasher》的文章中首次提出了消除“NothingatStake”問題的想法。文中提出了一個簡單的解決方案:“讓主鏈意識到其他的分叉鏈。之后,如果一名礦工被抓到同時在兩條鏈上進行挖礦,該礦工將受到懲罰。”
盡管這一概念自被提出以來已經得到了很大的發展,但這一概念成為了Casper共識算法的基礎。
Casper是一種用于對那些驗證多條分叉鏈的驗證者或者對網絡造成損害的驗證者進行懲罰的算法。
Casper的第一個實現將使用以太坊當前的PoW提議機制在Eth2.0鏈上引入新的區塊。如果兩個區塊同時被提議,那驗證器只會因為在一條鏈上進行質押而獲得獎勵,因此通過當前的Eth1.0鏈來下注是有意義的,因為這條舊鏈是最有可能成功的鏈。
更重要的是,Casper協議引入了一種機制,即如果任何驗證者試圖通過同時驗證多個區塊來支持某條無效的分叉鏈,那該驗證者質押的代幣資產將被銷毀。這是通過執行兩條“Casper戒律”的特殊保護機制來實現的:
第一條“Casper戒律”是,驗證者不能在同一區塊高度發布兩個不同的投票(即不能在同一個區塊高度簽署兩個不同的區塊);
第二條“Casper戒律”是,驗證者不能在已經投票的情況下,在其他投票時間范圍內再次進行投票。
任何違反其中一條戒律的驗證者都被認為是惡意驗證者,并且他們的全部存款(不僅僅是他們的質押金)將被罰沒。為了提高網絡的可用性和減少對交易的審查,那些節點離線的驗證者也會受到適度懲罰。具體參見Unitimes此前發布的文章《Eth2.0AMA第二期|Vitalik:以太坊2.0已沒有未解決的研究挑戰》。Casper研究者VladZamfir將這種全新的PoS安全機制比作是在PoW系統中任何發動51%攻擊的人所使用的挖礦硬件都會即刻著火并燒毀。
如果Casper機制正確地加以實現,那它將消除“NothingatStake”的問題,并使以太坊網絡安全地過渡到PoS機制。
Casper實際上是由以太坊基金會進行的兩個不同但相關聯的研究項目的融合,即CaspertheFriendlyFinalityGadget(FFG)和CaspertheFriendlyGHOST:Correct-by-Construction(CBC)。
動態 | 11月以太坊智能合約創建數較上月下跌42%:據安比實驗室數據顯示,2018 年11月份以太坊主網智能合約創建總量為 58,490,較上個月大幅回落,跌幅達 42%。11月創建合約數量排名第一的為 「0x9862D074e33」開頭的地址,共創建合約 7,098 個。該地址似乎始終處于極度活躍狀態,曾連續多月大量創建合約。經逆向分析,該地址創建合約字節碼完全一致,疑似為多重簽名錢包合約。此外,集中查看ERC20 Token合約的創建情況數量變化趨勢發現,ERC20 合約創建數量為6,392,與上個月的創建總數(6,282)基本持平,維持近10個月低位,創建熱度依然無任何回升跡象。[2018/11/30]
CasperFFG將使以太坊從PoW共識機制平穩地過渡為PoS共識機制。因此,CasperFFG模式通過將這個新的PoS協議覆蓋到當前的以太坊PoW協議上,從而集成該全新的PoS協議。區塊依舊是通過PoW方式進行挖掘,但每個epoch期間的最后一個slot就是PoS的檢查點(每生成64個區塊(大約需要6.4分鐘)稱為一個epoch),網絡驗證者會在檢查點對自上一個檢查點以來的區塊最終性(finality)進行評估。CasperCBC將會在FFG之后實現,用于完成向PoS共識的轉變。
信標鏈
Casper權益證明機制將通過信標鏈(beaconchain)加以實現,信標鏈將是一條與當前以太坊PoW鏈并行運行的獨立鏈。信標鏈將是Eth2.0鏈的“系統鏈”,其主要職責將是存儲和維護驗證者注冊表、處理分片鏈和信標鏈之間的交聯(crosslink)以及在每個epoch期間打亂和分配驗證者至各個分片鏈中(Eth2.0系統中將存在1024條分片鏈)等等。
用戶通過一個將部署在當前以太坊舊鏈上的智能合約中發送32ETH(質押金)就可以參與到信標鏈的權益證明協議中來。這筆質押金將生成一個收據(receipt),該收據將包含一個顯示該驗證者被分片至哪條分片鏈的ID(閱讀此文章了解更多有關分片的信息)。
用戶進行了質押之后,將會成為信標鏈中的待定驗證者(pendingvalidator)。在等待一段時間后,用戶才會被“激活”成為有效驗證者(activevalidator),之后就可以參與PoS協議驗證了。只有當信標鏈處理了來自Eth1.0鏈生成的抵押收據之后,用戶才可以被“激活”成為有效驗證者。被激活的驗證者將輪流提議新的區塊和對區塊的有效性進行投票。
Casper的早期版本將使用現存的PoW提議機制,之后的版本將使用更為有效的提議機制。Vitalik展望“將區塊提議轉變為一種PoS循環區塊簽名機制。”為了組織驗證者串謀發起攻擊,信標鏈通過實現隨機性來隨機地將驗證者分配到不同的分片鏈中來進行區塊提議/投票驗證。如果驗證者不知道自己何時會被分配到哪條分片鏈中,那就能阻止他們提前串謀發起攻擊。
在遇到分叉的情況下,驗證者將使用他們客戶端的信標鏈分叉選擇規則來自動地選擇正確的鏈。該分叉選擇規則通過“LastMessageDriVENGreediestHeaviestObservedSubTree(LMDGHOST,由最新消息驅動的GHOST)”來決定哪條鏈才是“規范鏈”。潛在攻擊者如果想要對錯誤的分叉鏈進行驗證,那就必須手動修改或消除LMDGHOST分叉選擇規則。
聲音 | eToro CEO:以太坊仍是最受歡迎的智能合約平臺:據bitcoinexchangeguide消息,eToro CEO Yoni Assia接受采訪時表示,他看好以太坊這一全球最常用的智能合約平臺,以太坊區塊鏈在未來將通過新的應用程序和智能合約技術獲得大量價值。[2018/9/11]
對于每個區塊,其中一個激活驗證者將被選中對新區塊進行提議,其他驗證者將通過投票的方式來證明該區塊的有效性。Casper的早期版本要求驗證者為他們提交的每個證明發送一筆鏈上交易,但這會增加主鏈的負荷,并加重Eth2.0致力于解決的擴展性問題。根據當前的設計,信標鏈將會負責PoS機制,這樣驗證者的投票就不會爭奪PoW鏈或者分片鏈上的空間。
證明(attestations)將是信標鏈負荷的主要來源,因此應該盡可能地將證明聚合起來,這是很重要的。證明(attestations)可以是分片鏈中的驗證者對分片鏈區塊的投票,或者是信標鏈中驗證者對信標鏈區塊的投票。一旦每個分片鏈區塊獲得了足夠多的證明(即投票),該區塊就會被被添加進該分片鏈中,并會通過一個稱為crosslink(交聯)的方式將該分片的狀態提交至信標鏈中進行證明。在實現各分片鏈之間的異步跨分片通信中,交聯也將起著重要的作用。
路線圖
信標鏈(也即Eth2.0的階段0)將有望于2020年初啟動,但只有當系統中質押的ETH數量達到最低數量要求,且至少存在三個處于生產就緒的客戶端,信標鏈才能成功啟動。預計之后的階段1和階段2將分別于2021年和2020年推出。
階段1將引入基本的分片鏈結構,也即本質上是一個分片結構的試運行階段,用于測試分片系統將如何運行。因此,階段1將不會立即實現分片的全部擴展性潛力。此階段將解決分片鏈的共識和最終性,并將允許信標鏈監控分片鏈的執行。
階段2將見證一個完全集成分片的Eth2.0系統,分片將成為完全運行的鏈。階段2也將引入全新的以太坊虛擬機eWASM。
需要注意的是,盡管這些階段在概念上是分開的,但由于各階段存在的相互關聯性,因此各階段的工作都在同步進行中。
此外,當前在改進Eth1.0鏈的努力也在進行中,也即Eth1.x,其目的是通過客戶端優化來提升網絡的吞吐量,實施“statefees(狀態費)”來確保運行全節點的可持續性,以及穩定交費易和開發出可用于將Eth1.x鏈與Eth2.0鏈連接起來的最終性小工具(finalitygadget)。
特別感MarinPetruni?和AidanHyman審閱了本文并使許多有價值的建議。此外,這篇文章也離不開許多其他偉大的作者和研究人員在該領域所做的工作。感謝所有參與創建和發布本文引用資源的人!
文中涉及的鏈接:
“PoWvsPoS—thedebatedefined.
”https://bravenewcoin.com/insights/pow-vs-pos-the-debate-defined
“WhatistheEthereumCasperProtocol?
”https://blockgeeks.com/guides/ethereum-casper
“HowEthereumMiningWorks.”
https://www.coindesk.com/information/ethereum-mining-works
“UnderstandingProofofStake:TheNothingatStakeTheory.”
https://medium.com/coinmonks/understanding-proof-of-stake-the-nothing-at-stake-theory-1f0d71bc027
“Slasher:APunitiveProof-of-StakeAlgorithm.
”https://blog.ethereum.org/2014/01/15/slasher-a-punitive-proof-of-stake-algorithm/
“CaspertheFriendlyFinalityGadget.
”https://arxiv.org/pdf/1710.09437.pdf
“Eth2.0Specs.”Github.
https://github.com/ethereum/eth2.0-specs
“Ethereum2.0.”Medium.
https://medium.com/rocket-pool/ethereum-2-0-76d0c8a76605
“BeaconCasperChainTalk.”
https://www.youtube.com/watch?v=zqL_cMlPjOI
“EthereumCasperUpdateExpectedin2019,Shardingin2020.
”https://unhashed.com/cryptocurrency-news/ethereum-sharding-update-expected-2020/
WordsofMarinPetruni?.
https://medium.com/chainsafe-systems/ethereum-2-0-a-complete-guide-scaling-ethereum-part-two-sharding-902370ac3be
參考文獻:
Blockgeeks.“WhatareEthereumNodesAndSharding?”AccessedSeptember17,2018.
https://blockgeeks.com/guides/what-are-ethereum-nodes-and-sharding.
Blockgeeks.“WhatistheEthereumCasperProtocol?”AccessedOctober12,2018.
https://blockgeeks.com/guides/ethereum-casper
Buterin,Vitalik.“Slasher:APunitiveProof-of-StakeAlgorithm.”EthereumBlog.Jan15,2014.
https://blog.ethereum.org/2014/01/15/slasher-a-punitive-proof-of-stake-algorithm/
Buterin,VitalikandJustinDrake.“BeaconCasperChainTalk.”FilmedatShardingMeeting#2inBerlin.PublishedJuly16,2018.Video.
https://www.youtube.com/watch?v=zqL_cMlPjOI
Buterin,VitalikandVirgilGriffith.“CaspertheFriendlyFinalityGadget.”EthereumFoundation.lastrevised15Nov2017.
https://arxiv.org/pdf/1710.09437.pdf.
Chan,Justin.“PoWvsPoS—thedebatedefined”BraveNewCoin.Mar1,2018.
https://bravenewcoin.com/insights/pow-vs-pos-the-debate-defined
“Eth2.0Specs.”Github.AccessedNovember14,2018.https://github.com/ethereum/eth2.0-specs
Hertig,Alyssa.“HowEthereumMiningWorks”.Coindesk.AccessedFebruary11,2019.
https://www.coindesk.com/information/ethereum-mining-works
Kramer,Melanie.“EthereumCasperUpdateExpectedin2019,Shardingin2020.”Unhashed.July7,2018.
https://unhashed.com/cryptocurrency-news/ethereum-sharding-update-expected-2020/
Langley,Darren.“Ethereum2.0.”Medium.August7,2018.
https://medium.com/rocket-pool/ethereum-2-0-76d0c8a76605
Martinez,Julian.“UnderstandingProofofStake:TheNothingatStakeTheory.”Jun7,2018.
https://medium.com/coinmonks/understanding-proof-of-stake-the-nothing-at-stake-theory-1f0d71bc027
Vidrih,Marko.“RoadmapChangeatEthereum—ShardingandCasperattheSameTime?”Medium.Jun17,2018.
https://medium.com/@VidrihMarko/roadmap-change-at-ethereum-sharding-and-casper-at-the-same-time-745f0587ae10
Tags:ETHTHESPEINGtogetherbnb更新了嗎togetherbnb房東模擬器SPEEDPetKingdom
狂人本著負責,專注,誠懇的態度用心寫每一篇分析文章,特點鮮明,不做作,不浮夸!本內容中的信息及數據來源于公開可獲得資料,力求準確可靠,但對信息的準確性及完整性不做任何保證,本內容不構成投資建議.
1900/1/1 0:00:00正在閱讀本文的你,很可能已經聽說過?DAPP網絡,DAPP網絡提供了?vRAM和其他類型的服務,幫助開發者創建新一代可擴展、易使用的dApp.
1900/1/1 0:00:00北京時間8月27日8點,反映加密貨幣市場整體走勢的ChaiNext100指數報905.02點,過去24小時上漲1.31%,成交額361.24億美元,成交較前24小時增加18.79%.
1900/1/1 0:00:00DragonEx開放平臺新產品上線公告 2019-08-27 親愛的用戶: DragonEx開放平臺將于2019年08月27日15:00上線新產品.
1900/1/1 0:00:00公告編號2019081701各位關心ZBG.COM的項目方和投資者們:近期,數字資產在全球范圍受到更多關注,同時我們接到用戶反饋,有不法分子冒用ZBG名義開展詐騙行為.
1900/1/1 0:00:00“來自華爾街,去年回國的某數字貨幣交易團隊向交易門透露,稱他們已開始利用其積累的專業量化交易技術應用到國內的相關鞋交所中。已交易資金收益率高達月化收益70%.
1900/1/1 0:00:00