以太坊交易所 以太坊交易所
Ctrl+D 以太坊交易所
ads
首頁 > Polygon > Info

Rollup最大的信任風險:無法忽視的“人治”問題_ROLL:roll幣是什么

Author:

Time:1900/1/1 0:00:00

作者:林克,《極客Web3》

導語:自Solana逐步衰落和OP發行Token以來,Layer2和Rollup似乎成為了無數Web3從業者新的港灣。隨著熊市的持續蔓延和FTX暴雷出局、Multicoin損失慘重,以太坊的競爭對手們陸續淡出了Web3這個大舞臺,不斷失去了和ETH一較高下的底氣。越來越多的人開始將Rollup視為新一輪敘事核心,越來越多的項目如同雨后春筍般在L2上扎堆涌現。

但這一切是否是“虛假的繁榮”,是否是“隨時可能被戳破的泡沫”?Rollup和L2真的如同大多數人所鼓吹的那般美好嗎?它真的像人們所認知的那樣安全嗎?且不談許多OP Rollup沒有欺詐證明,Rollup的安全隱患還有哪些?

本文受到L2BEAT近期發布的“Upgradeability of Ethereum L2s”啟發,針對Rollup升級背后的多簽與委員會信任風險(立即升級Rollup合約,卷走用戶資產)及此前關于Rollup的老生常談,聯想到前不久的Multichain,綜合聊下L2為何不像許多人所想的那么“美好”。

Rollup運作原理簡述:

以太坊Rollup = Layer1上的一組合約 + Layer2網絡自己的節點。

Layer2網絡節點這個群體可以拆分出幾類角色,其中最重要的當屬定序器(Sequencer)。它接收Layer2上發生的交易請求,決定它們的執行次序,然后把交易序列打包為批次(Batch),傳送給Rollup項目在Layer1上的合約(下文中將統稱為Rollup合約)。

Layer2的全節點可以直接從定序器處獲取交易序列,也可以讀取定序器發到Layer1上的交易批次(Batch),但后者具備比前者更高的最終確定性(不可更改性)。通常,當一批交易被定序器傳送到Layer1上后,這批交易的次序便不可變更(只要以太坊不發生區塊回滾,Rollup的交易序列就不會變更)。

基于ZK Rollup的訂單簿DEX DeGate主網Beta版本已向公眾開放:5月17日消息,基于ZK Rollup的訂單簿DEX DeGate于5月3日正式上線主網Beta版本,首個星期僅限DeGate NFT鑄造者訪問,目前已解除限制正式并向公眾開放使用。

此前消息,DeGate已通過Trail of Bits、Least Authority、Secbit等多家審計機構的審計,同時與Immunefi合作推出了111萬美元的漏洞賞金計劃。[2023/5/17 15:09:10]

由于交易執行會更改區塊鏈賬本的狀態,所以除了交易次序外,Layer2全節點還需要和定序器同步賬本狀態,這樣才能保證一致性。

因此,定序器不光要往Layer1的Rollup合約傳送交易批次,還要把交易執行后的狀態更新結果(Stateroot/State diff)傳送至Layer1。

不難看出,L1(以太坊)實際上充當了L2節點們的公告板,它要遠比L2自己的網絡更去中心化、更Trustless、更安全。對L2的全節點而言,只要獲取了L1上的Rollup交易序列 + 最開始的Stateroot,就可以還原出L2的區塊鏈賬本,計算得出最新的Stateroot。如果L2全節點自己算出的Stateroot和定序器發布到L1的Stateroot不一致,就說明定序器存在欺詐行為。

最直觀的假想案例是:L2的定序器可不可以盜取用戶資產。比如,它可不可以偽造一些本不該發生的交易(ps:把某些L2用戶的Token轉移至定序器運行者的地址,然后再把這些Token轉移到L1上)。這類問題可以歸結為:定序器發布了錯誤的交易數據或錯誤的Stateroot后,該怎么辦?

