德鄰資本研究院:以太坊Layer2 Rollup擴容解決方案的探討

在2020年5月,以太坊網路上出現了所謂的 “黑色星期四”:以太坊變得過于擁擠,以至于MakerDAO無法按照預期進行工作,在這種情況下,不同參與者可以去競標“抵押品不足的資產”,這意味著允許一個參與者以0美元的價格競標價值450萬美元的ETH。MakerDAO的崩潰向我們展示了可擴展性不足的后果,

正如“黑色星期四”所證明的那樣,如今這種因以太坊擁堵而造成的安全威脅已成為一個十分嚴重的問題,許多項目通過創建鏈外Layer2的解決方案(例如側鏈、狀態通道、Rollup等)來解決可擴展性問題,這些解決方案本質上都是將區塊鏈作為信任的錨點。

Layer2擴容技術將事務遷移到鏈外(與Layer1擴容技術相反,后者提高了基礎鏈的事務吞吐量)。如果構建可行,那么Layer2擴容解決方案可以利用區塊鏈的許多好處(安全性,不變性,去中心化等),而不會產生相同的成本(確認時間慢,交易成本高昂且交易成本高等),并且需要進行更少的權衡和假設,

過去幾年中,有關以太坊的兩個主要擴容建議是側鏈(即Plasma)和狀態通道(是一種更通用的支付渠道版本,在比特幣網路上已存在多年)。而近期 Rollup的解決方案引起了公眾的密切關注,基于Rollup的Layer2項目也獲得了很大進展,上一期德鄰研究院為大家介紹了以太坊Layer2 擴容解決方案,本期的主題是在了解Layer2的基礎上一起聊一下現在以太坊社區內大火的Rollup擴容解決方案,

首先,什么是Rollup?

Rollup是類似于Plasma的Layer2擴容解決方案,它借鑒了Plasma的許多概念,Rollup在某種意義上類似于Plasma,通過將交易從鏈下遷移至由主網(也就是Layer1)保護的Layer2側鏈來擴容以太坊。這兩種擴容方案都將智能合約部署到主網上,其中包含了存放在側鏈中的所有資金和側鏈當前狀態的證明。側鏈用戶和運營商對側鏈進行維護,并確保將有效的狀態轉換提交給主網合約,

Rollup的概念可以追溯到2014年,被以太坊聯合創始人Vitalik Buterin稱為“Shadow Chain”,即影子鏈。 Plasma和狀態通道等解決方案的失敗導致開發人員重新審視了Buterin的Shadow Chain(現稱為Rollup)。雖然Plasma和狀態通道每秒可以擴展數百萬個事務,但它們不能兼容那些DeFi相關的應用程式中的智能合約,

Rollup建立在“Shadow Chain”構想的基礎上,通過在鏈外執行狀態并且僅使用以太坊區塊鏈來實現數據可用性,Rollup的區塊發布或狀態更新僅通過tx CALLDATA將一些數據發布到每個事務的主鏈上,從而提高了吞吐量并克服了側鏈的數據扣留攻擊問題。

Rollup有兩種類型:Optimistic Rollup和ZK Rollup,它們在確保側鏈區塊有效性方面采取的方法有所不同。對于Optimistic Rollup,有效性由欺詐證明和同步假設來確保,而對于ZK Rollup,有效性則由零知識證明來確保。

什么是Optimistic Rollup?

Optimistic Rollup的設想首先由John Adler在2019年7月的以太坊基金會研究論壇上提出,并且Optimistic Rollup更接近影子鏈的原始設想提綱,致力于Optimistic Rollup的團隊包括Optimism(前 Plasma Group),Fuel Labs,Arbitrum等。

在Optimistic Rollup中,有兩個主要參與者:Aggregators(收取網路費用)和Validators(激勵方式類似于比特幣的全節點),它可以提供近乎即時的交易和智能合約,并且不需要Gas費(不包括Aggregators收取的費用)。在使用現有ECDSA簽名的情況下,由Optimistic Rollup啟用的事務處理速度約為100 tps,如果將簽名方法更改為BLS,則事務處理速度可以增加到500 tps。

