活動預告
Layer2 可以為 DeFi 帶來什麼?掃描文末二維碼進群參與今日話題討論,即有機會獲得 imToken 精美周邊。
DeFi 業務的增長從 2020 年起飛,TVL 從 $600M 到 $25B,增長了 40 倍。從一個現象就能直觀感受:DEX 去年從每日數千筆到達數十萬筆規模,Uniswap 的單日交易量甚至一度超過了老牌中心化交易所 Coinbase。
以太坊上的交易量不斷攀升,區塊容量卻開始吃緊,而礦池選擇 GasPrice 競價排序交易使其利益最大化。同時考慮到 DeFi 業務技術上存在搶跑攻擊,用戶心理上存在 FOMO 等問題,導致最終大家願意付出更高的價格讓交易跑得飛快。高價礦工費,使我們離普惠金融的初衷漸行漸遠。
那麼以太坊為什麼不選擇直接提升區塊容量,承載更多交易呢?原因很簡單,區塊鏈核心限制在於「每一筆交易都要由網絡中每一個節點驗證處理」,那麼當區塊大小擴大幾倍時,則會讓更多小型節點退出,逐漸走向中心化。
給區塊鏈擴容難嗎?
早在 2010 年時中本聰就已經探討過擴容問題,最初中本聰在比特幣源碼中設定區塊容量為 32M,但後來區塊交易量一直很小,就把容量設置為了 1M。他自己也認為如果有擴容需求,那麼在代碼中設定區塊高度自動升級區塊容量就好了。
但是後來比特幣擴容卻不是那麼順利,主要分歧在於是採用「隔離見證和閃電網絡」,還是「增加區塊容量」。前者認為「區塊容量增大要求更高帶寬和存儲,會使節點逐漸走向中心化」,希望藉助隔離見證和閃電網絡這兩項技術完成擴容,不增加區塊容量。
注:這也是為什麼 Eth2 希望採用 PoS 降低節點門檻,從而讓更多人可以成為驗證人,使其完成去中心化世界賬本的理想。
當然這最後已經不是技術問題了, 而是上升到了意識形態之戰,經歷香港共識的出爾反爾與不信任,最終走向硬分叉的道路,形成目前 Bitcoin Core 和 Bitcoin Classic 兩條擴容路線。
比特幣擴容過程就像一場戲劇,我們可以看到諸如 SegWit、Schnorr Signature、Lightning Network 等擴容技術落地實現,但還未有質的改變。
- SegWit:交易數據壓縮至 25%;
- Schnorr Signature:單簽名數據壓縮至 50%;多重簽名:多筆交易壓縮成單筆交易體積;
- Lightning Network :缺少點對點小額支付場景,資產規模僅有 1000+ BTC。
後來閃電網絡白皮書的作者 Joseph Poon 轉戰以太坊社區,與 Vitalik 在 2017 年發布 Plasma 白皮書,試圖解決以太坊的擴容問題。
Plasma 主張將交易的計算和存儲搬到 Layer2,然後將多筆交易壓縮成一個區塊,並將區塊的默克爾根提交到 Layer1 Plasma 合約,從而提高吞吐量和降低交易成本。
Layer2 依賴 Layer1 Plasma 合約作為安全信任和仲裁層,如果 Layer2 出現問題/作惡,那麼用戶可以藉助 Layer1 Plasma 合約退出資金。退出資金要等待約 2 週的挑戰期,在此期間任何人都可以提交「欺詐性證明」證明退出無效,從而獲得獎勵。反之,若無問題則等待挑戰期結束,順利退出。
Vitalik 稱 Plasma 是 side chains that have a non-custodial property,究其原因主要是用戶需要信任 Side Chain 機制,而無法保障自己資金的所有權,但 Plasma 通過交互式欺詐性證明可以讓用戶隨時申請退出資金,即便 Plasma 子鏈出現問題/作惡。
Plasma 曾是社區的希望,我們可以看到許多 Plasma 變體實現諸如 OmiseGo、Matic、Loom 等,但因為一些缺陷,它並沒有獲得社區最終的青睞:
- 缺少數據可用性,用戶不得不依賴 Plasma 可信任節點數據或不斷監控網絡是否作惡,無法獲得同等於 Layer1 的安全性。
- 提款週期長,依賴長達兩週的欺詐性證明挑戰期,如果有人作惡,同時挑戰期內無人發現並提交作惡(欺詐)證明,那麼用戶資金存在損失風險。
上面這段話可能有些難以理解,我們來舉個數據可用性的例子:
當你去賭場玩德州撲克時,你從櫃檯(Layer1)將美元換取籌碼,然後你開始隨便找了一張桌子玩了幾個小時德州(Layer2 交易),當你贏到盆滿缽滿的時候,你準備起身到櫃檯兌換籌碼。此時賭場的壞人給你當頭一棒,你失去了記憶(數據不可用),牌桌上的荷官當作什麼事情沒有發生過一樣,重新開始剛才的牌局,騙走你本應贏到的籌碼。
從過去比特幣和以太坊擴容情況來看,我們逐漸找到了理想擴容方案應該有的樣子
- 保持區塊容量大小,避免走向中心化;
- 支持數據可用性,用戶可以從 L1 上重建交易狀態;
隨著 2019 年以太坊硬分叉升級 - Istanbul,我們離理想擴容方案越來越近,此次升級包含兩個 Layer2 友好的 EIP 提案
- EIP - 1108:使 SNARKs 和 STARKs 驗證運算更便宜;
- EIP - 2028:降低 Calldata Gas 消耗量,以便 L2 數據採用 Calldata 形式低成本上鍊
Layer2 Rollup 的現狀
什麼是 Rollup?
Rollup 有不少中文譯名,其中一個打趣的翻譯是「春捲」,你可以想像將食物捲起來一口吃下去的感覺。實際上,Rollup 就是將交易數據壓縮放到 Layer1 上,從而實現同樣的區塊容量可以塞下更多交易,將 30 TPS 擴容到 3000 TPS 級別,再搭配上 Eth2 Sharding 擴容,效果可以媲美當下 Visa 的水準。
如何壓縮數據?
壓縮是 Rollup 的精華,巧妙的壓縮技巧可以塞下更多的交易,同時壓縮數據上鍊可以提供「數據可用性」,保障用戶資產安全。
一筆簡單的以太坊交易(比如發送 ETH)通常消耗約 110 字節。然而,在 Rollup 上發送 ETH 僅消耗約 12 字節。我們以收款地址和交易簽名舉例:
- To:使用「索引」來代替 20 字節的地址(例如:一個地址是「狀態樹」中的第 4,527 個地址,我們就可以用索引 4,527 來表示它);
- Signature:利用零知識證明的特性,將數千筆交易簽名轉化為零知識證明,通過檢查證明的有效性,從而證實數千筆交易有效。
Rollup 方案對比
Rollup 方案主要分為兩種 :ZK Rollup 和 Optimistic Rollup。前者採用有效性證明,後者採用欺詐性證明,這兩種證明方式背後的理念是不同的:
- 有效性證明:採用數學的方式保障資金安全、用戶體驗流暢和隱私,但短期內無法支持通用的 EVM 計算;
- 欺詐性證明:支持通用 EVM 計算(方便以太坊項目遷移) ,但短期內無法採取零知識證明,所以折衷選擇欺詐性證明,保障資金安全。
最後,本文為了講述 Layer2 發展歷程提及了一些過往不同的擴容方案,但這並不意味這些方案的思路是失敗的。這其中除了技術問題,商業可行性也是值得深思的,正如 Vitalik 對這兩種 Rollup 方案的評價:
短期內,Optimitic Rollup 很可能在通用的 EVM 計算中勝出,而 ZK Rollup 則可能在簡單的支付、交易和其他特定應用場景中勝出。但從中長期來看,隨著 ZK-SNARK 技術的改進,ZK Rollup 最終將在所有場景中勝出。
- 今日話題討論 -
Layer2 可以為 DeFi 帶來什麼?
掃碼回復關鍵詞「L2」加入討論群