最近、ZK-Rollupスキームを最初に採用したと主張するBitcoin Layer-2プロジェクトであるCitreaは、そのテストネットワークでのライブを間近に控え、コミュニティから疑問視されている。そのプロパガンダは、Citreaが彼らのプロジェクトを過剰にパッケージするためにいくつかの欺瞞的な言葉を使ったというものだ。現時点では、CitreaとBitVMを調べるのにこれ以上のタイミングはないことは間違いありません。
すべての始まりは、ZKPがイーサベースのレイヤー2で大成功を収め、多くのプロジェクトがZKPがビットコインのレイヤー2でも同じことができるのではないかと期待したことでした。明らかに、多くの開発者(特に最も批判的な開発者)はBitcoin Layer2の開発に非常に感心しておらず、彼らの懸念は十分に根拠がある。イーサリアムベースのoptimisicやzkrollupのような従来のLayer2は、オフチェーンでの計算とオンチェーンでの検証を通じて、ネットワークの1つのレイヤーでデータを圧縮し、計算リソースをスケールさせる。ビットコインネットワークは検証のための複雑なロジックをサポートしていないため、これを実現するのは難しい。その結果、ゼロ知識概念実証技術を使用すると主張するビットコインレイヤー2プロジェクトのほとんどは、ソブリンロールアップと呼ばれるスキームを採用しています。
ソブリン・ロールアップ
簡単に説明すると、ソブリン・ロールアップの鍵は、ビットコイン・ネットワークが鍵の保存のみを担当することです。ネットワークは、碑文の形でビットコインネットワークにキーのコミットメント情報を格納することのみを担当し、検証はすべてオフチェーン(クライアント側の検証)で行われることです。つまり、ビットコインネットワークにおけるデータの解釈はレイヤー2ネットワークに属する。ルールを知らない参加者にとって、ビットコインネットワークのデータは無意味である。しかし、参加者がデータがどのように使用されるかを認識していれば、どんなユーザーでも自分のノードを構築することができる。この観点から、ソブリンロールアップは、最終的なデータがビットコインのコンセンサスによって保護され、そのレイヤー2の解決が分散化され得るという、レイヤー2ネットワークの基本的な要件のいくつかを満たしているため、いくつかの肯定的な意味を持っています。
2つ目の選択肢は1つ目の妥協点のように聞こえるかもしれませんが、これは実際には非常に議論の余地があります。第二の選択肢の支持者の多くは、ビットコインはイーサリアムのようになる必要はないと主張しています。第一の選択肢の支持者は、実際には、まだテラフロップの観点からビットコインを見ています。つまり、データの保存とそのデータの検証はレイヤー1で行われるべきだと考えているのです。理想的には、スマートコントラクトは1つのノードによってのみ実行され、他のノードは実行結果とそれに対応するエビデンスを検証するだけでよい。すべてのレイヤー1ノードに検証を強制することは、それだけで必ずしも最善の答えではありません。
sovereignrollup 原則:オンチェーン保管、オフチェーン検証
この哲学が、クライアントサイド検証の考え方に基づくソブリン・ロールアップの核心です。要するに、妥協か革新か、BitVMは、誰もがビットコイン独自のレイヤー2技術経路を受け入れる準備ができたときに生まれたのです。
BitVM
BitVMが実際に何なのかは、コミュニティの多くにとって謎です。BitVMは、最初のレベルでZKP検証のためのスキームを提案しているようだが、最終的には楽観的なRollupメソッドを使用して実装する必要がある。初期段階では、BitVMはビットコイン上でCPUをエミュレートしてあらゆる計算を可能にすることも提案していた。ほとんどの人はこれらの奇妙な主張を嘲笑し、レイヤー2の資産を保護するためにDLCやアカウントエスクローなどのより現実的な方法を取った。しかし、今日の主人公であるCitreaのように、BitVMがLayer-2の未来だと信じ、それに多くの研究を投資しているプロジェクトもあり、BitVMが何なのかを解明することは明らかに重要です。
BitVMが何であるかを知るために、私たちは最も直接的なアプローチを取るつもりです:BitVMのGithubリポジトリを分析することです。 一言で言えば、BitVMリポジトリのコアは、以下のもので構成されています:
現在、BitVMは、より複雑な計算を達成するために、BitcoinのOpcodeを組み合わせることによって構築されています。明らかに、これはより実用的なルートです。実際の例で、それがどのように機能するか見てみましょう:Opcodeを組み合わせてuint32整数計算を行うのです。
BitVM は、実際には積み木のようなものです。基本的なOP_CODEのパッチワーク
この例では、2つの異なる要素を見つけることができます: Opcodeと、カプセル化された一連の新しいOpcodeです。OP_の接頭辞を持つOpcodeはビットコインスクリプトのネイティブOpcodeであり、u8_add_carryのような関数はBitVMによってカプセル化されカスタマイズされた新しいOpcodeを表しています。
これは些細なことに聞こえるかもしれませんが、これらの関数を過小評価しないでください。u32の計算は、bigint、さらにはbn256、そして最終的には証明構築システムの構築につながります。また、リポジトリ側から見ると、Groth16ベースの検証関数を構築できたという、特筆すべき成果をすでに挙げている!最終的に使用可能なZKPを構築するまで、そう遠くないようだ。
CitreaとBitVM
BitVMの現状を見ることができて嬉しく思います。レイヤー2のエコシステム全体に大きな恩恵をもたらしている。しかし、Bitcoin Layer-2の爆発的な普及とBitVMの開発ペースの間にはギャップがあることにも気づきました。結局のところ、時間は誰も待ってくれず、BitVMを採用したと主張するプロジェクトは、「BitVMを採用する予定である」とより解釈されるべきである。この場合、ビットコイン上の最初のzk-rollupであるというCitreaの主張は議論の余地がある。
BitVMの前にBitVMが正式に完成するまでは、Citreaは一種の自律的なロールアップ
私たちの第一の関心事は、「CitreaとBitVM、そしてZKPの現在の関係はどうなっているのか」ということです。明らかに、Citreaプロジェクトがどのように進行しているかを確認する最善の方法は、そのコードに飛び込むことです。彼らのテストサイト上の公式リポジトリを分析した結果、いくつかの興味深いことがわかりました:
(1) Sovereign Rollup
Citreaは依然として、ロールアップの過程にあるプロジェクトの典型的な例です。Citreaは依然として典型的なSovereign Rollupであり、Ethereum Layer-2に相当する真のzk-rollupを実装していません。Citreaは実際、彼らのtesting networkの発表の中で、現在のBitVMsが彼らのコアコンポーネントであるClamentianeと互換性がないこと、つまり、現在のBitVMsが彼らのコアコンポーネントであるClamentianeと互換性がないことに言及しています。Clamentiane (https://www.blog.citrea.xyz/unveiling-clementine/) はまだ完成していません。現在のところ、彼らはメルケル・ツリー・ルートとしてCitreaネットワーク内のアカウントの状態を保存し、ビットコイン上で、インスクリプションによって、メルケル・ツリー・ルートへの変更と対応するZKPの両方を記録します。 明らかに、ビットコイン上でインスクリプションを制限する必要はありません。そのため、これらのZKPとメルケル・ツリー・ルートは、Citreaのノードが能動的に検証する必要がある。同時に、ビットコインはその状態を確定する責任を負うだけで、その正しさを保証するわけではない。したがって、残念ながら、Citreaは当分の間、典型的なソブリン・ロールアップのままです。そのBitVMの唯一の部分は、ノードによるZKPの能動的な検証です。
自律検証の限界:オンチェーン証拠は保証されない自律検証の限界。
(2)RISC0
Citreaは、zkEVMの部分だけでなく、彼らのZKPについても、以下のものを使用しています。RISC0は2022年に誕生する比較的新しいZKP向けソリューションです。RISC0はCairoと非常に似たビジョンを共有しており、zkVMを構築することでZKPがあらゆる汎用計算を行えるようにします。しかし、Cairoと比較してRISC0は言語そのものではなく、Rustが提供するSDKを通じて直接使用できます。RISC0はCairoと比べると言語そのものではなく、Rustが提供するSDKから直接ビルドできる。そして、Rustで提供されるSDKから直接ビルドし、そのカスタムzkVMを使って計算することができる。RISC0に加えて、zk-STARKベースのCairo VMもBitcoin Layer-2で好まれている。zk Language + zk Prover + zk Verifierモデルの代替として、多くのプロジェクトがこの汎用計算 + zkVMモデルを採用していることに気づきました。これは、zk Verifierがビットコインで利用できないという事実によるもので、zkVMに直行することが、ソブリン・ロールアップにとってより費用対効果が高く効率的なアプローチであることは確かです。
結論
まず第一に、Citreaの最近の論争に関して、チームはBitVMとの互換性がまだ完全ではないことを明確にしました。この結論は、ビットコインのセキュリティを完全に継承できるRollupはまだ利用できないという結論を表している。しかし、このプロジェクトを観察する過程で、Bitcoin Layer-2に基づくイノベーションがまだ存在すること、Bitlayer、Alpenlabs、BVMネットワークなど、Bitcoinのzk-rollupに挑戦するプロジェクトがまだ多数存在することを目の当たりにし、ビットコインにおけるロールアップの進捗を追跡・分析し続ける原動力となりました。私たちは、ビットコインにおけるzk-rollupの進捗状況を追跡・分析しています。