「V 神」最新撰文:回顧不同類型的Layer2 方案


原文作者:Vitalik Buterin

原文來源:mirror

編譯:Yvonne,MarsBit

以太坊L2 生態系在過去一年迅速擴張。傳統上由StarkNet、Arbitrum、Optimism 和Scroll 組成的ZK-EVM rollup 生態系統進展迅速,在提高安全性方面取得了長足進步; L2beat page 很好地總結了每個專案的狀況。此外,我們也看到建構側鏈的團隊也開始建構Rollup(Polygon),L1 專案尋求朝向有效性驗證方向發展(Celo),以及其他全新的嘗試(Linea、Zeth…)。

這樣做的一個必然結果是,我們看到L2 專案正呈現出更異質的趨勢。我預期這一趨勢將持續下去,主要原因有以下幾點:

一些目前是獨立L1 的專案正在尋求向以太坊生態系統靠攏,並有可能成為L2。這些項目可能希望逐步過渡。現在一下子過渡會降低可用性,因為技術還沒準備好把所有東西放在一個Rollup 上。如果稍後再一次性過渡,則有可能犧牲發展勢頭,而且為時已晚,沒有意義。

一些中心化專案希望為用戶提供更多安全保證,並正在探索基於區塊鏈的途徑。在許多情況下,這些項目會在上一個時代​​探索「許可聯盟鏈」。實際上,它們可能只需要「半中心化」等級的去中心化。此外,由於它們的吞吐量往往非常高,因此至少在短期內,它們甚至不適合Rollup 發展。

遊戲或社群媒體等非金融應用程式希望實現去中心化,但只需要「半中心化」等級的安全性。就社交媒體而言,現實中需要對應用程式的不同部分區別對待:用戶名註冊和帳戶恢復等罕見且高價值的活動應在Rollup 中完成,但帖子和投票等頻繁且低價值的活動則需要較低的安全性。如果鏈故障導致你的貼文消失,這是可以接受的代價。如果鏈失效導致你的帳戶遺失,那麼問題就大得多了。

一個重要的主題是,儘管目前在以太坊L1 的應用程式和用戶在短期內可以支付較小但仍然可見的Rollup 費用,但來自非區塊鏈世界的用戶卻不可以:如果你之前支付的是1 美元,那麼支付0.1 美元比支付0 美元更容易合理。這既適用於目前的中心化應用,也適用於規模較小的L1 應用,它們通常收費很低,但用戶群仍然很小。

一個自然而然出現的問題是:對於特定應用而言,rollup 、validiums 和其他系統之間的這些複雜權衡中,哪一個對其而言是合理的?

Rollup、validiums、Disconnected Systems

我們要探討的安全與規模的第一個維度可以描述如下:如果你有一筆在L1 上發行的資產,然後存入L2,再轉給你,你能在多大程度上保證你能把這筆資產帶回L1?

還有一個並行的問題:是什麼技術選擇導致了這種保證程度,以及該技術選擇的權衡是什麼?

我們可以用一張K線走勢圖來簡單描述:

值得一提的是,這是一個簡化模式,有很多中間選項。例如:

介於rollup 和validium 之間:在validium 中,任何人都可以進行鏈上支付,以支付交易費用,此時運營商將被迫向鏈上提供一些數據,否則就會損失押金。

介於Plasma 和validium 之間:Plasma 系統提供類似Rollup 的安全保證,同時提供鏈外資料可用性,但只能支援有限的應用。一個系統可以提供完整的EVM,並為不使用這些更複雜應用程式的使用者提供Plasma 級擔保,為使用這些應用程式的使用者提供validium 級擔保。

這些中間選項可以看作是介於Rollup 和有效值之間的一個spectrum。但是,是什麼促使應用程式選擇spectrum 上的某一點,而不是更左或更右的某一點呢?主要有兩個因素:

1. 隨著科技的進步,以太坊原生資料可用性的成本將逐漸降低。以太坊的下一個硬分叉Dencun 引入了EIP-4844(又稱「原生分叉」),提供每秒約32 kB 的鏈上資料可用性。在接下來的幾年裡,隨著完整的「鏈上資料分片」的推出,這項資料可用性預計將分階段提高,最終達到每秒約1.3 MB 的資料可用性。同時,資料壓縮技術的改進將使我們能夠用相同數量的資料做更多的事情。

