MSTR Cat

ブロックチェーン/レベル IV · プロトコルを深く知る/4.2 アップグレード/レッスン 5

コベナンツとボールト:CTV、OP_CAT、2026年の議論

次の支出を制限するルールと、それがもたらす猶予時間

用意するものBIP119(OP_CHECKTEMPLATEVERIFY)のコピーBIP347のコピー(TaprootにおけるOP_CATの再有効化)スクリプト検証ロジックに関するBitcoin Coreのソースコードトランザクションの確認が可能なブロックエクスプローラー

問い

  1. なぜ標準的なビットコインスクリプトは、鍵を持っている人を確認できても、コインが次にどこへ行くかは確認できないのでしょうか?
  2. OP_CHECKTEMPLATEVERIFYは、将来のトランザクションにどのような具体的な制約を課すのでしょうか?
  3. なぜ単一の連結オペコードをソフトフォークで再有効化することが、コベナントへの扉を開くことになるのでしょうか?

探究

    パート Iコベナントの提案:CTVとOP_CAT

  1. 標準的なビットコインのスクリプトは鍵やハッシュの所有を検証できますが、ロック解除後にコインがどこへ行くかを制限することはできません。コベナントは、後続の出力の`scriptPubKey`に条件を課すことでこれを変えます。この仕組みはよく食事券に例えられます。どこでも使える現金とは異なり、これらの資金は特定の提携レストランでしか使えません。提案されている用途には、引き出しに遅延期間を設けたボールト、混雑制御、よりシンプルなLightningの設計などがあります。
  2. ジェレミー・ルービンは2019年にOP_CHECKTEMPLATEVERIFY(CTV)を提案しました。このオペコードは、将来のトランザクションのテンプレートのハッシュを現在のUTXOに埋め込みます。これを使うには、支出するトランザクション自体がこのテンプレートと完全に一致しなければならず、検証の段階で署名は関与しません。現在の動きを実行する前に、次の動きが固定されるのです。金額、送り先、スクリプト構造のいずれかが少しでも異なれば検証は即座に失敗し、あらかじめ定められた経路が厳格に守られます。
  3. CTVの制約は硬直性です。コインをロックした時点で次のトランザクションの出力が固定されるため、手数料は別の方法、例えばアンカー出力とchild-pays-for-parentなどで処理する必要があります。その代わり、CTVは分析が簡単で、検証コストも低く抑えられます。
  4. 2つのスタック要素を連結するオペコードであるOP_CATは、メモリ枯渇攻撃への予防策として、2010年にサトシ・ナカモトによって無効化されました。BIP347は、これをTapscript内に限って再有効化することを提案しています。シュノア署名を利用したテクニックと組み合わせることで、OP_CATは個々の用途ごとに新たなコンセンサスルールを必要とすることなく、コベナントやその他の複雑なロジックを可能にします。開発者が組み合わせて、将来のトランザクションに独自の制限を設けるための基本的な構成要素となるのです。
  5. 関連する提案に、支出トランザクションではなく、スタック上で渡された任意のメッセージに対する署名を検証するOP_CHECKSIGFROMSTACK(BIP348)があります。この柔軟性をCTV(あるいは、それとは別に提案されているANYPREVOUT)と組み合わせれば、どちらの当事者も過去のチャネル状態ごとにペナルティ用のデータを保存する必要のない、対称型のLightningチャネルが実現します。
  6. 2026年時点で、これらのコベナント提案はいずれも有効化されていませんが、有効化に向けた取り組みと議論は続いています。その有用性、コンセンサスルールにもたらすリスク、有効化に必要なガバナンスプロセスをめぐる議論は今も続いています。コンセンサスルールの拡張は、ネットワークの複雑さや長期的な保守性に関する問題を提起しており、これらはコミュニティ内でいまだ解決されていません。
  7. パート IIコベナンツとボールト:2026年の議論

  8. 現在のビットコインスクリプトは、署名やロックタイムなど、そのトランザクション自体に関する条件を検証します。使用する側のトランザクションのアウトプットを調べることはできません。コベナンツはこの範囲を拡張します。scriptPubKeyが、それを使用するトランザクションによって作成されるアウトプットのscriptPubKeyに制約を課せるようになるのです。これによりコインの次の行き先が制限され、アドレスのホワイトリストや非対話型のペイメントチャネルといった機能が実現可能になります。
  9. BIP-119はOP_CHECKTEMPLATEVERIFY(CTV)を提案しています。これはスクリプトにテンプレートのハッシュを埋め込めるようにするもので、使用する側のトランザクションは、アウトプット、インプット数、シーケンス、ロックタイム、バージョンの点でこのテンプレートと一致しなければなりません(ただし、どのインプットを使用するかは対象外です)。CTVは非再帰的であり、直後の1ステップのみを制約します。OP_NOP4を置き換えるもので、ソフトフォークを必要とします。CTVは、盗難からの回復に時間的猶予を加える「ボールト」の基盤となり得ます。
  10. ボールトでは、引き出しが待機期間(例:12時間)を経る必要があり、その間に別のリカバリーキーで資金を安全な場所へ移すことができます。攻撃者が日常使いの鍵を盗んで引き出しを開始しても、所有者はそれをオンチェーンで確認し、待機期間が終わる前に資金を取り戻せます。これにより、被害者がチェーンを監視している限り、鍵の盗難は取り返しのつかない損失から、回復可能な出来事へと変わります。
  11. 2013年から議論が続いているにもかかわらず、コベナンツのソフトフォークはまだ一つもアクティベートされていません。Taproot(2021年11月)が依然として最後の大型アップグレードです。2026年2月には、Bitcoin Coreが関与しない形でBIP-119のアクティベーションクライアントが公開されました。このクライアントでは、2026年3月から2027年3月までの間にマイナーの90%のシグナリングが必要です。2026年5月時点でシグナリングはほぼゼロにとどまっており、採用に関する合意が存在しないことを示しています。
  12. OP_CAT(BIP-347)は2026年3月に仕様が完成しましたが、アクティベーションのパラメータは定められていません。OP_CATはスクリプト要素の連結を可能にし、CTV単体よりも複雑なロジックを実現します。CTVは、使用する側のトランザクションだけでなく、スタック上の任意のデータに対する署名を検証するCheckSigFromStack(CSFS)と組み合わされることが多くあります。両者を組み合わせることで、スマートコントラクトやプロトコル設計の表現力が大きく向上します。
  13. 議論の焦点はトレードオフにあります。コベナンツはセキュリティを高め、ボールトのような新しいプロトコルを可能にする一方で、複雑さとガバナンス上のリスクをもたらします。ソフトフォークはコンセンサスルールを変更するため、マイナーとノード運営者の幅広い合意が必要です。現在の停滞は、実装上のバグや、チェーン状態の変更が不可逆であることへの慎重さを反映しています。ユーザーは、こうした利点と、アクティベーションが失敗したり紛糾したりするリスクとを比較検討しなければなりません。

