Vitalik:為何「共享安全性」如此重要?

當交易活動不多時網絡就會非常安全;當交易多起來了,風險就越大(因為攻擊動機大大超過攻擊成本)。

譯者註:隨著其他L1 公鍊和L2 的交易活動日漸增長,跨鍊和跨rollup 的需求也大大增加。而這便使得橋接產生一種”反網絡效應“:當交易活動不多時網絡就會非常安全;當交易多起來了,風險就越大(因為攻擊動機大大超過攻擊成本)。那麼跨鍊和跨rollup 的安全性有什麼區別?在本文中,Vitalik 提出了”共享安全性“ (shared security) 這一概念,並且基於此對各種跨鍊和跨rollup 活動分安全等級。

當評估一條以某種方式“連接” 到大型鏈的小型鏈時,大家最需要關心的一個問題是:

如果攻擊者能夠對小型鏈發起51% 攻擊,這可以造成多大的損失?

這是一個非常現實和重要的問題,因為小型鏈往往比大型鏈小得多(就市值而言)。並且對於攻擊者來說,買下小型鏈51% 的代幣(或至少51% 的質押代幣) 往往是相當可行的,尤其是當有大筆的橋接資產存在那條鏈上時(攻擊者能夠盜竊這些資產)。

  • 如果小型鍊是一條“獨立的L1”,攻擊者可以盜走一切資產。他們可以製作一個非法編輯狀態的區塊,將所有代幣發送給他們,然後他們就可以通過橋接提走這些代幣,而且在大型鏈上不會產生任何驗證。

  • 如果小型鍊是一條“側鏈”,攻擊者同樣可以盜走一切資產,原因同上。然而,側鏈的安全性比完全獨立的L1 要稍微好點。因為側鏈的區塊頭會發佈在以太坊上,如此一來,如果以太坊回滾,側鏈也會回滾。這樣可以防止涉及以太坊51% 攻擊的盜竊行為,然而不能阻止對側鏈進行51% 攻擊。

  • 如果小型鍊是一個“rollup”,攻擊者可以延遲交易,這可能迫使用戶不得不支付L1 費用,但他們不能盜竊任何資產。這是因為其中有一個鏈上機制(欺詐證明或數據可用性證明),可以驗證小型鏈上涉及攻擊者提款的事件是否都有效。

一些更特殊的例子:

  • 如果小型鍊是一個”plasma”,攻擊者可以延遲交易並且迫使用戶支付L1 費用,但他們同樣不能盜竊任何資產。

  • 如果小型鍊是一個”validium”,攻擊者可以永久地鎖定所有用戶的資產,但還是不能盜竊任何資產。 Validium (如Starkware 的ImmutableX) 因此成為一個有趣的折衷方案。 Validium 沒有rollup 那麼“L2”,因為控制validium 的人還是可以拒絕用戶訪問自己的資產並敲詐他們,但不管怎麼樣validium 還是比側鏈要安全得多。更重要的是,validium 同時可以達到側鏈的可擴展性。

這就是我們所說的“共享安全”。如果你在小型鏈上持有資產並進行一些交易,那麼和在大型鏈上做同樣的事情相比,你的資產是否一樣安全,還是沒那麼安全?結論是:如果是在rollup 或者plasma 上,資產共享主鏈的安全性;如果在一個獨立的L1 或是側鏈上,資產的安全性就比主鏈低得多;如果在validium 上,其安全性就在這兩者間。

還要注意的是,參考我在EF 第七次AMA 中提到的一些原因,很多東西實際上是對稱的:如果你持有ETC,那麼你在一個基於ETC 構建的ZK rollup 上持有它比你在以太坊上持有封裝的ETC 要好(儘管這個橋接是以太坊共識的一個完美的ZK-SNARK 驗證器)。並不是說你需要盡可能地在最大的鏈上進行交易活動。而是說,你進行交易活動所在的區域與你所使用的資產最初發行的區域都屬於同一個“共享安全區” (shared security zone)。其中,“共享安全區” 可以理解為”某條鏈”,並且所有其他鏈(如rollup) 的安全性最終都由該鏈提供保障。

Vitalik 在EF 第七次AMA 中的相關回答如下:

我之所以對多鏈的區塊鏈生態系統保持積極態度(確實有一些獨立的社區具有不同的價值觀,對於它們來說,獨立發展好過全部都就同一件事情的影響力而爭奪),而對跨鏈應用保持消極態度,一個關鍵原因就是橋接具有根本性的安全限制。

為了理解為什麼橋接具有這些限制,我們需要看看區塊鍊和橋接的各種組合是如何抵禦51% 攻擊的。很多人都有這樣的心態:“如果區塊鏈受到51% 攻擊,整個系統就會崩潰,所以我們需要花費所有力氣來預防51% 攻擊,哪怕是一次也不允許。” 我非常不同意這種想法;事實上,區塊鏈即使在受到51% 攻擊後,也能維持許多保證,而維持這些保證非常重要。