針對定序器的欺詐風險,不同類型的Rollup有不同的應對措施。Optimistic Rollup(樂觀Rollup)允許L2全節點提供欺詐證明(Fraud Proof),證明定序器在L1發布的數據存在錯誤。比如Arbitrum設置了一個節點白名單,允許白名單上的L2節點發布欺詐證明。

GameStop前區塊鏈負責人加入基于zkRollup的以太坊二層網絡TAIKO:9月28日消息,GameStop 前區塊鏈負責人 Matt Finestone 加入基于 zkRollup 的以太坊二層網絡 TAIKO。此前報道,9 月 13 日,GameStop 的區塊鏈負責人 Matt Finestone 在社交媒體上表示,他將離開 GameStop 區塊鏈負責人的職位。[2022/9/28 5:57:32]

除此之外,考慮到大多數交易所和私營跨鏈橋項目方都會運行L2全節點,可以立即發現錯誤,大多數Rollup定序器盜幣的成功率基本為0(因為它最后要套現,還是要在交易所完成,或者把盜來的幣轉移至L1后再另謀出路)。

(圖中的Aggregator實際就是定序器)

但對于沒有欺詐證明的Optimism,定序器可以通過Rollup自己的跨鏈橋bridge合約來盜幣。比如,定序器運行者可以偽造交易指令,將其他人在L2的資產轉移至自己的地址,再通過Rollup自帶的bridge合約,把盜來的幣轉移至L1。因為沒有欺詐證明,OP的全節點無法對錯誤交易發起挑戰,所以理論上,OP的定序器可以盜取用戶在L2的資產(只要它真的想這么做)。

解決這種問題的方法是“社會共識”(靠社區成員和社交媒體等輿論監督),或者靠OP官方的信用背書。

有趣的是,近期某交易所降低了Arbitrum 和 Optimism 用戶向所內轉幣的延時(從100個L2區塊降低到1個L2區塊),這其實是信任ARB和OP的定序器不會作惡(默認它們是有官方背書的中心化服務器)。

不同于樂觀Rollup,除了依靠L2全節點外,ZK Rollup通過有效性證明Validity Proof(往往與ZK Proof相混淆)解決定序器欺詐問題。ZK Rollup網絡里有一種稱為Prover的節點,專為定序器發布的交易批次Batch生成有效性證明。同時,L1上有專門驗證有效性證明的合約(一般稱為Verifier),只要交易批次及Stateroot/State diff對應的證明通過Verifier合約的驗證,便被最終確認(Finalized)。ZK Rollup的官方bridge只會給通過有效性證明驗證的提款交易放行,顯然這要比Optimism可靠太多。

Vitalik Buterin提出“L3愿景”:不能通過在Rollups上堆疊Rollups來擴展網絡:金色財經報道,以太坊聯合創始人 Vitalik Buterin 發文《什么樣的Layer 3有意義?》(What kind of layer 3s make sense?),文章指出不能通過在Rollups上堆疊Rollups來擴展網絡,比如SNARK幾乎可以無限擴展,可以繼續制作“許多SNARK的 SNARK”, 以將更多計算縮減為單個證明。但數據不一樣,數據可以壓縮一次,但不能再次壓縮,因此“在Rollups上再Rollups” ”實際上并不能在可擴展性方面提供巨大效益。因此,Vitalik Buterin提出了“L3愿景”,主要包括:

1、L2 用于擴展,L3 用于定制功能,例如隱私。

2、L2 用于通用擴展,L3 用于自定義擴展。

3、L2 用于無信任擴展(Rollups),L3 用于弱信任擴展(驗證)。[2022/9/17 7:03:27]

理論上來說,OP Rollup的安全性靠L2全節點來保證(至少要有1個能發布欺詐證明的誠實節點)。ZK Rollup的安全由L1上的Verifier合約保證(由L1節點完成交易最終確認)。表面上看,它們都可以“繼承L1的安全性”(借助L1完成交易的最終確認/結算),以太坊最大主義者甚至將其稱作“等價于L1的安全性”(與L1的交易結果最終性一致),但實際情況卻并非如此,甚至是遠非如此。

