終局之戰:我們如何用 ZK 技術保護 MegaETH 的安全

作者:MegaETH 來源:@megaeth_labs 翻譯:善歐巴,金色財經

在所有Optimistic Rollup 的核心,都存在一個關鍵假設:提交的狀態提議在未被證明錯誤之前,默認是有效的。然而,這一假設只有在 Rollup 擁有強大的欺詐證明機制時才成立。缺乏此機制的鏈,一旦無效狀態未被質疑,或由於惡意挑戰而導致結算流程被阻斷,就會立刻變得不安全。

欺詐證明的重擔

爲了支撐上述假設,Optimistic的L2必須支持一種欺詐證明機制(也稱爲爭議解決協議),它允許驗證者(挑戰者)對排序器(提議者)提交的可能錯誤的狀態提議發起挑戰。這個機制必須確保兩個關鍵特性:

  1. 所有錯誤的狀態提議都能被識別出來
  2. 錯誤的挑戰永遠不會成功

從技術角度來看,這一機制包含兩個核心組成部分:

  • 挑戰子協議:處理對單個狀態提議的爭議。
  • 錦標賽機制:當同一個區塊出現多個競爭狀態提議時,用於篩選出唯一正確的提議

每一個狀態提議,都是對一組交易執行結果的聲明,通常包含三個部分:

  • 初始狀態:Ethereum 上最近一次被最終確認的 L2 狀態;
  • 交易載荷:從該狀態以來發生的一系列 L2 交易;
  • 最終狀態:提議者聲稱執行這些交易後得到的結果。

因此,一個完整的提議本質上是在說:

“假設當前初始狀態是 A,執行以下交易列表(payload),我認爲最終狀態應該是 X。”

我們可以用下圖的形式來可視化這個結構:

8i2x0qwTXcDdLYX1x0fWm3PjE8BoCmLwC2YXpOqK.png

此時,挑戰子協議的作用就是驗證該主張是否正確。如果它是錯誤的,挑戰必須成功,該提議就必須被拒絕。

