跳至主要內容
Standards Track Final

BIP-141: 隔離見證(共識層)

比特幣最重要的升級之一,解決交易延展性問題並提高區塊容量。

Eric Lombrozo, Johnson Lau, Pieter Wuille 2015年12月21日
BIP 編號

141

類型

Standards Track

狀態

Final

創建日期

2015-12-21

摘要

隔離見證(Segregated Witness,簡稱 SegWit)是對比特幣協議的軟分叉升級。 它通過將簽名數據(見證)與交易數據分離,解決了多個長期存在的問題。

解決的問題

1. 交易延展性

在 SegWit 之前,第三方可以在交易被確認前修改交易的簽名部分, 從而改變交易 ID(txid),而不會使交易無效。這被稱為「交易延展性」問題。 SegWit 通過將簽名數據移到交易之外來解決這個問題。

2. 區塊容量

SegWit 引入了「區塊權重」的概念,取代了原來的區塊大小限制。 見證數據以折扣計算(1 字節見證數據 = 0.25 權重單位), 這實際上允許了更大的區塊容量。

3. 腳本版本控制

SegWit 引入了腳本版本控制系統,使未來的腳本升級可以通過軟分叉實現。 這為 Taproot 等後續升級奠定了基礎。

技術細節

區塊權重

SegWit 定義了新的區塊限制:

區塊權重 = 基本大小 × 3 + 總大小

最大區塊權重 = 4,000,000 權重單位

這相當於理論上約 4MB 的區塊大小,但實際上通常約為 2MB。

見證程序

SegWit 定義了兩種原生見證輸出類型:

  • P2WPKH (Pay to Witness Public Key Hash):地址以 bc1q 開頭
  • P2WSH (Pay to Witness Script Hash):用於更複雜的腳本

好處

  • 修復交易延展性:使閃電網路等 Layer 2 解決方案成為可能
  • 增加區塊容量:提高網路吞吐量
  • 降低交易費用:見證數據折扣計算
  • 腳本版本控制:支持未來升級
  • 提高簽名驗證效率:改進的哈希計算

相關 BIP

  • BIP-143:SegWit 交易簽名驗證
  • BIP-144:SegWit 對等協議
  • BIP-340/341:Taproot(SegWit v1)
已複製連結
已複製到剪貼簿