2. 應用程式本身的需求:使用者會因高額費用而遭受多少損失,而應用程式出錯又會造成多少損失?金融應用程式會因應用程式故障而遭受更大損失;遊戲和社群媒體涉及每個用戶的大量活動,而且活動價值相對較低,因此對它們來說,不同的安全權衡方式是合理的。

這類權衡大致是這樣的:

另一個值得一提的部分擔保是預先確認。預先確認是由一組參與者在Rollup 或有效期內簽署的訊息,表示「我們證明這些交易包含在此訂單中,並且後狀態根是這樣的」。這些參與者簽署的預先確認很可能與後來的現實不符,但如果不符,就會銷毀押金。這對於消費者支付等低價值應用非常有用,而對於數百萬美元資金轉帳等高價值應用,則可能需要等待有系統全面安全支援的「常規」確認。

預先確認可以看作是混合系統的另一個例子,類似於上文提到的“plasma/validium 混合系統”,但這次是具有全面安全性但延遲較高的rollup(或validium)與安全級別低得多但延遲較低的系統之間的混合。需要較低延遲的應用程式將獲得較低的安全性,但可以與那些可以接受較高延遲以換取最大安全性的應用程式生活在同一個生態系統中。

無需信任地讀取以太坊

另一種較少考慮但仍然非常重要的連接形式與系統讀取以太坊區塊鏈的能力有關。特別是,這包括在以太坊恢復時能夠還原。要了解這一點的價值,請考慮以下情況:

假設如圖所示,以太坊鏈發生回溯。這可能是epoch 內的臨時小插曲,鏈還沒有最終完成;也可能是一個不活動洩漏期,由於太多驗證器離線,鍊長時間沒有最終完成。

由此可能出現的最壞情況如下:

假設頂鏈的第一個區塊從以太坊鏈的最左側區塊讀取了一些數據。例如,以太坊上有人向頂鏈存入100 ETH。然後,以太坊回滾。但是,頂鏈不會回滾。因此,頂鏈的未來區塊將正確地跟隨來自新正確的以太坊鏈的新區塊,但現在錯誤的舊連結(即100 ETH 存款)的後果仍是頂鏈的一部分。利用這個漏洞可以印鈔票,將頂鏈上的橋接ETH 變成部分儲備。

有兩種方法可以解決這個問題:

1. 頂鏈只能讀取以太坊的最終區塊,因此永遠不需要還原。

2. 如果以太坊還原,頂鏈也可以還原。這兩種方法都能避免這個問題。前者更容易實現,但如果以太坊進入非活動洩漏期,可能會導致長時間的功能缺失。後者更難實現,但能確保在任何時候都能達到最佳功能。

請注意,(1) 確實有一種邊緣情況。如果對以太坊的51% 攻擊創建了兩個不相容的新區塊,而這兩個區塊在同一時間最終完成,那麼頂鏈很可能會鎖定錯誤的區塊(即以太坊社會共識最終不支援的區塊),並且必須恢復到正確的區塊。可以說,沒有必要提前編寫程式碼來處理這種情況;只需對頂鏈進行硬分叉即可。

一個鏈能夠無信任地讀取以太坊有兩個原因:

1. 它減少了將以太坊(或其他L2)上發行的代幣橋接到該鏈上所涉及的安全問題;

2. 它允許使用共享金鑰儲存架構的帳戶抽象錢包安全地持有該鏈上的資產。

第一點很重要,儘管這項需求已經被廣泛認可。第二點也很重要,因為它意味著你可以擁有一個允許輕鬆更改金鑰的錢包,並在大量不同的鏈上持有資產。

擁有橋接器是否能成為validium?

假設頂鏈一開始是一個獨立的鏈,然後有人在以太坊上添加了一個橋接合約。橋接合約是一種簡單的合約,它接受頂鏈的區塊頭,驗證提交給它的任何區塊頭都帶有有效證書,表明它被頂鏈的共識所接受,並將該區塊頭添加到一個列表中。應用程式可在此基礎上實現存入和提取代幣等功能。一旦建立了這樣的橋,是否就能提供我們前面提到的資產安全保證?

到目前為止,還沒有原因有兩個:

1. 我們驗證的是區塊是否被簽署,而不是狀態轉換是否正確。因此,如果你將在以太坊上發行的資產存入頂鏈,而頂鏈的驗證者不守規矩,他們可以簽署一個無效的狀態轉換,從而竊取這些資產;