重要な事実

  • コベナントは、現在のロック解除条件だけでなく、将来のトランザクションの`scriptPubKey`も制限します。
  • OP_CHECKTEMPLATEVERIFY(BIP119)は、出力を、それを支出するトランザクションの正確な形にコミットさせます。
  • CTVでは将来のトランザクションの詳細を事前に計算する必要があり、金額と手数料は作成時点で固定されます。
  • OP_CATは2010年に無効化されましたが、BIP347を通じてTapscriptでの再有効化が提案されています(2023~2024年)。
  • BIP348は、スタックから取得したメッセージに対する署名を検証するOP_CHECKSIGFROMSTACKを提案しています。
  • 2026年時点でコベナント提案はいずれも有効化されておらず、その有用性、リスク、有効化をめぐる議論が続いていました。
  • コベナンツは、UTXOを使用するトランザクションのアウトプットを制限します。
  • BIP-119(CTV)のアクティベーションには、2026年3月から2027年3月までの間にマイナーの90%のシグナリングが必要です。
  • 2026年5月時点でのBIP-119に関するシグナリングはほぼ0%でした。
  • Taproot(2021年11月)が最後にアクティベートされたソフトフォークであり、稼働中のコベナンツはありません。
  • OP_CATは2026年3月に仕様が完成しましたが、アクティベーションのパラメータはありません。
  • ボールトはコベナンツを使って、鍵の盗難に対する遅延と資金回収の経路を追加します。

演習 九・六・三・一

9集めるコベナントやスクリプト拡張に関連する、提案されているビットコインのオペコードまたはメカニズム9つを挙げてください(例:CTV、APO、OP_CAT)。
6まとめる9つを、トランザクションの形状、キー導出、連結ロジックなど、主な制約の種類に基づいて6つのカテゴリーに分類してください。
3絞り込む6つのグループを、柔軟性と検証コストの間にある核心的な技術的トレードオフ3つに絞り込んでください。
1結晶化するCTVのような厳格なコベナントが、柔軟なOP_CATベースのスクリプトよりも検証コストが低い理由を、1文で説明してください。

事実確認

日付、数字、主張は、下記に記載された公表資料と照合して確認しました。

インタラクティブ版で開く →

EN PT ES ZH KO RU DE FR MS