首先,ZK Rollup的有效性證明生成速度極為緩慢,定序器可以在1秒內執行幾千筆交易,但為這幾千筆交易生成Proof最多可能要幾小時。但這個問題也容易解決,主流的ZKR基本都會通過切分Proof生成任務、交由不同的Prover節點并行處理的方式,大幅提高Proof生成速度。

其次,要考慮L2節點在L1發布數據的延遲。因為定序器或Prover每次往L1發送數據,都會有一個固定成本(就好比每次運貨都要消耗一個集裝箱)。頻繁在L1上發布數據是不劃算甚至虧本的,所以定序器和Prover會盡量減少在L1上發布數據的頻率,等一次性湊夠了大量的數據再打包發布。

V神:ZK Rollup和Optimistic Rollup均取得巨大進展:以太坊創始人V神剛剛發推表示,Rollups(包括ZK Rollup和Optimistic Rollup)已經存在并繼續取得巨大進展。雖然分片(sharding)仍在快速發展,但我們并不依賴于分片來實現1000+的鏈上TPS。在eth2中,分片和Rollups的縮放增益將成倍增加。[2020/5/21]

換言之,當用戶數量不足、發起的交易筆數不夠多時,定序器會延遲向L1發布數據。比如在去年用戶較少時,Optimism半小時才向L1發送一次交易批次。現在,因為用戶多了起來,這個問題得到了有效解決。與OP不同的是,Starknet采用了減少State diff發布頻率的方式降低數據成本,這使得Starknet的交易最終確認延時被拉長到了7~8小時。

除此之外,多數ZK Rollup為了進一步降低成本,往往會“聚合許多個Proof,再一次性發到L1上”。也就是說,Prover不會在生成一個Proof后就立刻發到L1,而是等多個Proof都生成完,聚合在一起,再發給L1的Verifier合約。(其實聚合Proof的過程,就是用一個Proof來包含掉驗證多個Proof產生的計算步驟)

這樣做的后果是,Proof的發布頻率進一步降低了,交易從發起到最終確認的延時進一步拉長了。

根據區塊瀏覽器顯示,Polygon ZKEVM的交易確認延時大概是30~50分鐘,Starknet和Zksync Era在7小時以上。顯然這只是“部分繼承L1的安全性”,與以太坊支持者們所說的“等價于L1的安全性”有很遙遠的距離。

當然,以上問題都可以靠技術進步來解決,在不久的未來實現。比如很多項目方在研發高性能硬件,降低有效性證明的生成時間;Optimism也承諾將很快發布欺詐證明系統;以太坊的Danksharding方案將把Rollup的數據成本降低幾十倍甚至更高,這可以有效解決上面羅列的問題。

動態 | 德國咨詢公司Roland Berger與Core Concept科技公司開展合作:據日本經濟新聞報道,德國著名咨詢Roland Berger旗下日本子公司宣布同日本金融科技公司Core Concept(簡稱:CCT)開展業務合作,將共同推進Roland公司的中小制造業用戶群體所急需的將能將所有信息源鏈接起來的物聯網“IoT”的發展。Roland公司計劃通過此次與CCT在IoT及區塊鏈等技術上的合作來進一步強化其面向制造業用戶群體的咨詢業務。[2018/9/28]

與Defi等應用類項目一樣,Rollup網絡的運轉需要依靠L1上的相關合約,而這些合約是“可升級”的,也就是說部分代碼可以更換(大多數Rollup都用了代理合約),并且可以在多簽或安全委員會的授權下立刻進行。先說結論:Rollup可以通過少數人控制的多簽或安全委員會,快速更改L1上的合約代碼,然后盜取用戶資產。

