クロス入力署名集約の実装が複雑になる理由は何ですか?
クロス入力署名集約の実装が複雑になる理由は何ですか?デザインスペースの理由以外に、なぜそれがBIP-Taprootにならなかったのですか?(1つの入力内のキー集約はMuSig、MuSig2などで実現できますが、署名はBIP-Taprootを使用して異なる入力間で集約することはできません。)
この質問は、TwitterでThorkilVaergeによって尋ねられました。
回答
PieterWuilleはTwitterでこれに答えました。
クロスインプットアグリゲーションの最も重要な複雑さは、AJタウンズによるこのビットコイン開発メーリングリストの投稿で説明されています。
TL; DR:ソフトフォークがチェックされる署名を変更する場合、一緒に集約されるものを変更してはなりません。これは、BIP341のOP_SUCCESSxアップグレードメカニズムと相互作用する場合に特に複雑になります。これにより、将来のソフトフォークでスクリプトのセマンティクスを完全に簡単に変更できる可能性があります。ここでは基本的に難しいことは何もありません。すべてがうまく連携するようにするのは、エンジニアリングの複雑さだけです。
Pieterは、BIP-Taprootに関するロンドンのBitDevsソクラテスセミナーで追加されました。
グラフトルートとクロスインプットアグリゲーションは、非常に概念的な変更です。後でそれらを構築することを許可することはできません。これは、スクリプトの動作方法に対するこのような構造上の変更です。これらは、後でTaprootの上に追加できるものではありません。後継者が必要です。クロス入力集約。スクリプト検証の概念は、入力ごとのものではなく、トランザクションごとのものです。あなたは最適な効率でそれを行うことはできません、私はあなたが物事を発明することができると思います。組み込まれている拡張性のタイプは、新しいオペコード、新しいタイプの公開鍵、新しいsighashタイプです。これらはすべてかなり簡単になり、すぐに実行しない場合と比較して、ほとんど欠点がありません。スクリプト実行の実際の構造変更。何か他のものが必要です。