交互式故障證明(二分挑戰遊戲

在多數當前主流的Optimistic Rollup 系統中,採用的都是一種交互式協議:挑戰者與提議者之間進行來回交鋒。

一旦提出爭議,雙方會對計算過程的中間結果(由提議者聲稱的每一步執行結果)進行二分拆解,逐步縮小錯誤可能發生的範圍。這個過程會不斷遞歸,直到雙方定位到單個出錯的計算步驟(比如某筆交易被錯誤執行)。

確定具體錯誤後,該步驟會被在以太坊主網上重新執行,以判斷是否真的存在欺詐行爲。

6WF4yCanaXLDVqAMrwqPHcehkLUpcsFo2PueK0tQ.png

但這一機制存在多個問題:

  • 延遲高:每一步交互都需要在以太坊鏈上發起交易。一個完整的爭議處理過程可能耗時數小時甚至數天,特別是在網路擁堵或受到審查時;
  • 對提議者要求高:即便提議者是誠實的、挑戰是毫無根據的,他仍需參與整個爭議流程,付出不小的計算與鏈上交互成本;
  • 容易被惡意利用:惡意挑戰者可以不斷提出無理挑戰,迫使誠實的提議者反復浪費時間和 gas 成本去捍衛正確狀態。

現實中,交互式欺詐證明代價高昂、在負載高時脆弱、並且容易被濫用。

非交互式欺詐證明(ZK 挑戰模型

MegaETH 採用了完全不同的路徑:它要求挑戰者只需生成一個簡潔的零知識證明(ZKP),證明提議者聲明的最終狀態是無效的

具體而言,這個 ZK 證明表明,從初始狀態執行交易序列不會得出提議者聲稱的最終狀態。該機制將基於 RISC Zero 的 zkVM 構建,並借鑑 OP Kailua 的非交互欺詐證明混合架構來實現。

該證明通過單筆交易提交至以太坊,鏈上驗證者合約將確認其有效性。證明提出者無需參與任何工作,無法幹預整個過程,亦不參與爭議。

8O20iC5M2rQK5t0Psa3Hsqon0YB5G8zXCFG2gNVH.png

當然,生成這樣一份 ZK 證明並非易事——它要求在 zk 虛擬機中完整運行爭議的計算過程,預計將消耗 約 1000 億個計算週期,最壞情況下成本約爲 100 美元 。但這種成本僅在欺詐被證實時才發生,且根據設計,由不誠實方承擔。這一模式極大減輕了誠實挑戰者的資本壓力,並根本消除了基於二分機制中的惡意破壞風險

ZK 用於欺詐證明,而非狀態有效性

在加密領域,「零知識(ZK)」常常被簡化理解爲 ZK Rollup 的代名詞 —— 即使用 ZK 證明在鏈下驗證狀態轉換,然後將其發布到鏈上的系統。但這種理解其實只涵蓋了 ZK 潛力的一半。

MegaETH 使用零知識證明的目的不是爲了驗證狀態的正確性,而是用於證明欺詐行爲。這讓我們能夠在保留Optimistic Rollup 的高效與可擴展性的同時,新增一個無需信任、非交互式的機制,用於檢測和挑戰無效的狀態轉換

我們將這種混合方法稱爲 ZK 欺詐證明,它帶來了一種本質上不同的信任模型

檢測窗口不變,終局時間大幅縮短

出於安全審慎的考慮,MegaETH 仍將保留典型Optimistic鏈的 7 天挑戰窗口,這意味着任何參與者都有整整一周時間對某個狀態根提出爭議。但**真正的差異發生在爭議被提出之後,**在交互式模型中,如果在第 7 天提出挑戰,可能還需要額外幾天時間才能完成爭議解決。在此期間,鏈在以太坊主網的最終性會被凍結,協議進展被中斷,鏈的活性也會受到影響。

而使用 ZK 欺詐證明的情況下,**整個爭議流程將在大約 1 小時內完成。**挑戰者生成 ZK 證明、提交到以太坊主網、驗證後立即生效,鏈狀態迅速獲得最終性。這有效抵御了一個關鍵攻擊向量:惡意挑戰者反復發起虛假爭議,以阻滯鏈的最終性

由 EigenDA 提供數據可用性保障

爲了確保欺詐證明過程的完整性,挑戰者必須能夠輕鬆可靠地訪問原始區塊數據,以重現被質疑的計算過程。

這正是我們將 ZK 欺詐模型與 EigenDA(一個去中心化、高吞吐的數據可用性層) 搭配使用的原因。

通過這種結構,整個流程被精簡爲最安全、最高效的形式:

  • 排序器將區塊數據發布到 EigenDA,同時僅將一小段數據摘要提交到以太坊,EigenDA 提供的加密保證確保任何時候都可以生成欺詐證明,且排序者無法“隱匿”數據以逃避審查;
  • 任何觀察者都可以從 EigenDA 檢索區塊數據,重建完整區塊並在 zkVM 中執行;
  • 一旦檢測到欺詐,該觀察者就能生成簡潔的 ZK 欺詐證明,提交至以太坊上的驗證合約;排序者將被懲罰,其無效提案也將被駁回。

一種具備加密保障、可擴展的信任模型

MegaETH 用簡潔的非交互式 ZK 欺詐證明取代了繁瑣的交互式欺詐博弈。這種方式消除了騷擾攻擊風險,大幅縮短了最終確認時間,並確保爭議能夠以高效、可擴展的方式解決。

在 RiscZero 提供可驗證計算能力、@eigen_da 確保原始數據訪問的支持下,每一個狀態提案都具備:

可重建性、可驗證性、可被任何人挑戰的可能性 —— 無論在任何規模下。

ZK3.17%
查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 留言
  • 分享
留言
0/400
暫無留言
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)