
ZKByteを簡潔に分析:ZKおよびBitVMに基づくビットコインLayer2スケーリングソリューション
TechFlow厳選深潮セレクト

ZKByteを簡潔に分析:ZKおよびBitVMに基づくビットコインLayer2スケーリングソリューション
スピード、効率性、安全性を向上させる。
執筆:ZKBase(旧称 ZKSpace)
本設計の主な目的は、ビットコインブロックチェーン専用のLayer2ネットワークを構築することにある。このビットコインLayer2ネットワークは、ビットコインエコシステム内で増加する高速かつ高効率な取引ニーズに対応することを目指している。主要取引処理タスクをメインチェーンからオフロードすることで、ビットコインメインネットの混雑を緩和し、取引確認に必要な時間を大幅に短縮することを意図している。
ビットコイン仮想マシン(VM)の計算能力には本質的な制限があるため、本設計ではBitVMを採用しており、これは二層間でスマートコントラクトを実行する可能性を示している。チャレンジ・アンド・リスポンス方式を利用することで、BitVMは従来の制約を打破する新たなビットコインネットワークのプログラマビリティ手法を提示している。
ビットコインLayer2ネットワークの安全性と完全性を強化するために、本設計はゼロ知識証明(ZK)技術を統合してステート検証を実現している。これらの高度な暗号技術により、ビットコインメインネットは下位の取引のプライバシーと機密性を損なうことなく、Layer2ネットワークの状態を効果的に検証できるようになる。ゼロ知識証明は、取引の詳細を明らかにせずに情報の正当性を検証できるため、プライバシーを保護しつつLayer2ネットワークの完全性を確保することができる。
全体として、本設計はLayer2ネットワークによる拡張性の向上、BitVMを活用したスマートコントラクトの実行、およびゼロ知識証明技術によるステート検証の統合を通じて、ビットコインネットワークのスケーラビリティ、速度、効率を高めるとともに、基礎となる取引のプライバシーとセキュリティを維持することを目指している。
0、アーキテクチャ
Layer2ブロックチェーンはアカウントモデルを採用している。ブロックチェーン全体のステートは、Halo2証明システムに基づくzkVMによって検証される。Layer2のステートはビットコインメインネットと同期され、すべてのLayer2ステートはBitVMで実装されたゼロ知識証明(ZKP)バリデータによって検証される。また、すべてのLayer2ステートを追跡するために単一のUTXOを使用している。さらに、ロック/アンロックスクリプトの入出力がLayer2プロトコルに従っていることを保証するために、信頼できるオラクルも利用している。

1、Layer2委員会と信頼できるオラクル
選ばれたユーザーからなるLayer2委員会は、Layer2ネットワーク全体の運用状況を監視する責任を負う。プロトコルに問題が発生した場合、委員会は介入してプロトコルを停止し、すべてのユーザー資産を保護することができる。信頼できるオラクルは、入出力UTXOおよびスクリプトの正確性を検証するために極めて重要である。
2、第一層から第二層へ
ビットコインネットワーク上に、Taprootアドレスを1つ作成してLayer2プロトコルを表す。UTXOを作成してそのTaprootアドレスに送金すると、対応するUTXOは実質的にビットコインメインネットからLayer2へ「チャージ(入金)」されたことになる。
プロトコルまたは委員会アカウントは、「チャージ」されたすべてのUTXO資産の「移転」権限を専門に管理する。UTXOの所有権を変更できるのは、プロトコル、信頼できるオラクル、または委員会アカウントのみである。信頼できるオラクルは、所有権移転取引に正しい出力UTXOスクリプトが含まれていることを保証する。

3、ビットコインメインネットへの同期ブロック
すべてのLayer2ネットワークのステートはブロック単位でビットコインメインネットに同期される。各ブロックについて、以下の情報を提供する必要がある:
・ 特定ブロック内の取引;
・ これらの取引を適用後の新しいアカウントステート;
・ 現在のブロックステートにおける新しいUTXO(プロトコルが破綻しても常に準備済み);
・ ビットコインネットワークのブロック情報;
・ ゼロ知識証明(前ブロックから現ブロックへのステート遷移が正しいことを証明するもの)。これらのすべてのビットコインメインネットステートは、1つのUTXO取引履歴に記録される。

3.1 証明に関する詳細
ゼロ知識証明はLayer2の正当性を検証するために使用される。以下を証明しようとする:
・ Layer2ブロック内の取引が正しく署名されていること。
・ すべてのアカウントの新ステートが正しく処理されていること。
・ ビットコインメインネットのある特定ブロック以前のすべてのチャージ取引が正しく処理されていること。
・ 現在のステートにおいて、すべてのUTXOの割当が正しく生成されていること。
3.2 ブロック情報に対するチャレンジ
ビットコインメインネットにおける指定されたブロック情報の正確性を保証するため、チャレンジ・アンド・リスポンス方式を採用している。証明者は、ロック期間内に特定ブロックの後にN個のブロックが存在することを示すことで、ブロック情報の正確性を証明できる。
3.3 ZKP回路とBitVMの強化
BitVM論文が示すように、ZKP検証は二進回路として表現でき、2人の参加者間でチャレンジ可能である。事前署名済み取引により、回路のビットコミットメントを取得するチャレンジを送信できる。0と1が明らかになれば、チャレンジは成功する。BitVMを用いてZKPを検証する際には、以下の2点に注意が必要である:
-
同じ二進回路コミットメントは1回しか使用できない。つまり、同じ回路コミットメントが複数のブロックで使われた場合、あるビットコミットメントの0と1が明らかになってしまう可能性がある。
-
ZKP検証では、回路の充足性に加えて、「公開入力(public input)」のチェックも必要である。
これら2つの欠点に対処するため、Layer2の各ブロックに対して一意の二進回路を作成し、「公開入力」を固定する。ビットコインスクリプトは、公開入力のハッシュとチェックに使用される。正しい公開入力のビットコミットメントは、信頼できるオラクルが検証する。回路の充足性については、委員会のメンバーであれば誰でもチャレンジを提起する権利を持つ。

4、Layer2からビットコインメインネットへ
資産は2つの方法でLayer2からビットコインメインネットに移動できる:出金(withdrawal)と強制出金(force-withdrawal)。出金取引はLayer2からトリガーされ、ZKP回路により取引が期待通りに処理されることを保証する。強制出金取引はビットコインネットワークから開始される。
4.1 出金および強制出金取引
Layer2から開始される出金取引は、ZKP回路によって検証され、取引が正しく処理されることを保証する。ビットコインネットワークから開始される強制出金取引は、次のブロックステート更新に必ず含まれなければならない。
4.2 UTXO割当
ブロックのステートが更新されると、UTXO割当も同期される。プロトコルが停止した場合、すべてのUTXOを適用して全ユーザー資産の安全を確保できる。これらのUTXOの中では、出金または強制出金用のUTXOのみがプロトコルによって署名される。
5、Layer2からの退出
ZKPが検証されない場合、委員会はプロトコルを停止し、退出手続きを行う必要がある。プロトコルが停止した場合、委員会はLayer2の最新ブロックステートに指定されたすべてのUTXO割当に対して署名を行う。この署名により、ユーザーはLayer2から損失なしに出金できるようになる。

TechFlow公式コミュニティへようこそ
Telegram購読グループ:https://t.me/TechFlowDaily
Twitter公式アカウント:https://x.com/TechFlowPost
Twitter英語アカウント:https://x.com/BlockFlow_News