首先“Rollup合約為什么需要升級”和“它是怎么升級的”。以太坊上的合約代碼在部署后,是不可更改的,但Rollup在開發過程中難免存在各種各樣的bug,可能導致錯誤的結果;同時Rollup也在頻繁的進行產品迭代,需要頻繁增加新的功能;更極端的情況下,還可能有黑客攻擊Rollup合約,所以Rollup合約需要有可升級性,這往往通過代理合約來實現。

代理合約其實是以太坊合約開發中常用的一種方法,就是將合約的數據和業務邏輯分開,分別保存在不同的合約中。數據(狀態變量)存儲在代理合約中,業務邏輯(函數)保存在邏輯合約中。代理合約(Proxy)通過delegatecall,將函數的執行過程全權委托給邏輯合約(Implementation),再把最終的結果返回給調用者(Caller)。

代理模式下的合約升級,只需要將代理合約指向新的邏輯合約(改寫代理合約里存儲的邏輯合約的地址)。大多數Rollup項目都采用了這種給合約升級的方法,可謂簡單粗暴。

不難想到,Rollup的合約可升級其實是巨大的雷:如果升級后的合約里包含惡意的代碼,比如把Rollup自帶的Bridge合約的提款放行條件加以修改,或者把Verifier合約判定有效性證明正確性的條件加以更改,定序器就可以盜幣(原理在前面講了)。

但問題在于,又不能不允許Rollup合約可升級,理由在前面說的很清楚。權衡之下,絕大多數Rollup會通過DAO治理、安全委員會或多簽授權,用人治的方式來決定要不要升級Rollup的合約。除此之外,還會通過時間鎖Timelock,來為合約升級設置延時窗口期。

考慮到大多數的DAO提案都有自動化的執行流程(通過鏈上合約來實現),即便要升級合約,也要先獲取足夠多的投票,然后再經過時間鎖Timelock規定的延時(往往要經過很多天),升級合約的操作才會執行。如果有人想搞惡意的合約升級,需要通過治理攻擊的方式度過DAO治理這關(比如發生在Tornado Cash上的治理攻擊),但這樣做的成本很高,要先獲取足夠多的Token才行,正常情況下不會成功。即便治理攻擊成功了,由于有時間鎖的限制,用戶會有足夠多的時間把資產從L2撤出,Rollup官方也會有足夠多的時間采取緊急措施。

看起來時間鎖是解決惡意的合約升級的法寶。但問題在于,所謂的“Rollup官方可采取的緊急措施”,其實就是繞開DAO治理和時間鎖,通過多簽或者安全委員會授權,立即升級Rollup合約。考慮到目前主流的Rollup托管了動輒幾十億美元的用戶資產,由多簽和安全委員會來授權的“合約可立即升級”,是終極的應急措施,但也是懸在所有用戶頭頂上的達摩克利斯之劍。

顯然這是信任最大化問題:你需要信任Rollup官方不會有盜取你的資產的念頭。如果從Trustless的角度來考慮(尼克薩博的視角),所有由多簽和安全委員會控制的Rollup都是不安全的。Avalanche創始人Emin Gun Sirer和Solana創始人Anatoly、著名黑子Justin Bons都曾強調過這類問題。

根據知名L2研究機構L2 BEAT發布的報告“Upgradeability of Ethereum L2s”,及L2BEAT數據可視化網站顯示,Arbitrum、Optimism、Loopring(路印)、ZKSync Lite、ZkSync Era、Starknet、Polygon ZKEVM等主流Rollup都存在多簽或委員會授權的可升級合約,并且可以繞開時間鎖限制。

dYdX雖然有一個EOA地址可以繞開DAO治理升級合約,但受到時間鎖限制(至少有2天的延時)。Immutable X則存在14天的合約升級延時,所以,按照L2BEAT的說法,dYdX和Immutable X要比其他已上線主網的主流Rollup更Trustless。

那么該怎么降低多簽和安全委員會帶來的信任風險?答案其實和Multichain事件類似:可以歸結為反女巫問題。必須要保證,多簽/委員會由多個不同的、無高度利益重合的、串謀風險低的實體來控制。目前看來,除了加大DAO去中心化治理的成熟度、邀請有名望有信譽的名人或機構來參與多簽/委員會以外,似乎沒有什么太好的辦法。而以上場景似乎早已在現實世界的民主中屢見不鮮。

