你搞得清楚比特幣生態上的 Layer2 和 L2 Rollup 項目的差異嗎?本文為讀者認真研究 Layer2 的概念。UTXO 技術體系裏還沒有誕生出類似於 Rollup 的 Layer2 實現。
(前情提要:為什麼說比特幣L2生態「無法復刻」以太坊多樣玩法?)
(背景補充:L2 鏈上資料全對比:誰是生態活躍的受益者?)
近期比特幣生態上發了許多代幣,幾乎都被冠於 L2 概念來獲得討論度,我們認為有必要認真研究下 Layer2 這個概念。通常在比特幣網路上我們管以下產品型別叫過 Layer2:
- 閃電網路
- 側鏈(例如聯盟鏈)
- 客戶端驗證:omni 協議、ordinals 協議、RGB 協議…… 等等
從解決問題的視角來說:Layer2 應該是解決區塊鏈的可擴展套件性問題,或者換成更具體的問題來說是增加平均每秒交易量(TPS)、提高交易速度,和降低交易費用。如果遵守這個功能性定義,我覺得閃電網路和側鏈是配得上叫 Layer2,但客戶端驗證配不上。
閃電網路和側鏈可稱為 Layer2
閃電網路和側鏈裡的交易都是獨立於比特幣主網的,這兩產品裡的比特幣交易都是不需要主網礦工來處理,只是在比特幣入金和提現到閃電網路側鏈時礦工才需要介入。這樣就大大提供了比特幣的交易量、速度和大大降低了交易礦工費。
客戶端驗證本質上還是比特幣主網交易,是在比特幣交易資料結構裡優化,在資料結構裡塞一些新資料來表達新功能。
但現在客戶端驗證也都稱自己為 Layer2,更可能是將 Layer2 要解決的問題擴展套件成了:豐富 L1 的功能。
受限於比特幣主網 L1 功能貧乏,就只能轉個帳,現在各路客戶端驗證的專案都是奔著擴充比特幣的功能去的,主要就是擴充了發幣功能和非託管式交易所(DEX)。
比特幣生態 Layer2 定義
照這樣的發展趨勢,我想比特幣社群的共識可能會將 Layer2 的概念修正為:解決比特幣的可擴展套件性問題的方案,或豐富主網的功能性解決方案。
從資產的安全性來看 Layer2,Layer2 裡的資產和交易原則上是不應該和 L1 有本質的差別的。
但目前看來,閃電網路在安全性上是比特幣生態裡眾多 Layer2 裡做的最好的。
側鏈更多的是一個多籤保證裡面的資產的安全性,這是非常不夠的。
客戶端驗證主要是擴充比特幣 L1 的功能,用於發行資產,其他發行的資產的安全性還得受限於客戶端本身的共識,這也是和比特幣 L1 的安全模型有本質不同的。
目前看得到的發幣協議,taproot assets 是一個安全模型上和 L1 非常接近的協議。
從電腦的執行原理來看 Layer2,任何交易在計算執行原理上可以分成:計算、儲存和傳輸。
在 Layer2 產品裡,閃電網路裡的交易的計算、儲存和傳輸都是獨立於比特幣 L1 的。只有將 BTC 入金到閃電網路,和提出到 L1 時,主網 L1 才需要介入;而側鏈也類似。
客戶端驗證呢?
而客戶端驗證則儲存和傳輸都是使用了比特幣 L1 網路,只有計算在自己的客戶端。
綜上,Layer2 這個概念現在正在進入一個達成共識前的混亂時期,很可能會演化成如下的定義:
Layer2 是致力於是解決 L1 的可擴展套件性問題,或豐富 L1 的功能性,在安全性致力於實現 Layer2 的資產儘可能和 L1 接近。
這裡的「或」是關鍵字。
參考以太坊的實踐更加清晰,我覺得以太坊的 Rollup 的設計是將一個 Layer2 非常好的設計實現。
Rollup 的本質可以用這麼一句話來解釋:
- 設計一個中心化伺服器執行的軟體(也可以叫成是客戶端吧)和在 L1 部署一個智慧合約錢包;
- 將以太坊資產入金到一個 L1 的合約錢包,並且在客戶端裡反射出 1:1 的 token,反過來銷毀客戶端裡的 token,則可以 1:1 在 L1 的合約錢包裡提現出對應的資產。
- 在客戶端裡可以完成資產相關的任何功能和計算,並且定期將資產的最終狀態更新到 L1 的那個合約錢包裡(只更新狀態根)
- 在安全性上,Rollup 裡的資產的安全性做到了和 L1 幾乎接近。
- 在計算資源的消耗上,Rollup 裡的交易主要是在客戶端軟體裡消耗計算資源,在 L1 上花少量計算資源(壓縮比從 20:1 到幾千:1 的都有)
Rollup 可以說是很好地解決了實現了資產安全性、鏈的可擴展套件性、功能性這三個目標,即保證了資產的安全性,又擴展套件了資產的交易量 TPS 和交易速度之類的,還大大提高了資產的功能性。
而 Rollup 是將上面的「或」字,變成了「和」。
目前看來 UTXO 技術體系裡還沒有誕生出類似於 Rollup 的 Layer2 實現,我感覺 bitVM 有很小的概率可以做到。
📍相關報導📍
投資機構眼中的 Layer2》IOSG創辦人Jocy:我對 L2 現況的思考