📢 Gate广场 #MBG任务挑战# 发帖赢大奖活动火热开启!
想要瓜分1,000枚MBG?现在就来参与,展示你的洞察与实操,成为MBG推广达人!
💰️ 本期将评选出20位优质发帖用户,每人可轻松获得50枚MBG!
如何参与:
1️⃣ 调研MBG项目
对MBG的基本面、社区治理、发展目标、代币经济模型等方面进行研究,分享你对项目的深度研究。
2️⃣ 参与并分享真实体验
参与MBG相关活动(包括CandyDrop、Launchpool或现货交易),并晒出你的参与截图、收益图或实用教程。可以是收益展示、简明易懂的新手攻略、小窍门,也可以是现货行情点位分析,内容详实优先。
3️⃣ 鼓励带新互动
如果你的帖子吸引到他人参与活动,或者有好友评论“已参与/已交易”,将大幅提升你的获奖概率!
MBG热门活动(帖文需附下列活动链接):
Gate第287期Launchpool:MBG — 质押ETH、MBG即可免费瓜分112,500 MBG,每小时领取奖励!参与攻略见公告:https://www.gate.com/announcements/article/46230
Gate CandyDrop第55期:CandyDrop x MBG — 通过首次交易、交易MBG、邀请好友注册交易即可分187,500 MBG!参与攻略见公告:https://www.gate.com/announcements
欺诈证明与ZK Fraud Proof:解析现代区块链安全技术实现原理
欺诈证明与ZK Fraud Proof:现代区块链安全技术的实现原理
欺诈证明是区块链领域广泛应用的技术方案,最早源于以太坊社区,被Arbitrum和Optimism等知名以太坊Layer2采用。2023年比特币生态兴起后,Robin Linus提出了BitVM方案,以欺诈证明为核心思想,在Taproot等比特币既有技术基础上,为比特币二层或桥提供了新的安全模型。
BitVM经历了多个理论版本的演化,从早期的BitVM0到后来的BitVM2,相关技术实现路径不断成熟,吸引了业内广泛关注。多个项目如Bitlayer、Citrea、BOB等均以BitVM为技术基础,进行了不同版本的实现。
本文将以Optimism的欺诈证明方案为例,解析其基于MIPS虚拟机和交互式欺诈证明的方案,以及ZK化欺诈证明的主要思路。
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和其他两个字段共同计算得出。
MIPS虚拟机与内存Merkle Tree
为在链上验证OutputRoot的正确性,最简单的方法是在以太坊上实现OP节点客户端,但这面临两个问题:
第一个问题可通过部署PreimageOracle合约解决。对于第二个问题,OP团队用Solidity编写了MIPS虚拟机,实现了节点客户端的部分功能。
由于无法在链上完整执行所有交易,OP设计了交互式欺诈证明系统,将交易处理流程细化为MIPS操作码的有序处理。每个操作码执行后,虚拟机状态hash会变化,这些记录汇总为一棵Merkle树。
欺诈证明流程中,需要确定哪个MIPS操作码导致虚拟机状态hash出现问题,然后在链上重现当时的状态,执行操作码,对比结果。这需要将MIPS虚拟机的部分状态信息上传到链上。
交互式欺诈证明
OP团队开发了Fault Dispute Game(FDG)协议,包含挑战者和防御者两个角色。参与者需在本地构建GameTree,由两层Merkle树组成。第一层树的叶子节点是不同区块的OutputRoot,第二层树的叶子是MIPS虚拟机的状态hash。
双方在链上多次交互,最终定位到有争议的MIPS操作码。交互式欺诈证明的核心机制包括:
ZK化欺诈证明
传统欺诈证明的交互复杂,存在以下问题:
为解决这些问题,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验证程序,并大幅精简了需上链程序的规模。