BIP 141
Segregated Witness(コンセンサス層)
原題: Segregated Witness (Consensus layer)
- Status
- Deployed
- Type / Layer
- Specification / Consensus (soft fork)
- Author
- Eric Lombrozo, Johnson Lau, Pieter Wuille
- 割り当て日
- Status 検証日
- 原文
- github.com/bitcoin/bips/blob/master/bip-0141.mediawiki
要約
トランザクションの署名データを「witness」という新しい構造に分離し、トランザクションのマークルツリーとは別にブロックへコミットするソフトフォーク仕様。出発点にあるのは、トランザクションの効果を決めるのは入力の消費と出力の生成であって、署名はブロックチェーンの状態を検証するためにしか要らないという観察である。署名を txid の計算対象から外すと、第三者が署名の表現を書き換えて txid を変えてしまう「トランザクション展性(malleability)」が構造的に解消される。仕様はこれを BIP62 の正規署名アプローチより優れた解として位置づけ、未確認トランザクションを連鎖させても相手方リスクが生じないこと、それが Lightning Network のようなオフチェーン・プロトコルにとって重要であることを明記している。witness のコミットメントはコインベーストランザクション経由で既存のマークルルートに入れ子にされ、ソフトフォークとして展開できる形をとる。また、witness を割り引いて数える weight という尺度が導入され、実効的なブロック容量が拡大した。
技術的意義
2017 年 8 月に有効化された、ビットコインの歴史で最も大きな仕様変更のひとつである。展性の解消は Lightning Network の前提条件であり、weight の導入は実効容量を拡大した。BIP143 の署名ダイジェスト、BIP144 の P2P メッセージ、BIP173 の bech32 アドレスと一組で機能する。
関連する BIP
関連する解説記事
このページに掲載しているのは原文の翻訳ではなく日本語の要約です。BIP は原文が正であり、Status を含むメタデータは上記の検証日時点で bips リポジトリから転記した値です。実装・検証の際は必ず原文を参照してください。