# Fraud ProofとZK Fraud Proofの実装アイデア詐欺証明はブロックチェーン分野で広く応用されている技術方案で、最初はイーサリアムコミュニティに由来し、ArbitrumやOptimismなどのLayer2によって採用されました。2023年にビットコインエコシステムが興起した後、Robin LinusはBitVM方案を提案し、詐欺証明を核心とし、ビットコインの二層またはブリッジに新しいセキュリティモデルを提供しました。BitVMは、初期の論理ゲート回路ソリューションから後のZK詐欺証明ソリューションへの複数のバージョンの進化を遂げました。Bitlayer、Citrea、BOBなどの複数のプロジェクトは、BitVMを技術基盤として異なる実装を行っています。本稿では、Optimismの詐欺証明方案を例に挙げ、MIPS仮想マシンとインタラクティブ詐欺証明に基づく実装、およびZK化詐欺証明の考え方を解析します。## OutputRoot と StateRootOptimismのインフラストラクチャは、シーケンサーとEthereumチェーン上のスマートコントラクトを含みます。シーケンサーは取引を処理した後、DAデータをEthereumに送信します。誰でもOptimismノードを実行し、データをダウンロードしてローカルで取引を実行し、現在のステートセットのハッシュを計算できます。もしシーケンサーが間違ったステートセットのハッシュをアップロードした場合、ローカルの計算結果が異なることがあります。この場合、詐欺証明を提出することができます。Optimismは、Ethereumに似たStateRootフィールドを使用して、状態セットの変化を表します。シーケンサーは定期的にOutputRootをEthereumにアップロードし、OutputRootはStateRootと他のフィールドから計算されます。! [BitVMの背景:詐欺証明とZK詐欺証明の実装](https://img-cdn.gateio.im/social/moments-4740909e3c2dd651d7b12dec84677a36)## MIPS仮想マシンとメモリMerkleツリーチェーン上でOutputRootの正しさを検証するために、OptimismチームはSolidityを用いてMIPS仮想マシンを実装し、インタラクティブな詐欺証明システムを設計しました。このシステムは、取引処理のプロセスをMIPS命令コードのシーケンスに細分化します。どの命令コードが実行された後に仮想マシンの状態がエラーになるかを観察することで、OutputRootが有効かどうかを判断します。MIPS仮想マシンの状態情報はMerkleツリーとして構成されています。チェーン上では単一のMIPSオペコードを実行するだけで、実行後の状態ハッシュが一致するかどうかを比較します。仮想マシンのメモリデータは28層の二分Merkleツリーに組織されており、ルートハッシュはmemRootと呼ばれます。オペコードを実行する際には、一部のメモリデータとメルクル証明をアップロードする必要があります。! [BitVMの背景:詐欺証明とZK詐欺証明の実装](https://img-cdn.gateio.im/social/moments-d3f8076fec7cb8639affdec1b2b6bf34)! [BitVMの背景:詐欺証明とZK詐欺証明の実装](https://img-cdn.gateio.im/social/moments-1a7effb3d036526f536ca4c917bdeb75)## インタラクティブ詐欺証明 OptimismはFault Dispute Game(FDG)プロトコルを開発しました。これには挑戦者と防御者の2つの役割が含まれています。両者はローカルにGameTreeを構築する必要があり、2階層のMerkleツリーが含まれています。- 第1階層の葉ノードは異なるブロックのOutputRootです- 第2階層の葉ノードはMIPS仮想マシンの状態ハッシュです双方はチェーン上で何度も相互作用し、最終的に争われているMIPSオペコードを特定しました。インタラクティブ詐欺証明のコアメカニズム:1. FDGの位置付けに必要なオンチェーンで実行されるオペコードおよびVMの状態2. チェーン上のMIPS仮想マシンでこのオペコードを実行し、結果を得る! [BitVMの背景:詐欺証明とZK詐欺証明の実装](https://img-cdn.gateio.im/social/moments-2b0e69f87b0e05dec63e9648fdc822d0)! [BitVMの背景:詐欺証明とZK詐欺証明の実装アイデア](https://img-cdn.gateio.im/social/moments-4e6e012cfaab66cf07d3dcfd79b71eb6)! [BitVMの背景:詐欺証明とZK詐欺証明の実装](https://img-cdn.gateio.im/social/moments-4740909e3c2dd651d7b12dec84677a36)! [BitVMの背景:詐欺証明とZK詐欺証明の実装](https://img-cdn.gateio.im/social/moments-459c7022fef7334a6966d28de73cbf4d)! [BitVMの背景:詐欺証明とZK詐欺証明の実装](https://img-cdn.gateio.im/social/moments-d74e3d10cb96594f3fb5e90fc0055175)! [BitVMの背景:詐欺証明とZK詐欺証明の実装](https://img-cdn.gateio.im/social/moments-aee8182b283886ec2ca9ae1ecd904d25)! [BitVMの背景:詐欺証明とZK詐欺証明の実装](https://img-cdn.gateio.im/social/moments-f102c3e3bcf32ab39b2589d0c440605c)! [BitVMの背景:詐欺証明とZK詐欺証明の実装](https://img-cdn.gateio.im/social/moments-1fd1f30538f1877ad5b2350006cc0bcb)## ZKベースの詐欺証明従来のインタラクティブな詐欺証明には、インタラクションの複雑さ、ガスコストの高さ、Rollupの実行の停止などの問題があります。これに対処するために、OptimismはZK Fraud Proofの概念を提案しました:- チャレンジャーが再生する必要がある取引を指定する- ロールアップシーケンサーは、トランザクションのZKプルーフを生成します- イーサリアム契約のZK証明の検証インタラクティブなソリューションと比較して、ZK詐欺証明は複数回のインタラクションを一回のZK証明の生成と検証に簡略化し、時間とガスコストを節約します。ZKロールアップと比較して、挑戦されたときのみ証明を生成し、計算コストを削減します。BitVM2も同様のアプローチを採用し、ビットコインスクリプトを通じてZK Proof検証を実現し、オンチェーンプログラムを大幅に簡素化しました。! [BitVMの背景:詐欺証明とZK詐欺証明の実装](https://img-cdn.gateio.im/social/moments-b5309b7ce9c3f041b7e4566d8b7de7db)! [BitVMの背景:詐欺証明とZK詐欺証明の実装](https://img-cdn.gateio.im/social/moments-f9bc10a2be3f4410dabf527e0bac78d2)! [BitVMの背景:詐欺証明とZK詐欺証明の実装](https://img-cdn.gateio.im/social/moments-d675bfbd9279df934bc1e364f8361041)
ZK詐欺防止:楽観主義からBitVMへの進化と実装
Fraud ProofとZK Fraud Proofの実装アイデア
詐欺証明はブロックチェーン分野で広く応用されている技術方案で、最初はイーサリアムコミュニティに由来し、ArbitrumやOptimismなどのLayer2によって採用されました。2023年にビットコインエコシステムが興起した後、Robin LinusはBitVM方案を提案し、詐欺証明を核心とし、ビットコインの二層またはブリッジに新しいセキュリティモデルを提供しました。
BitVMは、初期の論理ゲート回路ソリューションから後のZK詐欺証明ソリューションへの複数のバージョンの進化を遂げました。Bitlayer、Citrea、BOBなどの複数のプロジェクトは、BitVMを技術基盤として異なる実装を行っています。
本稿では、Optimismの詐欺証明方案を例に挙げ、MIPS仮想マシンとインタラクティブ詐欺証明に基づく実装、およびZK化詐欺証明の考え方を解析します。
OutputRoot と StateRoot
Optimismのインフラストラクチャは、シーケンサーとEthereumチェーン上のスマートコントラクトを含みます。シーケンサーは取引を処理した後、DAデータをEthereumに送信します。誰でもOptimismノードを実行し、データをダウンロードしてローカルで取引を実行し、現在のステートセットのハッシュを計算できます。
もしシーケンサーが間違ったステートセットのハッシュをアップロードした場合、ローカルの計算結果が異なることがあります。この場合、詐欺証明を提出することができます。
Optimismは、Ethereumに似たStateRootフィールドを使用して、状態セットの変化を表します。シーケンサーは定期的にOutputRootをEthereumにアップロードし、OutputRootはStateRootと他のフィールドから計算されます。
! BitVMの背景:詐欺証明とZK詐欺証明の実装
MIPS仮想マシンとメモリMerkleツリー
チェーン上でOutputRootの正しさを検証するために、OptimismチームはSolidityを用いてMIPS仮想マシンを実装し、インタラクティブな詐欺証明システムを設計しました。
このシステムは、取引処理のプロセスをMIPS命令コードのシーケンスに細分化します。どの命令コードが実行された後に仮想マシンの状態がエラーになるかを観察することで、OutputRootが有効かどうかを判断します。
MIPS仮想マシンの状態情報はMerkleツリーとして構成されています。チェーン上では単一のMIPSオペコードを実行するだけで、実行後の状態ハッシュが一致するかどうかを比較します。
仮想マシンのメモリデータは28層の二分Merkleツリーに組織されており、ルートハッシュはmemRootと呼ばれます。オペコードを実行する際には、一部のメモリデータとメルクル証明をアップロードする必要があります。
! BitVMの背景:詐欺証明とZK詐欺証明の実装
! BitVMの背景:詐欺証明とZK詐欺証明の実装
インタラクティブ詐欺証明
OptimismはFault Dispute Game(FDG)プロトコルを開発しました。これには挑戦者と防御者の2つの役割が含まれています。両者はローカルにGameTreeを構築する必要があり、2階層のMerkleツリーが含まれています。
双方はチェーン上で何度も相互作用し、最終的に争われているMIPSオペコードを特定しました。
インタラクティブ詐欺証明のコアメカニズム:
! BitVMの背景:詐欺証明とZK詐欺証明の実装
! BitVMの背景:詐欺証明とZK詐欺証明の実装アイデア
! BitVMの背景:詐欺証明とZK詐欺証明の実装
! BitVMの背景:詐欺証明とZK詐欺証明の実装
! BitVMの背景:詐欺証明とZK詐欺証明の実装
! BitVMの背景:詐欺証明とZK詐欺証明の実装
! BitVMの背景:詐欺証明とZK詐欺証明の実装
! BitVMの背景:詐欺証明とZK詐欺証明の実装
ZKベースの詐欺証明
従来のインタラクティブな詐欺証明には、インタラクションの複雑さ、ガスコストの高さ、Rollupの実行の停止などの問題があります。これに対処するために、OptimismはZK Fraud Proofの概念を提案しました:
インタラクティブなソリューションと比較して、ZK詐欺証明は複数回のインタラクションを一回のZK証明の生成と検証に簡略化し、時間とガスコストを節約します。ZKロールアップと比較して、挑戦されたときのみ証明を生成し、計算コストを削減します。
BitVM2も同様のアプローチを採用し、ビットコインスクリプトを通じてZK Proof検証を実現し、オンチェーンプログラムを大幅に簡素化しました。
! BitVMの背景:詐欺証明とZK詐欺証明の実装
! BitVMの背景:詐欺証明とZK詐欺証明の実装
! BitVMの背景:詐欺証明とZK詐欺証明の実装