原文來源: Heng Youzhe, CryptoYC Labs
Layer 2是什麼
Layer 2是解決方案的統稱, 旨在通過在以太坊主網(第1層)上處理交易來幫助擴展應用程序,同時利用強大的主網分散式安全模型。當網路繁忙時, 交易處理速度會受到影響, 這會使某些類型的dapps的用戶體驗變差。隨著網路的日益繁忙, 電費也隨著交易發送方的競標而上漲。這可能會使使用以太坊變得非常昂貴。
Rollup是什麼
rollup中文直譯為打包,以前的⽤法為編程語言模塊打包器,相當於python中的module。現在用於第2層協議中的⼀種解決方案。總的來說,它們把主鏈下的很多交易打包,生成⼀份聲明或者證明,證明此包內的所有交易合法(即交易前Merkle樹的根和前⼀包內的交易後根對應的上,且交易內容合 規),然後只將其中⼀部分內容發布到主鏈,從而增加速度,減少電費和交易費消耗。
特點
• 交易執行在主網之外;
• 但交易數據或交易證明存儲於主網, 以便於驗證.
種類
• 零知識證明 zk-rollup;
• 優化 optimistic-rollup(筆者自譯)
ZK-Rollup
簡介
這⾥僅為簡單介紹,詳細部分會另開文章介紹。簡單來說,零知識證明就是在不暴露秘密的情況下,說服對⽅我有這麼⼀個秘密。例如對於A,B兩人,A知道秘密a, b (和 a+b=7), B知道線性映射 f(x),B發給A映射f, A計算f(a)和f(b)並發給B,B計算f(a)+f(b)=f(a+b)。如果f(a+b)=f(7) ,那麼B可以確 信A知道a+b=7。從歷史來講,零知識這⼀概念最早出現於1985年, Shafi Goldwasser, Silvio Micali, and Charles Rackoff 「The Knowledge Complexity of Interactive Proof-Systems」 。而零知識證明用於Rollup 最早出現於2018年Barry的白皮書中。
零知識證明在rollup中的作用
這⾥零知識證明主要是用於以太坊區塊鏈上發布並公開記錄該區塊的有效性。在Layer2上被打包的交易將會以⼀個證明的形式發佈於主鏈,這使得每個人都有驗證它的辦法。主要目的是防止有人惡意 利用Layer2上的交易來篡改信息。值得注意的是,零知識證明並不是隱私保證,也不是加密系統。因為除了擁有該秘密的人以外,沒有⼈可以解密。從誕生至今, 零知識證明或者說ZK-Rollup經歷了三個發展階段:SNARK, STARK, 和Bulletproofs. 目前來說Zcash, ZK Sync(Matter Labs), DarkForest(Game)等在使用SNARK, Monero 使用 Bulletproofs. 從下圖中可以對比這三種方法的區別。具體例子將在後文介紹。
特點
對比Plasma和側鏈
由於Plasma和側鏈的擴容性問題,Rollup本身被視為新興解決方案,而ZK-Rollup又是其中可擴容性最強的,也是處理交易速度最快的,相對於Plasma和OP-Rollup⽽⾔。它的數據只有很少⼀部分存儲於主鏈上。
單筆交易費降低。
對比OP-Rollup
⼀般說來,它的驗證速度快,證明生成速度很慢。但是由於它的生成依賴於智能合約,所以相當於 把所有人的工作分給了⼀個⼈做,剩下的人的工作就是簡單的驗證,這裡單指SNARK。
不需要欺詐遊戲,從而使交易快速被驗證入塊(約十分鐘)。
零知識證明的計算困難要求數據優化以獲取最大吞吐量。
ZK-Rollup需要生成⼀個初始串,這會使系統中心化⼀些。
量子計算可以破解,這裡指SNARK。STARK可以抵禦量里攻擊。
它需要的安全性假設更高。
OP-Rollup
簡介
優化Rollup出現於2019年7月,由John Adler在以太坊基金會研究論壇上提出想法。目前使用 Optimistic-Rollup的有Optimism, Fuel Labs, Arbitrum 想法較為簡單,這裡OP-Rollup⼀共有兩種鏈下角色,聚合者(Aggregator)和驗證者(Validator)。在 Layer2發生的交易被聚合者打包,並生成⼀個Merkle樹的頭,和智能合約。 在聚合者質押⼀筆資金後,聚合者可以將打包的交易上傳至主鏈。驗證者審查該打包,可以提出質疑,並給出欺詐證明 (fraud proof)。
欺詐證明:驗證者可以審查資⾦狀態和總和,對比於自己的本地狀態,若發現有非正常更新,則驗證 者可以提出質疑並更改從該區塊到之後的所有區塊(區塊在從rollup上傳至主鏈後會有1-2周的質疑時 間,若此時間內無人質疑則該區塊完結)。提出質疑的驗證者可以得到聚合者質押的資金。
OP-Rollup使⽤博弈論和驗證遊戲來確保數據驗證,它們的運作假設是每個人都遵守道德規範,但如 果有惡意方發布交易,則區塊回退,因此命名為Optimistic Rollups。
特點
交易周期:相對於ZK-Rollup而言,OP-Rollup需要1-2周時間完結區塊。交易速度不慢,但交易狀態完結需要較長周期。
應用性:⽬前⽽⾔兩種Rollup均⽀持EVM。ZK-Rollup最近也⽀持EVM,使得OP-Rollup失去了原本優勢的其中之⼀。
交易速度與交易費:現實交易速度500筆/每秒,相對於ZK-Rollup的2000筆/每秒存在劣勢。
數據記錄:所有交易數據均記錄在主鏈,⽆需信任第三⽅,但也加重了交易費。
安全假設:OP–Rollup假設⼤多數驗證者是誠實的。
另⼀份對比表格見下圖:
總結
總結而言,Rollup想法並不難掌握,該想法側重於打包鏈下交易並設法放⼊主鏈。打包的交易發生並執行於鏈下,從而加快交易速度。鏈上存儲的數據減少至只需要Merkle樹的頭或者⼀個證明,從而節省費用。對比而言,筆者更看好ZK-Rollup在長期的前景,OP-Rollup原本最⼤的優勢在於其應⽤性及⽤⼾體驗良好。這兩點優勢在ZK-Rollup已經應用EVM及目前飛速發展中已經逐漸消失。而ZK-Rollup的安全性 更強,理論交易速度更快,存儲數據更少從而更加節省費用。只有⼀點目前存疑,就是ZK-Rollup的計算性過⾼,可能還是會導致費⽤上的劣勢。另⼀點疑問將在下篇文章中給出,當然也可能是筆者對於 SNARK應用於實踐的過程了解不甚所導致。
冷萃財經原創,作者:Awing,轉載請註明出處:https://www.lccjd.top/2021/06/23/%e5%85%b3%e4%ba%8erollup%ef%bc%8c%e4%bd%a0%e5%ba%94%e8%af%a5%e7%9f%a5%e9%81%93%e7%9a%84%e5%9f%ba%e7%a1%80%e7%9f%a5%e8%af%86/?variant=zh-tw
文章評論