BitVM は有界な計算をオフチェーンへ移し、あらかじめ用意した不正証明を Bitcoin に持ち込みます。Bitcoin Script 上で直接動く汎用仮想マシンではありません。
当初の BitVM は、prover と verifier の二者関係を記述しています。Prover はオフチェーンでプログラムを実行して実行トレースにコミットし、verifier は結果が誤りだと主張する場合だけ介入します。 [1]
BitVM2 は、小さなサブプログラムに分割したスクリプトで SNARK を検証します。楽観的な経路では計算全体をオンチェーンに書かず、争いが起きた場合は任意の challenger が短縮されたプロトコルで無効な主張を異議申し立てできます。 [2]
BitVM Bridge は、BTC を第二層へより安全に移すことを目指します。Setup 時の前提を誠実な過半数から少なくとも一人の誠実な参加者へ弱め、事前に指定された verifier だけでなく誰でも無効な証明を異議申し立てできます。 [2]
Permissionless challenge は信頼がゼロという意味ではありません。Liveness には少なくとも一人の活動中で合理的なオペレーターが必要で、全員が機能しなければ資金が動かなくなる可能性があります。具体的なプロトコルは setup、データ可用性、インセンティブ、正しいトランザクショングラフにも依存します。 [3]
BitVM Bridge の公式実装は自らを非本番用とし、本番で使わないよう明示的に警告しています。このリポジトリは SNARK verifier とブリッジの試作であり、安全な BTC 移転を監査済みとして保証するものではありません。 [4]
Permissionless challenge でも運用コストはなくなりません。大きなスクリプト、分割された証明、担保、期限、手数料が必要で、攻撃者が有効な証明を作れなくても、無応答や検閲は liveness を損なうことがあります。 [3]
BitVM は Bitcoin Script を任意のオンチェーンプログラム向けの通常の仮想マシンに変えません。この構成はコンセンサス変更なしで設計され、オフチェーン計算、コミットメント、timelocks、Bitcoin が強制できる事前署名済みの争いによって汎用性を得ます。 [5]
BitVM という名称には異なる複数の発展中の設計が含まれます。BitVM1、BitVM2、個別のブリッジプロトコルは役割も前提も同じではありません。利用前には正確な版、トランザクショングラフ、setup、オペレーター数、challenge 経路、緊急退出を確認する必要があります。 [4]
理解を深めるには、この項目とあわせて次もお読みください Bitcoin Script, Taproot, Covenants, Multisig, Sidechain, Soft Fork.
01BitVM は Bitcoin 上で直接プログラムを実行しますか?+
いいえ。プログラムはオフチェーンで計算され、Bitcoin は暗号学的コミットメントと小さな証明ステップについてあらかじめ用意された争いを裁定します。
02BitVM は完成した trustless bridge ですか?+
いいえ。BitVM2 は一部の信頼前提を弱め、permissionless challenge を可能にしますが、具体的なブリッジは setup、オペレーター、liveness、非本番用の実装に依存します。