當然,也可以通過時間鎖給多簽/委員會管理的合約升級行為加以限制,但這需要針對許多因素進行權衡,因為多簽/委員會的存在目的就是為了快速處理一些緊急情況;同時,如果Rollup項目方在去信任化問題上沒有什么堅定的決心,這個問題也不可能被解決。

所以,盡管不同的Rollup項目通過精妙的機制設計,可以在絕大多數時候保障用戶資產的安全,但由于存在多簽和委員會,Rollup發生黑天鵝事件的概率并不為0。即便多簽和委員會成員串謀的概率只有萬分之一,考慮到L2托管的資產價值(假設為100億美元),L2用戶資產每天的風險仍高達100萬美元。聯想到Multichain事件,著實令人毛骨悚然。

所以我個人認為,就像Polynya此前所說的那樣,以太坊生態內的大多數資金仍然會傾向于在L1流通和鎖倉,而非L2,Rollup生態長期內都無法捕獲以太坊生態內的大部分價值。對于大戶和鯨魚,以太坊主網顯然是一個比L2更合適、更可靠的資金去處。所以,很多人此前考慮的“L2的崛起會不會導致L1的冷清”,其實早已有了答案。

正如東野圭吾在其著作中所說,人心要遠比數學公式更難捉摸,更難理解,更為復雜,也更難改變。許多事情無法靠單純的技術手段來解決,但凡涉及到“人性”的因素,永遠都是這個世上最不可控、最難預測、也最需要嚴肅對待的問題。在此,請讓我們牢記康德墓碑上的那句傳世經典:

“有兩樣事物始終圍繞著我的心靈,我越是加深對他們的思考,心中喚起的驚奇和敬畏越是日漸加深:這便是 內心的道德律和頭頂燦爛的星空。

極客 Web3

個人專欄

閱讀更多

Foresight News

金色財經 Jason.

白話區塊鏈

金色早8點

LD Capital

-R3PO

MarsBit

深潮TechFlow

Tags:ROLROLLROOPROroll幣是什么TROLL BNBROOT幣Yield Protocol

Polygon
萬字回顧NFT市場發展史_NFT:NBS價格

原文作者:jake gallen  原文編譯:xunyang,SeeDAO當我慢慢地逐個構建 NFT 市場路線圖時,開始質疑為什么我要費心把它放在一起.

1900/1/1 0:00:00
深入研究RWA協議機制及生態系統_BSP:DOGDEFI幣

作者:Taeheon Lee & Jungwoo Pyo.

1900/1/1 0:00:00
Curve深陷安全事件 如何建立防范黑客和追查資金的“攻防機制”?_INK:Vinlink

7月31號,Curve 在平臺表示 Vyper 0.2.15 的穩定幣池由于編譯器的漏洞所以遭到攻擊.

1900/1/1 0:00:00
金色圖覽 | NFT行業周報(7.02 - 7.08)_FIL:coinw幣贏官網下載

【07.02 - 07.08】周報概要:1、上周NFT總交易額:147,137,111(美元)2、上周NFT總交易筆數:275.

1900/1/1 0:00:00
觀點:零知識證明并非DeFi的正確解決方案_DEFI:GDEFI價格

作者:DARREN KLEINE,blockworks 編譯:善歐巴,金色財經許多團隊正在努力實現零知識 DeFi,但他們都在處理同樣的基本邏輯問題.

1900/1/1 0:00:00
金色Web3.0日報 | Hashkey Exchange或已獲批香港虛擬資產新牌照_DEFI:NFT

DeFi數據 1、DeFi代幣總市值:481.04億美元 DeFi總市值及前十代幣 數據來源:coingecko2、過去24小時去中心化交易所的交易量39.

1900/1/1 0:00:00
ads