“區塊鏈無法擴展”?你可能已經聽過一百萬次了。幾年前,這感覺像是對該行業的真正威脅。如果我們甚至不能每秒處理15筆交易,我們如何為沒有銀行賬戶的人提供銀行服務?
但大問題推動了創新,區塊鏈的可擴展性是一個大問題。它很快引起了工程師和科學家的注意,直至今天,我們對區塊鏈可以擴展越來越有信心。事實上,當前的大多數爭論都關注哪種可擴展性解決方案將獲勝。這就是為什么在這篇文章中,我將分解一些在過去五年中探索過的以太坊可擴展性解決方案——并解釋這些解決方案如何成為可能成為贏家的墊腳石:匯總
面對“可擴展性三難”
如果不提到著名的“可擴展性三難困境”,我們就無法談論可擴展性。該術語由Vitalik創造,用于解釋區塊鏈旨在擁有的三個屬性:可擴展性、去中心化和安全性。很明顯,到目前為止,我們可以實現其中兩個屬性。但是要同時獲得這三個是非常非常困難的。
在我們理解為什么之前,讓我們把我們的條款弄清楚。
可擴展性只是意味著區塊鏈可以處理大量事務,以每秒事務數(TPS)衡量。
去中心化意味著區塊鏈由世界各地的許多“去信任”節點運行——而不是由一小群集中的“受信任”節點運行。
安全性意味著即使網絡中一定百分比的節點是惡意的,區塊鏈也能抵抗攻擊。理想情況下,它應該能夠處理多達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。這些系統有許多獨立的區塊鏈網絡,它們都作為更大區塊鏈網絡的一部分進行通信。
可擴展:是的。由于我們不再需要將所有狀態存儲在單個區塊鏈上,因此我們可以將狀態拆分到許多獨立的區塊鏈中,從而實現比傳統區塊鏈更高的可擴展性。
去中心化:看情況而定。生態系統中的每個區塊鏈都有一組驗證區塊鏈的節點。生態系統中的一些鏈會有很多驗證者,而另一些鏈可能很少甚至只有一個。因此,去中心化的程度取決于我們所指的生態系統中的哪條鏈。
安全:不太安全。如果生態系統中有一條鏈受到攻擊,那么它可能會對系統的其余部分產生連鎖反應。例如,如果鏈B受到攻擊,而鏈A、C和D都依賴它,那么其他鏈也會受到影響。
數據:交易所ETH余額/供應量比例跌至12.6%歷史新低:金色財經報道,加密貨幣交易所內的ETH余額與供應量比例在過去30天內急劇下降,交易所存款和取款的凈流量顯示,目前已跌至12.6%的歷史新低點。分析認為,該指標達到歷史低點而ETH質押存款量不斷上升,可能意味著ETH看漲趨勢正在形成。自4月份的以太坊Shapella升級以來,鎖定在質押合約中的ETH供應量大幅飆升。目前,超過2300萬枚ETH存入質押合約中,占到總供應量的約19.1%。另據Glassnode數據顯示,當前近 30% 的ETH供應量被鎖定在智能合約中,包括去中心化金融合約和質押合約,高于2023年初的25.5%。(cointelgraph)[2023/6/25 21:58:36]
如您所見,在擴展區塊鏈方面有許多不同的嘗試,但它幾乎總是以這三個屬性之一為代價。Vitalik和以太坊社區一直不愿意做出這種妥協,他們的目標是獲得所有三個。
在我們了解這如何可能之前,了解另一件事很重要:第1層擴展與第2層擴展。
了解第1層和第2層擴展
在最高級別,第1層擴展是指擴展核心區塊鏈本身。相比之下,第2層擴展是指將交易從主區塊鏈層移到可以與主鏈通信的單獨層中。
以太坊希望同時使用第1層和第2層解決方案來解決可擴展性的三難困境,分片是以太坊的第1層解決方案,而匯總是以太坊的第2層解決方案。
以太坊最早的二層解決方案
但是匯總和分片必須等待片刻。首先,我們應該記錄以太坊過去探索的第2層擴展解決方案,然后最終得出匯總,即以太坊的“圣杯”。畢竟,這就是工程的工作方式——我們提出想法、測試它們并進行迭代,直到找到可行的解決方案。
狀態通道
狀態通道已經存在了很長時間,所以它們并不是什么新鮮事。以下是它們如何工作的快速說明。假設我們有兩個人,愛麗絲和鮑勃,他們想互相交易。愛麗絲每次發推文都會向鮑勃支付1美元。但是由于Bob每天發很多推文,使用以太坊進行交易會太慢而且太貴。
相反,他們使用“狀態通道”:
愛麗絲在以太坊的智能合約中投入了500美元。
每當愛麗絲想給鮑勃1美元時,她都會簽署一條消息,表明她想給鮑勃?多少錢。她一直在簽署消息,直到鮑勃?準備好“兌現”他的資金。
鮑勃提交一條新消息,表明他已準備好關閉狀態通道。以太坊上的智能合約驗證愛麗絲和鮑勃的簽名,向鮑勃支付應付金額,并將其余款項返還給愛麗絲。
請注意,只有第一步和最后一步需要我們在區塊鏈上進行交易,在這些步驟之間,愛麗絲?和鮑勃?可以向對方發送無限數量的簽名消息,指示付款。在這種情況下,以太坊區塊鏈僅用作結算層來處理一次性付款的最終交易,這減輕了底層區塊鏈的負擔。
重點是:通過開辟一個在區塊鏈之外進行交易的渠道,我們在保持低成本的同時大幅提高了交易容量和速度。這是可能的,因為:
首先,大部分交易都發生在鏈下,這意味著付款可以即時處理,因為兩方之間的鏈下更新不需要額外的時間來處理和驗證區塊鏈網絡。
其次,支付產生的費用較低,因為我們只需要在打開和關閉狀態通道時進行鏈上交易。這意味著大多數交易都是在鏈下進行的,費用要低得多。
那么,為什么這不是最終的解決方案呢?好吧,狀態通道可以做的事情是有限制的。例如,我們不能使用狀態通道與不屬于狀態通道的人進行交易,我們也僅限于狀態通道中可能的狀態更新類型。像Uniswap這樣的復雜應用程序不能在狀態通道中使用,因為當我們在Uniswap上交換兩個代幣時,智能合約會自動執行一系列中間步驟來進行交換,這些步驟沒有授權用戶在每個步驟上簽字。狀態通道的另一個缺點是它們要求我們鎖定流動性以實例化通道并防止惡意交易對手可能永遠不會真正支付承諾資金的情況。這對于單一渠道來說可能沒問題,但是當我們試圖通過狀態渠道網絡進行支付時,鎖定在中間渠道中的流動性使其相當“資本效率低下”。最后,狀態通道需要可以定期監視網絡的人。這確保了您的資金安全,這又增加了一層復雜性和低效率。總而言之,狀態通道適用于兩方需要在一段時間內快速、廉價地進行交易的用例。但鑒于它們有限的用例和資本效率低下,我們并不認為狀態通道是以太坊的最終擴展解決方案。
450萬枚LINK從未知錢包轉移到Binance:金色財經報道,據Whale Alert監測,4,499,999枚LINK(23,925,538 美元)從未知錢包轉移到Binance。[2023/6/17 21:43:16]
側鏈
側鏈也已經存在很長時間了,而且很容易理解。簡而言之,側鏈是與主區塊鏈?“?掛鉤?”?的獨立區塊鏈。
當我們將一個區塊鏈“掛鉤”到另一個區塊鏈時,這意味著我們可以在兩個區塊鏈之間移動資產。“單向”掛鉤是我們將資產從主區塊鏈移動到側鏈的地方,而不是其他方式。這是通過將主區塊鏈上的代幣發送到不可使用的地址來“燒掉”代幣,然后在側鏈上?“?鑄造”等價的代幣來實現的。
那么,“雙向掛鉤?”?是我們可以將資產移入和移出主區塊鏈和側鏈的時候。這需要在主鏈上?“?鎖定”?我們的代幣,然后在側鏈上?“?鑄造”?等量的代幣。當我們想要轉換回原始代幣時,我們會“燒掉?”?側鏈上的代幣,然后解鎖主鏈上的代幣。
因此,側鏈是當我們創建一個與主區塊鏈雙向掛鉤的新區塊鏈時。當我們想要更快交易時,我們可以將我們的資金從主鏈轉移到側鏈并在那里進行交易。完成后,我們將資金轉移回主鏈。
比特幣側鏈的一個例子是LiquidNetwork。LiquidNetwork與比特幣掛鉤,允許更快、更便宜的比特幣支付。另一個流行的例子是Polygon,它是與以太坊掛鉤的側鏈。
當用戶想要更快交易時,他們可以鎖定一些ETH并在Polygon側鏈上創建等量的Matic代幣。在Polygon側鏈上,他們可以享受更快、更便宜的交易。當他們完成交易后,他們可以將他們的Matic代幣轉換回ETH。
注意:從技術上講,Matic不是側鏈,因為它會定期將側鏈的狀態提交給以太坊。因此,他們喜歡稱自己為?“?提交鏈?”。
總體而言,側鏈是可擴展的,因為它們通常通過使用允許可擴展性的不同共識算法在去中心化和/或安全性方面進行權衡。對于以太坊網絡上的大量擁塞,側鏈是一個很好的權宜之計,但以太坊也不認為這是最終的可擴展性解決方案。隨著您繼續閱讀,原因將變得清晰:)
Plasma
Plasma是另一個“第2層?”?解決方案,可以讓我們將交易移出基礎層。在我們進入Plasma之前,重要的是要注意,隨著時間的推移,Plasma已經進行了多次迭代,每一次都有自己的權衡取舍。您可以查看Plasma世界地圖,其中列出了人們為解決Plasma帶來的挑戰而嘗試創建的許多不同類型的設計,有很多!
當然,為了這篇文章的目的,我必須概括Plasma的概念,而不是過多地關注個別的實現。如果您想深入挖掘,請務必查看世界地圖。那么,什么是Plasma?Plasma本質上是一系列在主區塊鏈之外運行的智能合約。
Plasma鏈就像一棵樹的樹枝,以太坊是主干,每條Plasma鏈都是一個分支,每個分支都被視為具有自己的區塊鏈歷史和計算的區塊鏈。“?根區塊鏈?”使用稱為“?欺詐證明?”?的東西來強制Plasma鏈中狀態的有效性。欺詐證明是我們提供某些數據的一種機制,任何人都可以使用數學證明來確定數據是否無效。
每個Plasma區塊鏈不需要將交易數據發布到根鏈上。相反,每個Plasma鏈都有一個?“操作員”。這可能是一個中心化的參與者,一個代表多個人的多重簽名,甚至是一個參與成為運營商的委員會。Plasma鏈的運營商提交Plasma鏈上發生的轉移的Merkle根。注意:如果您不知道Merkle樹的工作原理,那么我強烈建議您在繼續之前閱讀此解釋器。在高層次上,Merkle樹讓我們可以獲取一個大型數據集并生成一個代表整個數據集的單個根哈希。
美眾議院金融服務委員會民主黨主要成員提倡SEC作為加密貨幣的主要監管機構:5月15日消息,在美國眾議院加密貨幣聽證會休會后,一份泄漏的內部備忘錄在眾議院金融服務委員會民主黨人中流傳,該備忘錄顯示民主黨立法者提倡美國證券交易委員會(SEC)作為監管加密貨幣的主要監管機構。區塊鏈協會政府關系主管 Ron Hammond 表示這不是整個民主黨的立場,只是民主黨在委員會的主要成員。大多數共和黨人與一些民主黨人支持允許 CFTC 暫時監管加密商品現貨市場,包括比特幣與 ETH。共和黨人還支持讓國會加入,為加密證券與商品制定定義,大多數民主黨人則支持大多數代幣都是證券的立場。目前,委員會共和黨人尚未正式提交穩定幣法案提案。[2023/5/15 15:03:17]
稍后,我們可以很容易地證明來自大數據集的一條數據存在于該數據集中,只需提供通往該數據的分支。
如果有人試圖證明欺詐交易的存在,那么哈希值將不匹配,我們會立即知道。
好的,回到Plasma。
每個Plasma鏈都在提交發生在其上的轉移的Merkle根。當用戶稍后試圖將他們的資產從Plasma鏈移回根鏈時,用戶可以提交將資產發送給他們的最新交易的Merkle分支。這開始了一個挑戰期,任何人都可以嘗試證明用戶的Merkle分支是欺詐性的。如果Merkle分支存在欺詐,則可以提交欺詐證明。由于根區塊鏈僅跟蹤Merkle根,因此與那些發生在主鏈上的交易相比,它必須處理的數據要少得多。這顯著減少了存儲在根區塊鏈上的數據量,并使我們能夠擴展根鏈。此外,如果某個特定的Plasma鏈受到惡意攻擊,人們可以從腐敗的子鏈中“?大規模退出”。
等Plasma比狀態通道更有利,因為您可以將資產發送給任何人,而使用狀態通道,您只能與狀態通道中的人進行交易。此外,等Plasma相對于側鏈的好處是等離子鏈由以太坊保護。
兩者的根本區別在于側鏈有自己的安全模型。他們有自己的共識機制和一組單獨的節點來驗證狀態。即使側鏈受到攻擊,主鏈也不會發生任何事情,反之亦然。如果側鏈發生攻擊,主鏈無法保護用戶。
另一方面,等Plasma具有依賴的安全模型,每個Plasma鏈都可以使用自己的機制來驗證交易,但它仍然使用以太坊區塊鏈作為最終的真相仲裁者。在拜占庭攻擊的情況下,等離子鏈用戶可以退出到以太坊。
但是Plasma有幾個缺點,使其成為一個平淡無奇的可擴展性解決方案。
首先,當用戶想要將他們的資產從Plasma合約轉移到以太坊主區塊鏈時,他們需要等待7天。這足以讓人們驗證提款交易不是欺詐性的。如果是,他們可以使用Plasma鏈上的Merkle樹構建欺詐證明。
其次,每個Plasma鏈都需要一個運營商將Merkle根承諾發布到主鏈。這需要我們依靠第三方來準確地將Merkle根承諾發布到鏈上。不幸的是,運營商可以執行所謂的“數據可用性攻擊”,他們出于惡意原因拒絕將某些交易發布到主鏈上。
在這種情況下,運營商可以說服網絡接受無效塊,而無法證明無效塊。這可以防止其他用戶知道區塊鏈的準確狀態。這也阻止了人們創建區塊或交易,因為他們缺乏構建證明的信息。與欺詐不同,數據可用性攻擊并不是唯一可歸因的。我們無法知道攻擊正在發生。
運營商也可以通過更明確的方式進行惡意操作,例如通過提交欺詐性交易。在這種情況下,人們可以“大規模退出,”如上所述。但事實證明,這些在實踐中實施起來要困難得多。如果很多用戶想要大規模退出,可能會導致主鏈擁堵,用戶可能無法及時退出,導致資金損失。
第三,Plasma要求交易資產的所有者在場。這確保了Plasma鏈的安全,因為它有效地使未經所有者同意無法進行交易。Plasma最適合簡單的轉賬,但隨著交易變得越來越復雜,設計空間變得不規則。
出于上述原因,Polygon和OMG網絡最初追求Plasma架構以進行擴展,但后來又放棄了。正是在這種情況下,在提出了各種解決方案之后,我們得到了匯總。
Rug項目WSB Coin實控人再次創建Memecoin ZJZ:5月4日消息,據 0xScope Protocol 監測,繼大規模拋售 WSB 后,Rug 項目 WSB Coin 幕后黑手 zjz.eth 再次創建 Memecoin ZJZ,并控制了全部供應量。目前有 175 名持有者,如果他此刻 Rug,將獲利 93 ETH(約合 17.7 萬美元)。
此前今日早些時候,MEME 項目 WSB Coin 發生 Rug pull,疑似團隊以 334 ETH(約合 63.5 萬美元)的價格拋售大量 WSB Token,WSB 價格跳水 86%。[2023/5/4 14:41:53]
匯總
就像狀態通道、側鏈和等Plasma一樣,匯總是“第2層”解決方案。事實上,rollup與Plasma非常相似,因為我們在鏈下批量處理交易并將更新發布到主區塊鏈。然而,關鍵的區別在于,通過匯總,我們還將每批交易的交易數據發布到鏈上。使用Plasma,我們只發布Merkle根。
換句話說,通過匯總,我們在鏈下進行交易處理,但我們在鏈上發布交易數據。我們在鏈上發布的數據量是本地驗證匯總交易所需的最小數量。通過將數據上鏈,任何人可以檢測欺詐、發起提款或親自開始生成交易批次。因此,匯總比Plasma鏈或側鏈為我們提供了更高的安全保證。rollups和Plasma之間的另一個關鍵區別是我們不必擔心數據可用性問題。畢竟,我們將交易數據發布到主鏈上。這是一個巨大的勝利。使用匯總,我們有效地在匯總層內運行EVM的一個版本。這意味著以太坊上任何可能的交易都可以在匯總中執行。這就引出了一個問題:如果我們仍然在鏈上發布交易數據,那么這將如何擴展第1層?擴展性不還是受限于主鏈的數據帶寬嗎?是的。這里的關鍵是我們通過匯總獲得5到100倍的可擴展性,但不是無限的可擴展性。Rollups還使用了許多花哨的壓縮技巧來最小化我們在鏈上發布的交易數據,因此鏈上的數據存儲比其他方式少得多。
同時,我們將鏈下交易執行的所有繁重工作外包給匯總。回想一下,在交易執行期間,交易必須由以太坊虛擬機(EVM)處理并與狀態交互。這是昂貴的。
然而,對于匯總,我們通過在匯總中運行EVM的一個版本來將此執行轉移到匯總層——所以我們仍然在執行相同的執行,但匯總層的gas成本比以太坊便宜得多。
仔細查看匯總
現在,讓我們看看匯總是如何在幕后工作的。主鏈上有一個“匯總合約”,用于維護匯總層的當前狀態。這包括在其上進行交易的用戶的賬戶余額和其中存在的合約的智能合約代碼。簡而言之,匯總合約跟蹤匯總層中交易的“狀態根”。
“狀態根”由一個鍵值映射組成,其中鍵是地址,值是賬戶。每個賬戶最多有4個屬性:余額、隨機數、代碼和存儲。?
當事務發生在匯總層時,會發生狀態更改。當然,這意味著狀態根也需要更新。但不是為每筆交易更新狀態根,而是將交易“批量”發送到主鏈上的匯總合約。該批次將包括該批次事務的壓縮形式和一個更新的狀態根,該狀態根表示該批次事務處理后的數據。主鏈上的匯總合約檢查批次中的前一個狀態根是否與其當前狀態根匹配——如果匹配,它將狀態根切換到新的狀態根。
由于發布的交易數據實際上并沒有被EVM解釋,我們沒有訪問或寫入狀態——這太昂貴了。相反,我們將壓縮的交易數據作為“calldata”參數發布到匯總合約。
這就是為什么這很整潔,在Solidity中,calldata是最便宜的存儲形式。事實上,作為calldata參數傳遞的參數根本不會存儲在以太坊的狀態中,這意味著我們避免了很多gas費用。同時,以太坊節點仍然可以在創建區塊時存儲交易數據。
精明的讀者可能想知道Plasma和匯總之間有什么區別。這是關鍵的區別:通過匯總,我們將交易數據與狀態根一起發布到鏈上。使用Plasma,我們只需發布交易的狀態根。
與Plasma不同,我們有一個將Merkle根發布到根鏈的操作員,rollups允許任何人將新一批交易發布到鏈上的rollup合約,稍后我們將更深入地探討。
今日恐慌與貪婪指數與昨日持平為14,等級仍為極度恐慌:金色財經消息,今日恐慌與貪婪指數為14(昨日為14),恐慌程度與昨日持平,等級仍為極度恐慌。
注:恐慌指數閾值為0-100,包含指標:波動性(25%)+市場交易量(25%)+社交媒體熱度(15%)+市場調查(15%)+比特幣在整個市場中的比例(10%)+谷歌熱詞分析(10%)。[2022/6/26 1:31:45]
再一次,這引出了一個問題:既然我們只是將交易數據發布到主鏈而不是執行鏈上的交易,我們怎么知道發布在主鏈上的交易數據和狀態根不是欺詐性的?
輸入:樂觀匯總和零知識匯總,每種都有自己的處理和驗證批次正確性的方式。
樂觀匯總
您可能可以根據名稱猜出樂觀匯總是什么,當一批新的交易“匯總”到主鏈時,每批的狀態根和哈希都會被發布,但我們實際上并沒有驗證交易是否正確執行,至少在發布時沒有。通過這種方式,我們“樂觀地”將新的狀態根和交易數據發布到主鏈上的匯總合約。當某人將新的狀態根發布到主鏈時,匯總智能合約會簡單地接受他們的話。如果有人發現向匯總智能合約發布了無效的狀態轉換,他們可以生成“欺詐證明”。欺詐證明包括:
“預先狀態”的證明,或者,在應用交易之前事情的樣子
“后狀態”的證明,或者,在應用交易后狀態應該如何處理
在狀態轉換期間應用的交易證明
工作流程很簡單:這個欺詐證明被發布到主鏈上的匯總合約中。然后匯總合約驗證證明并將交易邏輯應用于預狀態。然后,它將結果與后狀態進行比較。如果存在不匹配,則證明發布批次的人沒有正確應用交易。然后,智能合約會還原該批次的交易以及之后的所有批次。
為此,任何將批次發布到主鏈的人都必須存入保證金,因此如果他們表現出惡意并被抓到,他們可能會被“罰沒”。
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隊列,在那里您將學習如何在以太坊上構建和部署安全的智能合約。
本文提供的信息僅用于一般指導和信息目的。本文的內容在任何情況下均不應被視為投資,業務,法律或稅務建議。對于根據本文做出的個人決定,我們不承擔任何責任,我們強烈建議您在采取任何行動之前進行自己的研究。盡管已盡最大努力確保此處提供的所有信息都是準確的和最新的,但可能會發生遺漏或錯誤。
文章作者:PreethiKasireddy
文章翻譯:Blockunicorn
社交媒體、游戲和娛樂將在元宇宙進行融合。社交電商平臺DisplaySocial,1月10日宣布已成功完成對ThunderStudios和InfiniteReality的收購.
1900/1/1 0:00:00移動支付網消息:數字人民幣的發展已成蔚然之勢。截至2021年底,數字人民幣試點場景超過808.5萬個,累計開立個人錢包2.6億個,交易金額875.7億元.
1900/1/1 0:00:00原標題:《加密貨幣市場出現投降會發生什么?我們該如何應對?》在寫這篇文章的時候,加密貨幣市場是無聊和糟糕的.
1900/1/1 0:00:002020年開始,新冠疫情席卷全球,對世界范圍內各領域的經濟造成嚴重沖擊,尤其對于旅游業這類以線下形式為主的經濟體。雖然全球旅游經濟逐漸呈現復蘇態勢,但目前復蘇的程度和進度還較為緩慢.
1900/1/1 0:00:00穩定幣是基于區塊鏈的法定貨幣版本,這意味著它們是可編程的,并且可以與基于區塊鏈的應用程序和智能合約進行交互.
1900/1/1 0:00:00回顧從Web1.0到Web2.0的過渡情況。新技術在剛被發現時從未被正確使用。這是因為它們常常被用來解決預先存在的問題,而不是用來釋放新的機會。我們已經一次又一次地看到這種情況.
1900/1/1 0:00:00