文章作者:PreethiKasireddy
文章翻譯:Blockunicorn
“區塊鏈無法擴展”你可能已經聽過一百萬次了。幾年前,這感覺像是對該行業的真正威脅。如果我們甚至不能每秒處理15筆交易,我們如何為沒有銀行賬戶的人提供銀行服務?
但大問題推動了創新,區塊鏈的可擴展性是一個大問題。它很快引起了工程師和科學家的注意,直至今天,我們對區塊鏈可以擴展越來越有信心。事實上,當前的大多數爭論都關注哪種可擴展性解決方案將獲勝。這就是為什么在這篇文章中,我將分解一些在過去五年中探索過的以太坊可擴展性解決方案——并解釋這些解決方案如何成為可能成為贏家的墊腳石:匯總
面對“可擴展性三難”
如果不提到著名的“可擴展性三難困境”,我們就無法談論可擴展性。該術語由Vitalik創造,用于解釋區塊鏈旨在擁有的三個屬性:可擴展性、去中心化和安全性。很明顯,到目前為止,我們可以實現其中兩個屬性。但是要同時獲得這三個是非常非常困難的。
在我們理解為什么之前,讓我們把我們的條款弄清楚。
1.可擴展性只是意味著區塊鏈可以處理大量事務,以每秒事務數(TPS)衡量。
2.去中心化意味著區塊鏈由世界各地的許多“去信任”節點運行——而不是由一小群集中的“受信任”節點運行。3.安全性意味著即使網絡中一定百分比的節點是惡意的,區塊鏈也能抵抗攻擊。理想情況下,它應該能夠處理多達50%的惡意節點。Vitalik創建了一個簡單的三角形,每條邊代表三個屬性之一。三角形的每一邊代表能夠實現3個屬性中的2個的不同類型的區塊鏈解決方案。
去中心化和安全
三角形的底部是傳統的區塊鏈,如比特幣和以太坊1.0。
這些類型的區塊鏈是:
去中心化:是的。因為世界上任何人都可以選擇成為挖礦節點。全世界有成千上萬的礦工參與保護比特幣和以太坊網絡的安全。也無需授權自己為礦工;這是完全不信任的。
安全:是的。因為網絡中的每個節點都保留了區塊鏈的副本并驗證每筆交易。此外,工作量證明旨在處理高達50%的惡意節點。
可擴展性:不能。憑借其安全性,網絡中的每個節點都保留一份區塊鏈副本并驗證每筆交易。雖然安全,但效率低下,導致延遲和吞吐量非常低。對于比特幣,每秒大約7筆交易,對于以太坊,每秒大約15筆交易。
安全且可擴展
三角形右邊是典型的高TPS鏈,比如幣安智能鏈。他們使用一種稱為“Proof-of-stake-authority”的共識算法,其中“選舉”了21個節點來生成新塊。每24小時,2月15號更名為BNBChiin,從21個節點擴展到41個節點。將選出一組新的41個節點來在24小時內生成新塊。
安全:是的。每個“選舉”節點被授權,因此我們控制系統中的對手。
可擴展:可以。由于少量的選舉節點在任何時候都會產生新的塊,因此我們可以獲得更高的事務吞吐量和更低的延遲,這意味著與每個節點都必須驗證每個事務相比,交互費用更低。
去中心化:不夠去中心化。由于只有41個選舉產生的驗證者,它比傳統的區塊鏈去中心化要少得多。此外,每個“選舉”節點被授權,因此我們將信任介紹到系統中,使其減少分散。
可擴展和去中心化
三角形的左側是多鏈生態系統,例如Cosmos、Polkadot和Avalanche。這些系統有許多獨立的區塊鏈網絡,它們都作為更大區塊鏈網絡的一部分進行通信。
可擴展:是的。由于我們不再需要將所有狀態存儲在單個區塊鏈上,因此我們可以將狀態拆分到許多獨立的區塊鏈中,從而實現比傳統區塊鏈更高的可擴展性。
波卡生態系統7支團隊成立維護社區道德規范的Polkadot聯盟:11月29日消息,據波卡DeFi平臺Acala官方博客,Polkadot生態系統的Acala、Astar、Interlay 、KILT Protocol、Moonbeam、Subscan和Phala 七支團隊宣布成立Polkadot聯盟,旨在建立和維護一套供社區遵循的道德規范。聯盟將存在于鏈上,并將在鏈上發布其對不法網站和賬戶的調查結果。但它不會有任何治理權;它的范圍不涉及Polkadot協議的其他部分。
聯盟成員由公司、項目、其他集體,甚至是Polkadot生態系統中的其他網絡組成。會員資格分為兩層:伙伴(Fellow)和盟友(Ally)。伙伴對聯盟議案擁有投票權,并進行鏈上操作。盟友是波卡聯盟的成員,沒有投票權。[2022/11/29 21:09:23]
去中心化:看情況而定。生態系統中的每個區塊鏈都有一組驗證區塊鏈的節點。生態系統中的一些鏈會有很多驗證者,而另一些鏈可能很少甚至只有一個。因此,去中心化的程度取決于我們所指的生態系統中的哪條鏈。
安全:不太安全。如果生態系統中有一條鏈受到攻擊,那么它可能會對系統的其余部分產生連鎖反應。例如,如果鏈B受到攻擊,而鏈A、C和D都依賴它,那么其他鏈也會受到影響。
如您所見,在擴展區塊鏈方面有許多不同的嘗試,但它幾乎總是以這三個屬性之一為代價。Vitalik和以太坊社區一直不愿意做出這種妥協,他們的目標是獲得所有三個。
在我們了解這如何可能之前,了解另一件事很重要:第1層擴展與第2層擴展。
了解第1層和第2層擴展
在最高級別,第1層擴展是指擴展核心區塊鏈本身。相比之下,第2層擴展是指將交易從主區塊鏈層移到可以與主鏈通信的單獨層中。
以太坊希望同時使用第1層和第2層解決方案來解決可擴展性的三難困境,分片是以太坊的第1層解決方案,而匯總是以太坊的第2層解決方案。
以太坊最早的二層解決方案
但是匯總和分片必須等待片刻。首先,我們應該記錄以太坊過去探索的第2層擴展解決方案,然后最終得出匯總,即以太坊的“圣杯”。畢竟,這就是工程的工作方式——我們提出想法、測試它們并進行迭代,直到找到可行的解決方案。
狀態通道
狀態通道已經存在了很長時間,所以它們并不是什么新鮮事。以下是它們如何工作的快速說明。假設我們有兩個人,愛麗絲和鮑勃,他們想互相交易。愛麗絲每次發推文都會向鮑勃支付1美元。但是由于Bob每天發很多推文,使用以太坊進行交易會太慢而且太貴。
相反,他們使用“狀態通道”:
愛麗絲在以太坊的智能合約中投入了500美元。
每當愛麗絲想給鮑勃1美元時,她都會簽署一條消息,表明她想給鮑勃多少錢。她一直在簽署消息,直到鮑勃準備好“兌現”他的資金。
鮑勃提交一條新消息,表明他已準備好關閉狀態通道。以太坊上的智能合約驗證愛麗絲和鮑勃的簽名,向鮑勃支付應付金額,并將其余款項返還給愛麗絲。
請注意,只有第一步和最后一步需要我們在區塊鏈上進行交易,在這些步驟之間,愛麗絲和鮑勃可以向對方發送無限數量的簽名消息,指示付款。在這種情況下,以太坊區塊鏈僅用作結算層來處理一次性付款的最終交易,這減輕了底層區塊鏈的負擔。
重點是:通過開辟一個在區塊鏈之外進行交易的渠道,我們在保持低成本的同時大幅提高了交易容量和速度。這是可能的,因為:
首先,大部分交易都發生在鏈下,這意味著付款可以即時處理,因為兩方之間的鏈下更新不需要額外的時間來處理和驗證區塊鏈網絡。
其次,支付產生的費用較低,因為我們只需要在打開和關閉狀態通道時進行鏈上交易。這意味著大多數交易都是在鏈下進行的,費用要低得多。
那么,為什么這不是最終的解決方案呢?好吧,狀態通道可以做的事情是有限制的。例如,我們不能使用狀態通道與不屬于狀態通道的人進行交易,我們也僅限于狀態通道中可能的狀態更新類型。像Uniswap這樣的復雜應用程序不能在狀態通道中使用,因為當我們在Uniswap上交換兩個代幣時,智能合約會自動執行一系列中間步驟來進行交換,這些步驟沒有授權用戶在每個步驟上簽字。狀態通道的另一個缺點是它們要求我們鎖定流動性以實例化通道并防止惡意交易對手可能永遠不會真正支付承諾資金的情況。這對于單一渠道來說可能沒問題,但是當我們試圖通過狀態渠道網絡進行支付時,鎖定在中間渠道中的流動性使其相當“資本效率低下”。最后,狀態通道需要可以定期監視網絡的人。這確保了您的資金安全,這又增加了一層復雜性和低效率。總而言之,狀態通道適用于兩方需要在一段時間內快速、廉價地進行交易的用例。但鑒于它們有限的用例和資本效率低下,我們并不認為狀態通道是以太坊的最終擴展解決方案。
盤和林:數字人民幣紅包之后將是更規范的雙層運營體系:10月9日消息,中南財經政法大學數字經濟研究院執行院長盤和林發文分析稱,深圳市數字貨幣紅包發放對于數字人民幣的推進過程是有劃時代意義的。他表示:其一,通過查詢此次紅包活動的具體規則可以發現,即便用戶沒有銀行卡,也依然可以申領紅包,也就是說,該紅包的領取和使用均可脫離銀行賬戶體系進行;其二,此次發放的紅包,更為接近真正意義上的現金。盤和林表示,此次紅包的發放,是讓數字貨幣從實驗階段逐步走向開始承擔貨幣職能的階段。深圳的紅包是數字人民幣推行過程中的里程碑,邁過這個重要的時間點,接下來就是更加廣泛的試點和更規范的雙層運營體系。(新京報)[2020/10/9]
側鏈
側鏈也已經存在很長時間了,而且很容易理解。簡而言之,側鏈是與主區塊鏈“掛鉤”的獨立區塊鏈。
當我們將一個區塊鏈“掛鉤”到另一個區塊鏈時,這意味著我們可以在兩個區塊鏈之間移動資產。“單向”掛鉤是我們將資產從主區塊鏈移動到側鏈的地方,而不是其他方式。這是通過將主區塊鏈上的代幣發送到不可使用的地址來“燒掉”代幣,然后在側鏈上“鑄造”等價的代幣來實現的。
那么,“雙向掛鉤”是我們可以將資產移入和移出主區塊鏈和側鏈的時候。這需要在主鏈上“鎖定”我們的代幣,然后在側鏈上“鑄造”等量的代幣。當我們想要轉換回原始代幣時,我們會“燒掉”側鏈上的代幣,然后解鎖主鏈上的代幣。
因此,側鏈是當我們創建一個與主區塊鏈雙向掛鉤的新區塊鏈時。當我們想要更快交易時,我們可以將我們的資金從主鏈轉移到側鏈并在那里進行交易。完成后,我們將資金轉移回主鏈。
比特幣側鏈的一個例子是LiquidNetwork。LiquidNetwork與比特幣掛鉤,允許更快、更便宜的比特幣支付。另一個流行的例子是Polygon,它是與以太坊掛鉤的側鏈。
當用戶想要更快交易時,他們可以鎖定一些ETH并在Polygon側鏈上創建等量的Matic代幣。在Polygon側鏈上,他們可以享受更快、更便宜的交易。當他們完成交易后,他們可以將他們的Matic代幣轉換回ETH。
注意:從技術上講,Matic不是側鏈,因為它會定期將側鏈的狀態提交給以太坊。因此,他們喜歡稱自己為“提交鏈”。
總體而言,側鏈是可擴展的,因為它們通常通過使用允許可擴展性的不同共識算法在去中心化和/或安全性方面進行權衡。對于以太坊網絡上的大量擁塞,側鏈是一個很好的權宜之計,但以太坊也不認為這是最終的可擴展性解決方案。隨著您繼續閱讀,原因將變得清晰:)
Plasma
Plasma是另一個“第2層”解決方案,可以讓我們將交易移出基礎層。在我們進入Plasma之前,重要的是要注意,隨著時間的推移,Plasma已經進行了多次迭代,每一次都有自己的權衡取舍。您可以查看Plasma世界地圖,其中列出了人們為解決Plasma帶來的挑戰而嘗試創建的許多不同類型的設計,有很多!
當然,為了這篇文章的目的,我必須概括Plasma的概念,而不是過多地關注個別的實現。如果您想深入挖掘,請務必查看世界地圖。那么,什么是Plasma?Plasma本質上是一系列在主區塊鏈之外運行的智能合約。
Plasma鏈就像一棵樹的樹枝,以太坊是主干,每條Plasma鏈都是一個分支,每個分支都被視為具有自己的區塊鏈歷史和計算的區塊鏈。“根區塊鏈”使用稱為“欺詐證明”的東西來強制Plasma鏈中狀態的有效性。欺詐證明是我們提供某些數據的一種機制,任何人都可以使用數學證明來確定數據是否無效。
廣州高新區鼓勵運用區塊鏈技術構建科學規范的數字安全制度體系:3月30日消息,廣州高新區注重通過制度創新給予“軟”保障,明晰數據產權,鼓勵運用區塊鏈技術構建科學規范的數字安全制度體系,推動公共數據逐步開放,加強關鍵新型基礎設施安全保護。同時,鼓勵數字經濟標準化建設。(科技日報)[2020/3/30]
每個Plasma區塊鏈不需要將交易數據發布到根鏈上。相反,每個Plasma鏈都有一個“操作員”。這可能是一個中心化的參與者,一個代表多個人的多重簽名,甚至是一個參與成為運營商的委員會。Plasma鏈的運營商提交Plasma鏈上發生的轉移的Merkle根。注意:如果您不知道Merkle樹的工作原理,那么我強烈建議您在繼續之前閱讀此解釋器。在高層次上,Merkle樹讓我們可以獲取一個大型數據集并生成一個代表整個數據集的單個根哈希。
稍后,我們可以很容易地證明來自大數據集的一條數據存在于該數據集中,只需提供通往該數據的分支。
如果有人試圖證明欺詐交易的存在,那么哈希值將不匹配,我們會立即知道。
好的,回到Plasma。
每個Plasma鏈都在提交發生在其上的轉移的Merkle根。當用戶稍后試圖將他們的資產從Plasma鏈移回根鏈時,用戶可以提交將資產發送給他們的最新交易的Merkle分支。這開始了一個挑戰期,任何人都可以嘗試證明用戶的Merkle分支是欺詐性的。如果Merkle分支存在欺詐,則可以提交欺詐證明。由于根區塊鏈僅跟蹤Merkle根,因此與那些發生在主鏈上的交易相比,它必須處理的數據要少得多。這顯著減少了存儲在根區塊鏈上的數據量,并使我們能夠擴展根鏈。此外,如果某個特定的Plasma鏈受到惡意攻擊,人們可以從腐敗的子鏈中“大規模退出”。
等Plasma比狀態通道更有利,因為您可以將資產發送給任何人,而使用狀態通道,您只能與狀態通道中的人進行交易。此外,等Plasma相對于側鏈的好處是等離子鏈由以太坊保護。
兩者的根本區別在于側鏈有自己的安全模型。他們有自己的共識機制和一組單獨的節點來驗證狀態。即使側鏈受到攻擊,主鏈也不會發生任何事情,反之亦然。如果側鏈發生攻擊,主鏈無法保護用戶。
另一方面,等Plasma具有依賴的安全模型,每個Plasma鏈都可以使用自己的機制來驗證交易,但它仍然使用以太坊區塊鏈作為最終的真相仲裁者。在拜占庭攻擊的情況下,等離子鏈用戶可以退出到以太坊。
但是Plasma有幾個缺點,使其成為一個平淡無奇的可擴展性解決方案。
首先,當用戶想要將他們的資產從Plasma合約轉移到以太坊主區塊鏈時,他們需要等待7天。這足以讓人們驗證提款交易不是欺詐性的。如果是,他們可以使用Plasma鏈上的Merkle樹構建欺詐證明。
其次,每個Plasma鏈都需要一個運營商將Merkle根承諾發布到主鏈。這需要我們依靠第三方來準確地將Merkle根承諾發布到鏈上。不幸的是,運營商可以執行所謂的“數據可用性攻擊”,他們出于惡意原因拒絕將某些交易發布到主鏈上。
在這種情況下,運營商可以說服網絡接受無效塊,而無法證明無效塊。這可以防止其他用戶知道區塊鏈的準確狀態。這也阻止了人們創建區塊或交易,因為他們缺乏構建證明的信息。與欺詐不同,數據可用性攻擊并不是唯一可歸因的。我們無法知道攻擊正在發生。
運營商也可以通過更明確的方式進行惡意操作,例如通過提交欺詐性交易。在這種情況下,人們可以“大規模退出,”如上所述。但事實證明,這些在實踐中實施起來要困難得多。如果很多用戶想要大規模退出,可能會導致主鏈擁堵,用戶可能無法及時退出,導致資金損失。
動態 | BCH開發者提交11月15日升級提案草案規范的帖子:據 BitcoinCash官方消息,5月29日,BCH開發者在bitcoincashorg的github上提交了2019年11月15日升級提案草案規范的帖子,旨在將此作為下一次升級討論的基地以及正在審議的項目的聚集地。與此同時,名為EyeOfPython開發者提交了將OP_REVERSE添加到腳本的提議。OP_REVERSE的引入可進一步優化智能合約功能。據介紹,OP_REVERSE的作用是反轉頂部堆棧項的字節。目前關于OP_REVERSE是否會被添加到BCH在11月15日的升級內容中暫時還未確定。[2019/6/4]
第三,Plasma要求交易資產的所有者在場。這確保了Plasma鏈的安全,因為它有效地使未經所有者同意無法進行交易。Plasma最適合簡單的轉賬,但隨著交易變得越來越復雜,設計空間變得不規則。
出于上述原因,Polygon和OMG網絡最初追求Plasma架構以進行擴展,但后來又放棄了。正是在這種情況下,在提出了各種解決方案之后,我們得到了匯總。
匯總
就像狀態通道、側鏈和等Plasma一樣,匯總是“第2層”解決方案。事實上,rollup與Plasma非常相似,因為我們在鏈下批量處理交易并將更新發布到主區塊鏈。然而,關鍵的區別在于,通過匯總,我們還將每批交易的交易數據發布到鏈上。使用Plasma,我們只發布Merkle根。
換句話說,通過匯總,我們在鏈下進行交易處理,但我們在鏈上發布交易數據。我們在鏈上發布的數據量是本地驗證匯總交易所需的最小數量。通過將數據上鏈,任何人可以檢測欺詐、發起提款或親自開始生成交易批次。因此,匯總比Plasma鏈或側鏈為我們提供了更高的安全保證。rollups和Plasma之間的另一個關鍵區別是我們不必擔心數據可用性問題。畢竟,我們將交易數據發布到主鏈上。這是一個巨大的勝利。使用匯總,我們有效地在匯總層內運行EVM的一個版本。這意味著以太坊上任何可能的交易都可以在匯總中執行。這就引出了一個問題:如果我們仍然在鏈上發布交易數據,那么這將如何擴展第1層?擴展性不還是受限于主鏈的數據帶寬嗎?是的。這里的關鍵是我們通過匯總獲得5到100倍的可擴展性,但不是無限的可擴展性。Rollups還使用了許多花哨的壓縮技巧來最小化我們在鏈上發布的交易數據,因此鏈上的數據存儲比其他方式少得多。
同時,我們將鏈下交易執行的所有繁重工作外包給匯總。回想一下,在交易執行期間,交易必須由以太坊虛擬機(EVM)處理并與狀態交互。這是昂貴的。
然而,對于匯總,我們通過在匯總中運行EVM的一個版本來將此執行轉移到匯總層——所以我們仍然在執行相同的執行,但匯總層的gas成本比以太坊便宜得多。
仔細查看匯總
現在,讓我們看看匯總是如何在幕后工作的。主鏈上有一個“匯總合約”,用于維護匯總層的當前狀態。這包括在其上進行交易的用戶的賬戶余額和其中存在的合約的智能合約代碼。簡而言之,匯總合約跟蹤匯總層中交易的“狀態根”。
“狀態根”由一個鍵值映射組成,其中鍵是地址,值是賬戶。每個賬戶最多有4個屬性:余額、隨機數、代碼和存儲。
當事務發生在匯總層時,會發生狀態更改。當然,這意味著狀態根也需要更新。但不是為每筆交易更新狀態根,而是將交易“批量”發送到主鏈上的匯總合約。該批次將包括該批次事務的壓縮形式和一個更新的狀態根,該狀態根表示該批次事務處理后的數據。主鏈上的匯總合約檢查批次中的前一個狀態根是否與其當前狀態根匹配——如果匹配,它將狀態根切換到新的狀態根。
由于發布的交易數據實際上并沒有被EVM解釋,我們沒有訪問或寫入狀態——這太昂貴了。相反,我們將壓縮的交易數據作為“calldata”參數發布到匯總合約。
這就是為什么這很整潔,在Solidity中,calldata是最便宜的存儲形式。事實上,作為calldata參數傳遞的參數根本不會存儲在以太坊的狀態中,這意味著我們避免了很多gas費用。同時,以太坊節點仍然可以在創建區塊時存儲交易數據。
動態 | 日本金融廳:希望通過自律監管 對現行法律未作規范的領域作出更明確地規定:據bitcoin.com消息,日本金融廳今年10月根據《支付服務法》授予日本虛擬貨幣兌換協會(JVCEA)自律監管組織(SRO)地位。金融廳表示,希望通過自律監管,對現行法律法規未作規范的領域,能作出更明確、更詳細的規定。對虛擬貨幣交易所來說,成為日本虛擬貨幣交換業協會的成員并不是一項法律義務。從用戶保護的角度來看,日本金融廳會考慮自律監管規則,監控虛擬貨幣交易所是否恰當地開展業務。至于是否會批準另一個自律監管機構,金融廳指出,根據法律,SROs的數量沒有限制。[2018/12/27]
精明的讀者可能想知道Plasma和匯總之間有什么區別。這是關鍵的區別:通過匯總,我們將交易數據與狀態根一起發布到鏈上。使用Plasma,我們只需發布交易的狀態根。
與Plasma不同,我們有一個將Merkle根發布到根鏈的操作員,rollups允許任何人將新一批交易發布到鏈上的rollup合約,稍后我們將更深入地探討。
再一次,這引出了一個問題:既然我們只是將交易數據發布到主鏈而不是執行鏈上的交易,我們怎么知道發布在主鏈上的交易數據和狀態根不是欺詐性的?
輸入:樂觀匯總和零知識匯總,每種都有自己的處理和驗證批次正確性的方式。
樂觀匯總
您可能可以根據名稱猜出樂觀匯總是什么,當一批新的交易“匯總”到主鏈時,每批的狀態根和哈希都會被發布,但我們實際上并沒有驗證交易是否正確執行,至少在發布時沒有。通過這種方式,我們“樂觀地”將新的狀態根和交易數據發布到主鏈上的匯總合約。當某人將新的狀態根發布到主鏈時,匯總智能合約會簡單地接受他們的話。如果有人發現向匯總智能合約發布了無效的狀態轉換,他們可以生成“欺詐證明”。欺詐證明包括:
“預先狀態”的證明,或者,在應用交易之前事情的樣子
“后狀態”的證明,或者,在應用交易后狀態應該如何處理
在狀態轉換期間應用的交易證明
工作流程很簡單:這個欺詐證明被發布到主鏈上的匯總合約中。然后匯總合約驗證證明并將交易邏輯應用于預狀態。然后,它將結果與后狀態進行比較。如果存在不匹配,則證明發布批次的人沒有正確應用交易。然后,智能合約會還原該批次的交易以及之后的所有批次。
為此,任何將批次發布到主鏈的人都必須存入保證金,因此如果他們表現出惡意并被抓到,他們可能會被“罰沒”。
ZK匯總
如果樂觀匯總使用“在被證明有罪之前是無辜的”心態,那么ZK匯總使用“不信任,驗證”心態。使用ZK匯總,每個批次都包含一個稱為ZK-SNARK的加密證明,它證明狀態根是執行該批次事務的正確結果。ZK-SNARK證明是一個哈希值,表示在zk-rollup層中執行交易后區塊鏈狀態的變化。該有效性證明被發布到匯總合約中,因此任何人都可以使用它來驗證匯總層上特定批次中的交易。這里的魔力在于ZK-SNARK的工作方式。它們讓我們在不泄露數據的情況下生成底層數據的證明。任何人以后都可以驗證數據是否存在,即使他們無權訪問數據本身。ZK-SNARKS的數學基礎很復雜,超出了我們的范圍,但如果你好奇,我鼓勵你去Google或YouTube上花點時間了解它們的工作原理。
哪個更好?
顯而易見的下一個問題是……哪個更好?很難說。各有優缺點,接下來我們來看看。
成本
“成本”在抽象中并沒有太大的意義,但是當我們將其分解時,樂觀和ZK匯總的性能開始出現分歧。
在鏈上發布新批次的Gas成本:樂觀匯總成本更低。我們樂觀地發布新的狀態根和數據,所以這是一個簡單的交易。ZK匯總成本更高。當我們在鏈上發布新批次時,我們必須驗證ZK-SNARK有效性證明。這在計算上更昂貴。
發布在鏈上的每筆交易的Gas成本:樂觀的匯總成本更高。我們必須在鏈上發布足夠的數據,以便稍后驗證欺詐證明。ZK匯總成本更低。我們可以省略大部分交易數據,因為有效性證明足以讓任何人驗證批次的正確性。
鏈下計算成本:樂觀匯總成本更低。我們只發布新的狀態根,而不是執行/驗證交易。也就是說,我們仍然需要一些人來觀察新批次的創建和新交易的執行,以確保批次的正確性。ZK匯總成本更高。ZK-SNARK的計算成本很高。
旁注:盡管ZK-rollups的鏈下計算成本更高,但考慮到鏈下的gas價格要低得多也很重要。
速度
樂觀匯總很慢。通常,用戶必須等待大約一周才能提取他們的資產。如果用戶試圖在匯總層上提取他們實際上并不擁有的代幣,這可能會給某人足夠的發布欺詐證明的機會。ZK匯總很快。用戶通常等待不到10分鐘來提取他們的資產。我們只需要等到下一批來處理提款,因為所有的匯總狀態都已經過驗證。旁注:有一些方法可以通過使用“快速提款”來繞過這個一周的等待期。這是通過流動性提供者完成的,他們在主鏈上維護一個“cookiejar”資金。當用戶快速提取資金時,他們給流動性提供者一張借條用于匯總中的資金,然后他們立即獲得主鏈上的流動性提供者的付款。稍后,當一周期限結束并且用戶從匯總層取回資產時,用戶可以將欠他們的資金發送給流動性提供者。流動性提供者甚至可以選擇運行一個驗證節點來驗證用戶在匯總上的交易,然后再在主鏈上向他們發放資金,從而進一步降低他們的風險。然而,這種“快速提現”方案對于NFT來說是不可能的,因為任何NFT中只有一個存在,并且流動性提供者無法在鏈上創建相同的NFT。
復雜
樂觀匯總更簡單,欺詐證明的概念由來已久,因此解決方案相對簡單。ZK匯總更復雜,ZK-SNARK是新的并且在數學上很復雜。
廣泛性
樂觀匯總更容易廣泛化,工程師們已經構建了一個與EVM兼容的虛擬機,稱為OVM,它允許樂觀匯總處理可以在以太坊上處理的任何事務。ZK匯總更難概括。使用ZK-SNARK證明通用EVM執行比證明簡單計算要困難得多。也就是說,這個領域發生了很多創新。事實上,StarkNetalpha引入了一種名為Cairo的新編程語言,它是以太坊上的圖靈完備ZK驗證器,可讓我們驗證通用計算智能合約。
可擴展性
樂觀匯總的可擴展性較差。當我們在鏈上發布數據時,它通常包括一些狀態和見證人。使用樂觀匯總,我們必須為每筆交易發布見證,以便人們以后可以證明欺詐。見證人占用大量存儲空間,是交易數據的3-10倍。ZK匯總更具可擴展性:我們不需要為每筆交易包括見證人,因為在計算ZK-SNARK時所有數字簽名都已驗證。相反,我們每批只需要一個見證人,這大大減少了存儲在鏈上的數據。
安全
樂觀匯總不太安全,樂觀匯總依賴于加密經濟學來確保鏈的安全性。換句話說,他們必須激勵人們觀看發布在鏈上的批次并檢測欺詐行為。ZK匯總更安全,ZK匯總依賴于數學,它們不需要激勵。他們使用密碼學而不是密碼經濟學。那么,既然我們已經分解了這些,哪個更好?仍然很難說,但這證明了這些程序背后的工程師所做的偉大工作。我們有像Optimism和Arbitrum這樣的團隊正在努力開發樂觀匯總,這些已經可供以太坊開發人員使用。我們有StarkWare和Zksync這樣的公司將通用ZK-rollups引入以太坊。這兩種解決方案都處于起步階段。但是樂觀匯總更接近于被采用,因為它們不太復雜并且可以用于當今的通用計算。另一方面,ZKrollups需要一些時間才能趕上,但許多工程師會認為ZKrollups是一項卓越的技術。畢竟,它們依賴于數學而不是加密經濟學,而且它們比樂觀匯總更具可擴展性。也就是說,最好的技術并不總是贏。我們不能忽視的是,一旦一項技術變得根深蒂固,它就很難被取代。樂觀的匯總肯定是領先的——所以只有時間才能證明從長遠來看哪個會“贏”。
匯總的聰明之處
在我們討論匯總的一些持久挑戰之前,讓我們看一下匯總使用的壓縮技巧如此高效。
隨機數:在典型的以太坊交易中,我們包含隨機數以防止雙花攻擊。Rollups完全省略了它們,因為它們可以使用區塊鏈的先前狀態重新計算。通過這種方式,匯總盡可能用計算替換數據。
Gas價格:與其以gwei計價,不如將Gas價格限制在固定的價格范圍內,從而顯著減少在交易數據中記錄Gas價格所需的存儲量,這真的加起來了!
費用:同上。
To:一個地址是20字節長,加上1個字節用于RLP編碼。匯總可以存儲索引到地址的映射,而不是包括地址,并且只在“to”字段中包括索引。這就像將坐標留給目的地,而不是渲染整個位置本身。
值:“值”字段為9字節,因為ETH和ERC-20代幣最多有9位小數。匯總可以改為把值限制為最多3個小數位,為我們節省6個字節。看起來很實用!
簽名:如上所述,數字簽名的“見證”占用了大量存儲空間。Rollups可以使用BLS簽名,它允許我們將許多簽名聚合為一個,這節省了大量的存儲空間!
讓我們把這一切付諸行動,使用所有這些壓縮技巧,我們可以為ETH傳輸減少多少字節?典型的ETH傳輸需要112個字節,但是有了這些壓縮技巧?只有12個字節,這幾乎提高了10倍的效率!ZKrollup可以獲得比樂觀rollup更多的優化,因為它們在將交易數據發布到主鏈之前進行鏈下交易驗證。他們也不需要包含交易數據的“驗證”部分;有效性證明就足夠了。所有ZK匯總需要存儲的是計算狀態轉換所需的數據。因此,重要的一點是匯總不僅因為它們將計算移出鏈而高效,而且因為它們非常聰明的數據壓縮技巧。
Rollups并不完全是“圣杯”
但不要太興奮,盡管匯總非常有希望,但仍有很多問題需要解決,以下是您應該注意的一些挑戰。
可擴展性有天花板
到目前為止,您已經了解匯總和其他第2層解決方案之間的主要區別。你會記得,匯總將計算移出鏈,但將數據存儲在鏈上。這對于解決數據可用性問題非常有幫助。但是由于我們將交易數據存儲在鏈上,我們仍然受到以太坊存儲容量的限制。我們可以通過一些粗略的數學來看看理論上的TPS將使用匯總。
以太坊區塊gas限制:1250萬gas
每字節存儲在鏈上的數據成本:16gas
每個塊的最大字節數:~781,000字節
使用匯總進行ETH傳輸所需的數據字節:12個字節
每塊交易:~65,000
以太坊的平均出塊時間:13秒
每秒交易數:~5000TPS
當然,這個數學假設一個區塊中的所有交易都是ETH轉賬,并且一個區塊中除了批量匯總交易之外沒有其他任何東西,這是極不可能的。大多數區塊將包含各種交易,包括一些第1層交易,這些交易將花費超過16個氣體費用。此外,如果這些是ZK-rollup批次,則將不包括在鏈上驗證SNARK證明的成本,這大約是500,000gas。盡管如此,這為您提供了使用匯總的TPS的起點,5,000遠不及Visa顯然擁有的65,000TPS,但它比今天的TPS以太坊要好得多。
破碎的流動性
Rollup技術是作為獨立項目創建的,而不是由以太坊協議本身創建的。因此,將會有幾種不同的匯總技術并行存在,這就是流動性斷裂的地方。隨著流動性從主鏈轉移到匯總,它會“破壞”不同匯總網絡的流動性。盡管一旦有跨匯總通信的機制就可以解決這個問題,一些聰明的工程師已經在研究這些機制!
降低可組合性
在以太坊上構建的主要好處之一是可組合性。在以太坊上構建的每個新協議都像樂高積木一樣,其他協議可以輕松地在其上構建。例如,這就是讓DeFi如此強大的原因。它讓我們創造了金錢樂高積木。當應用程序和流動性轉移到匯總時,我們會失去一些可組合性。畢竟,在匯總層和主鏈之間傳遞消息和事務并不像在基礎層的上下文中那樣容易。但解決這個問題可能只是時間問題。我當然可以看到一個存在于不同匯總上的智能合約仍然可以相互通信的世界。與往常一樣,我們離解決這些問題只有幾個聰明的工程師。
集權
我們忽略了討論誰實際負責將新批次發布到主鏈的部分,所以讓我們回到這個話題。大多數匯總依賴于“定序器”來完成這項工作:定序器是一個節點,它對交易進行批處理并將結果發布到鏈上的匯總合約。對于Arbitrum、Optimism和StarkNet,sequencer是它們自己運行的單個節點。
我知道。“去中心化”是區塊鏈的核心,雖然效率很高,但顯然是非常中心化的,如果定序器出現故障或審查交易怎么辦?好吧,事情沒那么簡單。這些項目目前采用這條路線的原因是因為使用這種方法進行迭代更容易、更快捷。為了降低集中化的風險,隨著時間的推移,大多數匯總都希望對排序器進行某種去中心化——其中許多確實有這樣做的計劃。測序儀的去中心化將如何運作?有幾種方法。一方面,我們可以創建一個類似Proof-of-Stake的系統,在該系統中,測序人員必須質押代幣才能有機會提出下一批。或者我們可以進行Delegated-Proof-of-Stake,其中一個排序器被選舉出來,如果它做得不好,可以不被選舉。總而言之,測序儀將如何去中心化還有待觀察!
并排比較
呸。希望您對匯總有更好的理解——以及為什么以太坊將其押注作為可擴展性解決方案。當然,Rollups坐在它之前的巨人的肩膀上——如果沒有側鏈、狀態通道和Plasma,我們就不會擁有它。
使用去中心化、安全性和可擴展性的“三難”框架將匯總與其他第2層解決方案進行比較也是有益的。除了我將添加一個額外的維度:通用性。多年來,我們已經意識到第2層解決方案的通用性非常重要,這樣它就可以用來做任何可以在主鏈上做的事情。
這清楚地表明,Rollups在不犧牲去中心化、安全性和通用性的情況下為我們提供了適度的可擴展性。
然而,權衡是可擴展性。因為我們仍然在鏈上存儲數據,所以與在鏈下存儲數據的第2層擴展解決方案相比,我們的可擴展性受到限制。此外,在短期內,匯總依賴于集中式排序器,這降低了安全性。但這是一個短期問題,隨著時間的推移,rollup很可能會分散排序器,使其成為優于Plasma、側鏈和狀態通道的技術。
那么匯總是圣杯嗎?我會讓你決定。
PS..
為了簡潔起見,我省略了很多關于匯總如何工作的有趣細節。但我也遺漏了一個新的第2層擴展方案,稱為“Validium”。
Validium與Plasma的相似之處在于我們將數據和計算移至鏈下。關鍵區別在于Validium不依賴欺詐證明來驗證交易。相反,運營商需要使用零知識證明來做出新的狀態承諾,這使得操作員無法推進無效的狀態轉換。
它還消除了對“大規模退出”計劃或協議中長期退出延遲的需要。但是我們仍然獲得了Plasma鏈的無限可擴展性,因為我們沒有將交易數據存儲在鏈上。總之,值得一提,我鼓勵你閱讀它!
結論
這篇文章比我預期的要長得多,如果您仍在閱讀,那么您就是我喜歡的類型。盡管篇幅較長,但這確實是您對匯總有基本了解所需了解的最低限度。畢竟,匯總只是以太坊可擴展性解決方案的一半。另一半是分片,如果您對構建Web3.0應用程序感興趣,請注冊我們的下一個DappCamp隊列,在那里您將學習如何在以太坊上構建和部署安全的智能合約。
Tags:區塊鏈以太坊ARK區塊鏈工程專業學什么區塊鏈存證怎么弄區塊鏈技術發展現狀和趨勢以太坊幣是什么幣ARK幣是什么幣
以允許用戶將加密貨幣花在禮品卡和移動充值上而聞名的瑞典初創公司Bitrefill今天宣布,它的支付賬單服務現已向美國用戶開放.
1900/1/1 0:00:00系列,追蹤和記錄世界主要經濟體與國家對加密貨幣等數字資產的監管政策和行動,供各方了解、借鑒和把握國際監管趨向。本文為第1篇,介紹歐盟在加密領域的的最新監管舉措.
1900/1/1 0:00:00*比特護盾和刀鋒硬件錢包以下統稱為Bithd 圖為刀鋒卡片式硬件錢包 不久前,比特護盾和刀鋒硬件冷錢包支持了USDT-ERC20和ETHToken的多重簽名,也因此又解鎖幾項了全球第一的成就.
1900/1/1 0:00:00記錄歷史 客觀、廣角,辨析、借鑒,點擊-在看-「鏈幣周記」系列第18篇9.13-9.19/2021本周,一條有關沃爾瑪與萊特幣建立了“重大合作關系”的假消息,讓LTC短時間內“上天入地”,隨后.
1900/1/1 0:00:00「咖說V講」系列,原汁原味地匯集鏈幣圈業內外大咖聲音,閱讀者盡可以智者見智,取法其上,健壯成長.
1900/1/1 0:00:00為了設定合并的終結總難度值,我們可以先預測給定日期的TTD值,然后根據算力的變動進行調整 合并TTD值 目標:確定TTD值,它會在Bellatrix主網升級之后以及九月底之前觸達.
1900/1/1 0:00:00