翻譯:火火/白話區塊鏈
1、什麼是Rollup、什麼不是Rollup?
首先,我確實同意:
-
這裡有兩個不同的概念。我暫時將它們稱為“rollup 橋”和“rollup 區塊鏈”。
-
Rollup 橋和Rollup 鍊是分開的,並且可以彼此“分叉”。
-
L1 和L2 是相對術語,取決於給定資產的發行地/原產地。
讓我們從一個思想實驗開始。想像一下我們有兩個獨立的現有區塊鏈,比如說以太坊和Near鏈。我們能否在不修改協議的情況下在它們之間建立一個無需信任的雙向橋樑?我們可以!首先,假設我們為Near 的VM 和共識開發zk 有效性證明(我所有的例子都將是關於zk rollups,這對我來說更簡單)。這顯然不需要對Near 的協議進行任何更改,我們只需找到一種方法來證明給定的塊是SNARK/STARK 內的有效狀態轉換。現在,我們還在以太坊上創建一個智能合約來驗證這些證明,我們就完成了。
現在,任何人都可以向以太坊提交近區塊(或狀態增量)以及有效性證明,並且智能合約將知道Near 區塊鏈的狀態,而無需任何信任假設。然後從Near向以太坊發送消息就很簡單了,你只需要向以太坊中的智能合約提交Near狀態的Merkle證明,這樣你就可以證明Near狀態的任何部分。這是第一個認識。我們不會將Token或數據從一個區塊鏈發送到另一個區塊鏈,沒有任何移動,這些仍然是獨立的數據庫。我們只是在另一個區塊鏈中證明一個區塊鏈的狀態。跨區塊鏈轉移Token只是一個方便的抽象。
但到目前為止這是單向的,我們只在以太坊上證明Near 的狀態。我們如何做相反的事情呢?很簡單,我們為以太坊開發有效性證明,在Near 上創建驗證者合約,並將以太坊區塊和有效性證明發送到Near。現在我們可以證明以太坊在Near中的狀態。有了兩個單向免信任橋,我們就得到了一個雙向橋。
然而,這思考了一個問題,為什麼我們需要兩座橋樑? Rollup 沒有兩個橋,Arbitrum 和zkSync 在其狀態下沒有以太坊橋,這裡發生了什麼?嗯,他們有,但這是一種不同類型的橋樑。我們強制zkSync 全節點也是以太坊全節點,Arbitrum 全節點也是如此。
這是第二個認識,所有匯總實際上都有兩個單向橋。只是在zkSync → 以太坊方向上我們使用有效性證明+狀態增量,而在以太坊→ zkSync 方向上我們只使用全節點橋。顯然,連接以太坊和近端的一個可能的解決方案是要求每個以太坊全節點也是近端全節點,反之亦然。這實際上會達到同樣的目的,只是有點愚蠢,因為它不能很好地擴展。
但現在我們在以太坊和近鄰之間有兩個帶有有效性證明的橋樑。我們可以在另一個區塊鏈上證明一個區塊鏈狀態,並用它來“移動資產”和“發送消息”。我想指出的是,我們沒有改變任何協議,我們不需要以太坊或Near的完整節點提供任何額外的功能,每個區塊鏈甚至可能不知道這些橋。像Matter Labs 或Coinbase 這樣的完全的第三方可以維護(並最終無法維護)這些橋樑。
那麼,以太坊和近期是否正在上Rollup?由於其區塊發佈在以太坊上,Near 現在更安全了嗎?如果橋樑停止工作,區塊鏈的安全性是否會降低?我想你會同意,不,任何一個區塊鏈都沒有改變。只是現在每個區塊鏈上都有一個智能合約,可以訪問另一個區塊鏈上的狀態。請注意,這些橋樑也是獨立的,如果其中一座發生故障,另一座完全不受影響。
現在我們可以討論不同類型的橋樑。帕特里克·麥考裡(Patrick McCorry) 發表了一篇文章Rollup正在驗證橋樑。我可以說我總體上屬於帕特里克的陣營,但我認為實際上還有更多類型的橋樑:
第一種是“全節點橋”。這些只是一個區塊鏈的完整節點也是另一個區塊鏈的完整節點的情況。這是網橋的最高安全級別,這就是不信任網橋的實際情況。該橋沒有額外的安全假設。對於大規模來說,它也是完全不可行的。在以太坊+近思想實驗中,如果我們要求所有全節點都是兩個區塊鏈的全節點,那麼擁有兩個不同的區塊鏈就沒有意義了。不過,如果一個區塊鏈的節點要求比另一個區塊鏈的節點要求小得多,那麼它在一個方向上是有意義的。這正是zkSync、Arbitrum、Optimism 等Rollups 中發生的情況。
第二種是“有效性橋樑”。這是一個使用zk 證明來證明給定狀態轉換(即zk rollups)有效性的橋樑。我們有與用於這些有效性證明的證明系統相關的額外信任假設。
第三種是“OP橋樑”。 OP Rollups中使用的橋類型。這裡的額外信任假設與博弈論以及Rollup的至少一個誠實完整節點的存在有關。
有效性橋和OP橋都旨在接近全節點橋的安全性,而不需要相同級別的資源。實際上,有效性或OP橋幾乎就像另一個區塊鏈的完整節點,但它只是一個智能合約。
當然,還有輕客戶端橋(如Near 的Rainbow 橋)、多重簽名橋等。現在我們實際上可以使用這個模型來對不同的rollup 項目進行分類。例如,zkSync Era 是一個集中式(即單個驗證器)區塊鏈,具有來自以太坊的全節點橋和到以太坊。
這就是當今大多數Rollup的情況:具有從基礎鏈開始的全節點橋接以及到同一基礎鏈的有效性或樂觀橋接的區塊鏈。請注意,這在鏈之間創建了一種層次結構,以太坊完整節點不會成為任何匯總決定橋接到它的完整節點,但匯總完整節點幾乎被迫成為以太坊完整節點。
最後請注意,Rollup區塊鏈不會繼承母鏈的技術安全性。換句話說,將某些區塊鏈的數據(和證明)發佈到以太坊不會增加該區塊鏈的安全性。使用以太坊的數據可用性只是為了Rollup 橋的利益,而不是為了Rollup 區塊鏈的利益。這意味著Rollup橋包括智能合約和以太坊上的數據可用性,並且Rollup區塊鏈只是一個區塊鏈。
這個模型雖然現在看起來很簡潔,但並沒有解釋驗證和主權Rollup。 validiums 是橋還是區塊鏈?它與有效性橋樑有何不同?主權匯總怎麼樣?他們連橋都沒有!從主權Rollup角度更容易分析。
通常將主權Rollup描述為沒有橋接的Rollup。他們本質上使用另一個區塊鏈的數據可用性和共識作為自己的數據可用性和共識,因此繼承了該區塊鏈的安全性。他們通過將所有數據發佈到基礎鏈來實現這一點,而主權Rollup完整節點只是基礎鏈的完整節點,它們具有解釋該數據的額外規則。
那麼這是一個Rollup嗎?不,乍一聽起來像是Rollup,但很多其他東西也符合這個定義。我們當然不會將其歸類為Rollup,例如比特幣中的序數。 Ordinals 區塊鏈的所有數據都位於比特幣區塊鏈上。要成為Ordinals 區塊鏈的完整節點,您只需要一個比特幣完整節點並了解Ordinals 規則。它還具有與比特幣完全相同的安全性。同樣的情況也適用於比特幣之上的許多其他協議,如Omni、Counterparty、Mastercoin 等。所有這些協議都不能歸類為主權Rollup。
我可能會找到更多例子,但要點是區塊鏈搭載另一個區塊鏈的共識和/或數據可用性並不是什麼新鮮事。據我所知,這些結構沒有通用術語,所以我將嘗試使用“依賴區塊鏈”這個名稱。 Rollup 的創新為兩個區塊鏈創造了一種以信任最小化且高效的方式進行通信的方式。主權Rollup缺乏這一點,因此不應該被稱為Rollup,只是依附於區塊鏈。
2、關於驗證
最後,我們談到驗證。就像Rollup一樣,它們是具有從基礎鏈到基礎鏈的全節點橋和到基礎鏈的一些橋的區塊鏈。這種新型橋基本上是一個有效性橋,我們不會將區塊鏈數據(輸入或狀態增量)發佈到基礎鏈,我們只發布zk 證明。由於缺乏更好的名稱,我們將它們稱為部分有效性橋。但這與普通的Rollup有何不同?為了找到答案,我們需要了解當區塊鏈失敗和橋分叉時會發生什麼。
讓我們回到我們關於橋接以太坊和Near的思想實驗。在這種情況下,如果Near區塊鏈停止運行會發生什麼?顯然,Near 到以太坊的橋樑將停止更新。如果該橋上有硬幣,它們就會被卡住,直到Near鏈被恢復。顯然,這座橋上的資產似乎並不具有與以太坊區塊鏈相同的安全性。這違背了通常所說的Rollup安全性,那麼這裡發生了什麼?請記住,有效性橋和OP橋的作用與全節點類似,並且全節點可以分叉區塊鏈。
大多數Rollup都計劃了一些“逃生艙口”機制,這實際上只是一種自動分叉機制。在我們的示例中,如果近區塊鏈失敗,允許任何人更新橋的狀態,只要它附有有效性證明。如果Near 區塊鏈隨後重新上線,它將具有與橋不同的狀態,從而強化了橋確實已從Near 分叉的想法。這座橋實際上具有與以太坊相同的安全性,但至關重要的是,橋中計劃有一些分叉機制。
想像一下其他情況,以太坊和近區塊鏈都在工作,但只有Coinbase 被允許更新橋的狀態(因為這就是橋的設計方式)。如果Coinbase 由於某種原因發生故障,並且橋中沒有分叉機制,那麼橋將停止運行,所有資產將被卡住,即使近區塊鏈仍然存在。
現在我們可以很容易地看出有效性橋和部分有效性橋(即validiums)之間的區別。有效性橋始終保證擁有狀態數據(這當然是創建分叉所必需的),因為它們將所有狀態更新發佈到基礎鏈。部分有效性橋可能沒有該狀態數據,而是需要validium 區塊鏈中誠實的少數驗證者來保證該數據的可用性。
總結這篇很長的文章,它就是區塊鍊和橋樑。有許多不同類型的橋接器,但L2 空間中更有趣的橋接器是:全節點橋接器、樂觀橋接器、有效性橋接器和部分有效性橋接器。
我們還可以將區塊鏈分為兩種不同的類型:依賴型或獨立型,具體取決於它們是否使用另一個區塊鏈的共識和數據可用性作為自己的共識和數據可用性。不過,這些是不同的概念,我們可以將任何類型的區塊鏈與幾乎任何數量和類型的橋配對。