2. 頂鏈仍然無法讀取以太坊。因此,如果不依靠其他第三方橋接器(可能不安全),你甚至無法將以太坊原生資產存入頂鏈;

現在,讓我們把橋變成一個驗證橋:它不僅要檢查共識,還要檢查ZK-SNARK,證明任何新區塊的狀態都是正確計算的。

一旦如此操作,頂鏈的驗證者就不能再竊取你的資金了。他們可以發布一個資料不可用的區塊,阻止每個人提款,但他們不能竊取(除非試圖向用戶索取贖金,以換取他們能提款的資料)。這與validium 的安全模式相同。

但是,我們仍然沒有解決第二個問題:頂鏈無法讀取以太坊。

為此,我們需要做兩件事中的一件:

1. 在頂鏈中放入一個橋接合約,驗證最終確定的以太坊區塊;

2. 讓頂鏈中的每個區塊包含一個最近的以太坊區塊的雜湊值,並制定一個強制執行哈希值連結的分叉選擇規則。也就是說,連結到不在規範鏈中的以太坊區塊的頂鏈區塊本身是非規範的,如果頂鏈區塊連結到起初是規範的但後來變成非規範的以太坊區塊,頂鏈區塊也必須變成非規範的。

紫色鏈接可以是哈希鏈接,也可以是驗證以太坊共識的橋接合約。

這樣就夠了嗎?事實證明,還是不夠,因為存在一些邊緣情況:

1. 如果以太坊受到51% 的攻擊會怎麼樣?

2. 如何處理以太坊的硬分叉升級?

3. 如何處理鏈的硬分叉升級?

以太坊遭受51% 攻擊的後果與頂鏈遭受51% 攻擊的後果類似,但情況相反。以太坊的硬分叉有可能使頂鏈內的以太坊橋不再有效。解決這個問題的最簡潔方法是,如果以太坊還原一個最終完成的區塊,則做出還原的社會承諾(social commitment);如果以太坊硬分叉,則做出硬分叉的社會承諾。這樣的承諾可能永遠不需要實際執行:你可以讓頂鏈上的治理小工具在看到可能的攻擊或硬分叉證明時啟動,只有在治理小工具失敗時才對頂鏈進行硬分叉。

不幸的是,第(3)點的唯一可行答案是在以太坊上設置某種形式的治理小工具,使以太坊上的橋接合約能夠感知頂鏈的硬分叉升級。

總結:雙向驗證橋接幾乎足以使區塊鏈成為validium。剩下的主要因素是一個社會承諾,如果以太坊發生特殊情況導致橋樑不再工作,另一條鏈將硬分叉作為回應。

結論

「與以太坊連結」有兩個關鍵維度:

1. 提現到以太坊的安全性;

2. 讀取以太坊的安全性。

這些都很重要,並且有不同的考慮因素。兩種情況都存在一個連續光譜:

請注意,這兩個維度各有兩種不同的衡量方法(所以真的有四個維度嗎?):提現的安全性可以透過(i)安全級別,以及(ii)從最高安全級別中受益的用戶或用例的百分比來衡量;讀取的安全性可以透過(i)鏈讀取以太坊區塊的速度,尤其是最終區塊與任何區塊,以及(ii)鏈處理51% 攻擊和硬分叉等邊緣情況的社會承諾的強度來衡量。

在該設計空間的許多區域中都存在著專案的價值。對於某些應用來說,高安全性和緊密連接性非常重要。而對於其他應用來說,為獲得更高的可擴展性,鬆散一些也是可以接受的。在許多情況下,從目前較鬆散的耦合開始,隨著技術的進步,在未來十年內向更緊密的耦合過渡,可能是最佳選擇。

(以上內容獲夥伴MarsBit 授權節錄及轉載,原文連結)

聲明:文章僅代表作者個人觀點意見,不代表區塊客觀點與立場,所有內容及觀點僅供參考,不構成投資建議。投資人應自行決策與交易,對投資人交易形成的直接間接損失作者及區塊客將不承擔任何責任。

這篇文章「V 神」最新撰文:回顧不同類型的Layer2 方案最早出現於區塊客。

資訊來源:0x資訊編譯自BLOCKCAST。版權歸作者區塊客所有,未經許可,不得轉載

Total
0
Shares
Related Posts