欺詐證明與ZK Fraud Proof:解析現代區塊鏈安全技術實現原理

robot
摘要生成中

欺詐證明與ZK Fraud Proof:現代區塊鏈安全技術的實現原理

欺詐證明是區塊鏈領域廣泛應用的技術方案,最早源於以太坊社區,被Arbitrum和Optimism等知名以太坊Layer2採用。2023年比特幣生態興起後,Robin Linus提出了BitVM方案,以欺詐證明爲核心思想,在Taproot等比特幣既有技術基礎上,爲比特幣二層或橋提供了新的安全模型。

BitVM經歷了多個理論版本的演化,從早期的BitVM0到後來的BitVM2,相關技術實現路徑不斷成熟,吸引了業內廣泛關注。多個項目如Bitlayer、Citrea、BOB等均以BitVM爲技術基礎,進行了不同版本的實現。

本文將以Optimism的欺詐證明方案爲例,解析其基於MIPS虛擬機和交互式欺詐證明的方案,以及ZK化欺詐證明的主要思路。

BitVM背景知識:欺詐證明與ZK Fraud Proof的實現思路

OutputRoot和StateRoot

Optimism是知名的Optimistic Rollup項目,其基礎架構由定序器和以太坊鏈上智能合約組成。定序器處理交易數據後,這些數據會被發送到以太坊上。運行Optimism節點客戶端的用戶可以下載這些數據,在本地執行交易,計算出當前狀態集hash。

如果定序器上傳了錯誤的狀態集hash,本地計算結果會與之不同,此時可以通過欺詐證明系統發起質疑。EVM系區塊鏈通常使用Merkle Tree數據結構記錄狀態集,稱爲World State Trie。交易執行後,World State Trie會變化,其最終hash也會更新。以太坊將這個hash稱爲StateRoot,用於表示狀態集的變化。

Optimism的帳戶體系與以太坊類似,也採用StateRoot字段反映狀態集變化。定序器會定期將OutputRoot上傳到以太坊,OutputRoot由StateRoot和其他兩個字段共同計算得出。

BitVM背景知識:欺詐證明與ZK Fraud Proof的實現思路

MIPS虛擬機與內存Merkle Tree

爲在鏈上驗證OutputRoot的正確性,最簡單的方法是在以太坊上實現OP節點客戶端,但這面臨兩個問題:

  1. 智能合約無法自動獲得欺詐證明所需的輸入參數
  2. 以太坊Gas限制不支持復雜的計算任務

第一個問題可通過部署PreimageOracle合約解決。對於第二個問題,OP團隊用Solidity編寫了MIPS虛擬機,實現了節點客戶端的部分功能。

由於無法在鏈上完整執行所有交易,OP設計了交互式欺詐證明系統,將交易處理流程細化爲MIPS操作碼的有序處理。每個操作碼執行後,虛擬機狀態hash會變化,這些記錄匯總爲一棵Merkle樹。

欺詐證明流程中,需要確定哪個MIPS操作碼導致虛擬機狀態hash出現問題,然後在鏈上重現當時的狀態,執行操作碼,對比結果。這需要將MIPS虛擬機的部分狀態信息上傳到鏈上。

BitVM背景知識:欺詐證明與ZK Fraud Proof的實現思路

交互式欺詐證明

OP團隊開發了Fault Dispute Game(FDG)協議,包含挑戰者和防御者兩個角色。參與者需在本地構建GameTree,由兩層Merkle樹組成。第一層樹的葉子節點是不同區塊的OutputRoot,第二層樹的葉子是MIPS虛擬機的狀態hash。

雙方在鏈上多次交互,最終定位到有爭議的MIPS操作碼。交互式欺詐證明的核心機制包括:

  1. FDG定位需要上鏈執行的MIPS操作碼及VM狀態信息
  2. 在以太坊鏈上的MIPS虛擬機中執行該操作碼,獲得最終結果

BitVM背景知識:欺詐證明與ZK Fraud Proof的實現思路

ZK化欺詐證明

傳統欺詐證明的交互復雜,存在以下問題:

  1. 多輪交互產生大量gas成本
  2. 交互過程較長,期間Rollup無法正常執行交易
  3. 鏈上實現特定VM重放指令的開發難度高

爲解決這些問題,Optimism提出了ZK Fraud Proof概念。核心是當挑戰發生時,Rollup定序器給出被挑戰交易的ZK證明,由以太坊智能合約驗證。驗證通過則表明交易處理無誤。

相比交互式欺詐證明,ZK Fraud Proof將多輪交互簡化爲一輪ZK證明生成和驗證,節省時間和成本。與ZK Rollup相比,基於ZK Fraud Proof的OP Rollup只在被挑戰時生成ZK證明,降低了計算成本。

這一思路也被BitVM2採用。使用BitVM2的項目如Bitlayer和Goat Network等,通過比特幣腳本實現ZK Proof驗證程序,並大幅精簡了需上鏈程序的規模。

BitVM背景知識:欺詐證明與ZK Fraud Proof的實現思路

ZK-2.8%
查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 6
  • 分享
留言
0/400
SatoshiNotNakamotovip
· 07-21 02:03
系统级别的设计啊
回復0
SerNgmivip
· 07-19 15:52
介绍得很专业细致
回復0
Gas_Wastervip
· 07-18 16:48
ZK终于有用了
回復0
纸手卖出惯犯vip
· 07-18 16:43
都卖了再说吧
回復0
NervousFingersvip
· 07-18 16:39
技术有点深奥了
回復0
空投碎梦师vip
· 07-18 16:37
技术变现在这了
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)