Optimistic Rollup是指其對以太坊Optimistic虛擬機(OVM)的使用,從技術上講,它是以太坊虛擬機(EVM)的集成化,它基于Layer2的數據對Layer1的狀態進行了“樂觀”的狀態預測,我們可以這樣理解:在Optimistic Rollup Layer2鏈上,用戶有一臺用于處理交易和智能合約的機器(OVM),所有日常操作都在該Layer2機器中進行;在以太坊Layer1鏈上,用戶擁有一臺相同的OVM機器,但除非緊急情況發生,否則不會使用它。如果某人認為某一個Layer2 OVM的操作是具有欺詐性的,那么他可以在Layer1運行的OVM計算機上重新運行該操作來證明該操作的真實性,要成為Optimistic Rollup Layer2節點,用戶(A)須在Layer1智能合約中鎖定一些資金(成為“Bond Aggregator”),如果該用戶(A)表現不佳,并且有其他用戶(B)最終證明了該用戶(A)的操作具有欺詐性,則該用戶(A)的保證金將被削減,而用戶(B)將獲得與所削減數量等額的保證金作為獎勵。

Optimistic Rollup可以支持簡單的支付和復雜的智能合約,現有代碼庫的大部分內容都可以輕松移植到Optimistic Rollup中,因此Optimistic Rollup被視為直接解決方案,另一方面,將智能合約從以太坊的主鏈無縫遷移到ZK Rollup是一件相對來說難度更大的事。

什么是ZK Rollup?

簡而言之,ZK Rollup是一種Layer2擴容解決方案,其中所有資金都由主鏈上的智能合約持有,而它執行鏈下的計算和存儲,其側鏈的有效性通過零知識證明來確保。

ZK Rollup最初由Barry Whitehat于2018年提出,其安全保障與底層Layer1(即以太坊)相同,可以在一分鐘內生產區塊并將吞吐量提高至2,000 tps,ZK Rollup實現的項目包括Matter Labs和Starkware,

ZK Rollup無需等待兩周的時間來完成影子鏈中的一個區塊的最終確定,而是用零知識證明代替了欺詐挑戰。賬戶和余額由單獨的Merkle樹表示,這些默克爾樹的根確保了沒有人可以偽造數據,每個Merkle樹的根(一個用于賬戶,另一個用于余額)都存儲在以太坊上的智能合約中,該合約只提供側鏈狀態的“簡單表示”,所有其他數據都是在鏈外存儲的。

ZK Rollup就像你在與建立區塊和狀態更新的某個人(稱為中繼器)進行交談。狀態的變化是經過哈希處理的,這是SNARK(一種零知識證明)的輸入過程,該輸入中包括Rollup塊中每個事務的有效性證明。交易被匯總在一起,僅有頭部被簽名并提交給主鏈,因此,減少了以太坊鏈上存儲的數據量。所有簽名都被稱為ZK-SNARK的零知識證明所取代,這可以使所匯總的交易記錄得到壓縮,

由于每個簽名的驗證都被單個SNARK取代,因此計算也得到了改善,僅有一小部分資訊(地址簿的兩個Merkle根和余額/隨機數,兩者均為32字節)添加到主鏈中,他們僅占通過CALLDATA在鏈上發布的交易數據的一小部分。提交區塊或狀態更新后,用戶可以檢驗零知識證明的有效性。若其中發起挑戰的交易告訴智能合約某些數據不正確,那么該區塊最終無效。

這些挑戰在ZK Rollup中被ZK-SNARK所取代,在該中繼器中無效或不正確的狀態是不可能被提交的, SNARK證明這一系列交易是由擁有者正確簽署的,并且從舊的Merkle根到新的Merkle根,賬戶余額的更新是正確的,因此,中繼器不可能提交無效的或被操縱的狀態,

ZK Rollup將ZK-SNARK證明提交到主網Rollup合約中,然后主網智能合約將驗證并接受任何有效的證明。這個過程幾乎立即發生并且規模巨大,相較而言,Optimistic Rollup總會犧牲一些可擴展性以適應Layer2上的智能合約,同樣它的過程會稍有延遲,以便于用戶有時間向Bond Aggregator的無效塊發起挑戰。

因此,從長遠來看,也有人認為ZK Rollup是更有希望的解決方案,盡管現在這種擴容技術確實可以對Optimistic Rollup進行補充以實現簡單的付款,但是已經有一些Dapp使用該技術(例如LoopRing),并且在實現智能合約支持方面取得了進展。

Rollup對于以太坊具有很大的潛力,但仍有許多挑戰需要克服,Rollup的挑戰在于DeFi服務器的可組合性,如果不同的Rollup鏈上有不同的Dapp,則不同Rollup鏈之間的資訊互通將比以太坊主鏈上的資訊互通更加困難,為了保持可組合性,DeFi服務器將必須在特定的Rollup鏈上進行協調并創造臨界質量,盡管在以太坊應用程式中出現了采用Rollup的良好跡象,但區塊鏈網路“無需許可”的性質意味著并非每個用戶或服務器都將采用這些Layer2解決方案,

0 条回复 A文章作者 M管理員
    暫無討論,說說你的看法吧