舉個例子,假設你在以太坊上持有100 枚ETH,當以太坊受到了51% 攻擊時,一些交易會被審查和/或被撤銷。那麼無論發生什麼,你依然擁有那100 枚ETH。即便是發起51% 攻擊的黑客也無法提議一個搶走你的ETH 的區塊,因為這樣的區塊會違反協議規則,所以會被網絡拒絕。即使99% 的算力或質押份額想要發起攻擊來搶走你的ETH,每個運行節點的人都只會跟隨剩下的1%,因為只有它們的區塊遵循協議規則。更普遍地說,如果你在以太坊上有一個應用,那麼通過發起51% 攻擊可能會在一段時間內審查或回滾應用的交易,但最終獲得的是一致的狀態。如果你持有100 枚ETH,然後在Uniswap 上將之換成32 萬枚DAI,那麼就算區塊鏈以某種瘋狂的方式被攻擊了,最終你還是會獲得一個合理的結果:要么還是持有100 枚ETH,要么得到那32 萬枚DAI。也就是說,兩者都沒有獲得(或兩者都獲得) 的結果實際上違反了協議規則,是不會被網絡接受的。

現在,想像一下,如果你向Solana 上的某個橋接轉100 枚ETH 並獲得100 個Solana-WETH,隨即以太坊受到了51% 攻擊。攻擊者在Solana-WETH 封裝合約中存入一筆自己的ETH,然後等到Solana 網絡上確認了這筆交易之後,就立即在以太坊網絡回滾存款交易。 Solana-WETH 合約現在不再可以完全恢復,也許你的100 Solana-WETH 現在只值60 個ETH。即使有一個基於ZK-SNARK 的完美橋接可以完全驗證共識,它仍然很容易受到這樣的51% 攻擊。

因此,在以太坊上持有以太坊原生資產或在Solana 上持有Solana 原生資產總是比在Solana 上持有以太坊原生資產或在以太坊上持有Solana 原生資產更安全。在這個語境下的“以太坊” 不僅指以太坊L1 基礎鏈,還包括基於它構建的任何L2。也就是說,如果以太坊受到51% 攻擊並且交易回滾了,Arbitrum 和Optimism 上的交易也會回滾。因此,即使以太坊受到51% 攻擊,在Optimism 和Arbtirum 上持有狀態的“跨rollup” 應用也能保證保持一致。而如果以太坊沒有受到51% 攻擊,就沒有辦法分別對Arbitrum 和Optimism 進行51% 攻擊。因此,持有在Optimism 上發行然後在Arbitrum 上封裝的資產依然非常安全。

然而當出現超過兩條鏈時,問題就比較嚴重了。如果有100 條鏈,那麼這些鏈之間會出現許多相互依賴的dapp。這時,哪怕對一條鏈發起51% 攻擊都會造成系統性的風險,威脅到整個生態系統的經濟。這就是為什麼我認為相互依賴的區域有可能與主權獨立的區域會緊密聯繫(因此,許多以太坊網絡的應用之間相互密切聯繫,許多Avax 網絡的應用之間相互密切聯繫等等;而不是以太坊網絡和Avax 網絡的應用之間相互密切聯繫)。

這也是為什麼rollup 不能直接“使用另一個數據層”。如果某個rollup 將其數據存儲在Celestia 或BCH 或其他任何地方,但處理的是以太坊的資產,那麼如果這一層受到了51% 攻擊,用戶就完蛋了。就算Celestia 的數據可用性採樣(DAS) 可以抵禦51% 攻擊,實際上也並不能幫到你,因為以太坊網絡並沒有讀取這個DAS;相反,以太坊網絡讀取的是橋接上的信息,而橋接恰恰很容易受到51% 攻擊。作為一個rollup 想要為使用以太坊原生資產的應用提供安全性,必須使用以太坊數據層(對於任何其他生態系統也是如此)。

當然,我不會說這些問題會隨時出現。僅僅對一條鏈進行51% 攻擊都很困難且成本高昂。然而,使用跨鏈橋接和上面的應用的用戶越多,問題就越嚴重。沒有人會為了盜竊100 枚Solana- WETH 去攻擊以太坊(或者說為了盜竊100 枚Ethereum-WSOL 去攻擊Solana)。但是如果橋接上有1000 萬ETH 或SOL,那麼發起攻擊的動機就會更強,一些大型的資產池會使得這些攻擊更容易發生。所以跨鏈交易活動具有一種反網絡效應:當交易活動不多時網絡就會非常安全;當交易多起來了,風險就越大。

但這不會令上述分類產生變化;這只會讓分類更加廣泛,因為即時以太坊本身收到51% 攻擊,這些安全方面的差異仍然存在。

一些更加具體的例子:

這是因為(Ethereum、Optimism、Arbitrum、ZkSync 和rollup 模式的StarkEx) 在一個相同的”共享安全區“ 中(因為後四者最終都由以太坊提供安全保障,或者至少在欺詐證明移除所有臨時的軟件後門程序而實現完全啟用之後,很快便如此)。但是Avalanche 和Ethereum Classic 很顯然沒有與以太坊共享安全性,並且永遠也不會。

而在BSV 上使用BSV 也不安全(儘管兩者在同一個共享安全區,也就是它自己),因為BSV 是一條脆弱的PoW 鏈,很容易被無聊的BTC/BCH 礦工攻擊。並且BSV 的區塊太大,令用戶無法驗證(且沒有任何計劃添加分片/ZK-SNARK/DAS 技術來解決這個問題)。所以當有人對BSV 進行51% 攻擊時,攻擊者可以直接發起無效區塊,而用戶可能別無選擇,只能接受這些區塊。

原文鏈接:https://old.reddit.com/r/ethereum/comments/sgd3zt/a_quick_reminder_of_what_shared_security_means/

來源| old.reddit.com/r/ethereum

作者| Vitalik Buterin

展開全文打開碳鏈價值APP 查看更多精彩資訊

Total
0
Shares
Related Posts