Bitcoin.com

什么是SegWit(隔离见证)?详解比特币最重要的升级

SegWit(隔离见证)是2017年比特币的一次升级,它降低了交易手续费,修复了一个关键的安全漏洞,并为闪电网络的诞生铺平了道路。以下是其工作原理。

最后更新
发布时间
阅读时间阅读时间:4分钟
作者
Neil Author
尼尔·维拉多
Crypto content specialist since 2017; reviews iGaming platforms firsthand
What is Bitcoin SegWit (Segregated Witness)?

如果你曾开设过比特币钱包,并在未获任何说明的情况下被要求在“Legacy”、“SegWit”或“Native SegWit”地址之间进行选择,那么这一选择可追溯至2017年的一次升级。

SegWit, 简称 隔离证人,是2017年8月激活的一项比特币协议升级,该升级将数字签名数据从核心交易结构中移出,放入一个名为“见证”(witness)的独立字段中。这一单一的架构变更不仅降低了交易手续费,还修复了一个存在多年的安全漏洞——即“交易可变性”(transaction malleability),并为闪电网络(Lightning Network)和Taproot的出现创造了技术条件。

本文介绍了SegWit的实际作用、区块权重系统的运作原理、不同地址类型对手续费的影响,以及在SegWit正式启用前那场险些将比特币网络撕裂的激烈政治斗争。

使用 Bitcoin.com 钱包应用.

要点总结

  • SegWit(隔离见证)是一项于2017年8月24日启用的比特币协议升级,其正式规范为BIP 141,由Pieter Wuille、Eric Lombrozo和Johnson Lau于2015年12月提出。
  • 它将数字签名数据(即“见证”)与交易主体分离,从而修复了名为“交易可变性”的安全漏洞,并使每笔交易的体积更小。
  • 区块容量以重量单位(WU)而非字节为单位进行衡量。见证数据每字节消耗 1 WU,而其他数据每字节消耗 4 WU,这使得 SegWit 交易在签名大小上享受了 75% 的折扣。
  • 原生SegWit(bc1q地址)将标准交易的大小从约226 vbytes缩减至约141 vbytes,与传统地址相比,手续费降低了约38%。
  • SegWit 的固定 TXID 保证是闪电网络的技术先决条件。如果没有这一保证,就无法安全地构建支付通道。
  • 其脚本版本控制系统支持了Taproot(SegWit V1,于2021年启用),并为未来无需硬分叉的比特币升级提供了框架。
  • 截至2026年,约85%的比特币交易都采用了SegWit。这是网络标准,而非新功能。

什么是SegWit?

SegWit(即隔离见证)是比特币交易格式的一项变更,它将数字签名(即证明您有权花费该币的加密凭证)与主要交易数据分离,并将其存储在一个名为“见证”的独立结构中。 这使得每笔交易体积更小,使每个区块能容纳更多交易,并消除了此前导致无法在比特币之上安全构建支付通道的一个漏洞。

这个名称的含义很简单:“segregated”意为“分离”,而“witness”是加密术语,指用于证明交易有效的签名数据。Witness 回答了“合法所有者是否授权了此交易?”这个问题,而交易数据的其他部分则回答了“资金流向何处以及金额是多少?”

BIP141 GitHubThe official BIP 141 header on GitHub, showing its three co-authors and December 2015 assignment date.

该升级正式被命名为比特币改进提案 141(BIP 141),由比特币核心(Bitcoin Core)开发者皮特·维勒(Pieter Wuille)、埃里克·隆布罗佐(Eric Lombrozo)和约翰逊·劳(Johnson Lau)于2015年12月的“比特币扩展”(Scaling Bitcoin)会议上提出。 该功能于2017年8月24日在区块481,824处作为软分叉在比特币主网激活,这意味着它向后兼容。未升级的节点仍可验证基础交易数据;而升级后的节点则能看到包含见证字段在内的完整交易信息。

截至2026年,约85%的比特币交易都采用了SegWit。它已不再是一项新功能,而是已成为行业标准。

SegWit旨在解决的问题

SegWit 解决了两个长期以来一直制约比特币发展的独立问题。

交易可塑性

每笔比特币交易都有一个称为TXID的唯一标识符,它是根据交易数据生成的哈希值。在SegWit推出之前,该哈希值是基于整个交易(包括签名)计算得出的。

问题在于:加密签名无法对自身进行签名。这便留下了一个小小的漏洞:任何在网络中转发你交易的人,都可以对签名进行微小修改——这种修改在数学上仍然有效,却会生成一个不同的TXID。资金依然会发送到正确的地址,交易也依然会成功,但交易标识符已经发生了变化。

对于简单的支付而言,这听起来似乎并不算什么灾难。但对于将多个未确认交易串联起来的协议来说,这却是致命的。 闪电网络(Lightning Network)的工作原理是创建一系列引用先前交易ID的链下支付承诺,如果这些ID中的任何一个在确认前发生变化,该网络就无法安全运行。可变的TXID意味着链条断裂,资金可能会被冻结或被盗。

在该问题得到修复之前,交易可塑性也曾造成过实际损失。Mt. Gox交易所将其列为2014年倒闭的诱因之一,尽管历史学家们仍在争论:这究竟在多大程度上是根本原因,又在多大程度上只是掩盖更深层次管理不善的借口。

SegWit 通过将签名完全从 TXID 的计算中移除,解决了这一问题。现在,该标识符仅根据基础交易字段计算得出。更改签名不再会改变交易的标识。

解决区块链拥堵和手续费上涨问题

到2016年及2017年初,比特币的处理速度约为每秒7笔交易。 在需求激增期间,待处理交易积压量增至数万笔,一笔标准转账的手续费飙升至50美元甚至更高。问题在于结构性限制:比特币区块大小上限为1MB,而签名约占交易大小的65%。

显而易见的解决方案——提高区块大小上限——需要进行硬分叉,这意味着所有节点都必须升级,否则就会被留在不兼容的区块链上。硬分叉风险高且争议大。SegWit 则完全绕开了这一限制。

SegWit 的工作原理

分离证人数据

在传统比特币交易中,每个输入都包含一个 ScriptSig 字段,其中包含花费者的签名和公钥。在 SegWit 交易中,SegWit 输入的 ScriptSig 字段被留空。签名和公钥被移至交易末尾附加的一个新见证字段中。

另外两个字节——一个标记(0x00)和一个标志(0x01)——会告知支持SegWit的节点,后面将跟随见证数据。对于早于SegWit推出的节点,它们只会看到一个空的ScriptSig,并根据旧的“任何人都可以花费”的解释将该交易视为有效,从而保持向后兼容性。

区块权重取代区块大小

SegWit 用一项新指标取代了 1MB 的区块大小限制:区块权重,其上限为 400 万权重单位(WU)。

关键点在于字节的计数方式:

  • 每个非见证交易数据的字节消耗 4 个权重单位
  • 每个字节的见证数据仅消耗 1 个权重单位

由于签名体积较大且现已移至见证区,其占用的区块容量仅为以往的四分之一。正是通过这种方式,SegWit 在不触及旧节点所执行的 1MB 规则的情况下,实际上将有效区块大小提升至约 1.7 至 2MB。 对于理论上的全SegWit区块,其最大容量为4MB,但实际上这种情况从未发生过,因为每个区块还包含非见证数据。

虚拟字节(vBytes):钱包中显示的单位

为了使手续费率与传统交易保持可比性,SegWit 引入了虚拟字节(vbytes):即字节数除以 4 所得的权重单位。对于传统交易,字节和虚拟字节是相同的。对于 SegWit 交易,由于见证数据经过压缩,导致其数值降低,因此虚拟字节数也相应减少。

钱包手续费以每vbyte的聪(sat/vB)为单位计价。在相同的sat/vB费率下,vbyte较少的SegWit交易所需支付的手续费更低。这就是使用bc1q地址而非1...地址时,您所看到的手续费节省背后的机制。

SegWit 地址类型:该选择哪一种?

SegWit 在引入技术变更的同时,还推出了新的地址格式。地址类型决定了您的钱包如何编码支出条件,这会影响您的手续费、与其他钱包的兼容性,以及您的交易在区块链上的显示方式。

地址类型的比较

地址类型前缀编码典型传输大小(1个输入,2个输出)节省费用与传统做法钱包支持
Legacy (P2PKH)1...Base58~226 vbytes基线通用
嵌套式SegWit(P2SH-P2WPKH)3...Base58~167 字节~26%非常广泛
原生SegWit(P2WPKH)bc1q... 42 个字符Bech32~141 字节~38%所有现代钱包
原生 SegWit 多签名(P2WSH)bc1q... 62 个字符Bech32因情况而异~32%+所有现代钱包
Taproot (P2TR)bc1p... 62 个字符Bech32m~154 vbytes约32%大多数现代钱包

交易规模数据: Spark.money 比特币交易大小参考, 2026。手续费节省金额仅为估算值,具体数额会因内存池状况而异。

Legacy(P2PKH,前缀 1...) 这是2009年的原始格式。签名仍位于主交易体内部,因此能获得全额权重。无法节省手续费。该格式目前仍被普遍支持,这也是如今使用它的唯一理由——即当您需要处理无法接收其他格式的非常旧的软件时。

嵌套式SegWit(P2SH-P2WPKH,前缀 3...) 将 SegWit 脚本封装在较旧的 P2SH 信封中。2017 年 SegWit 启用时,并非所有钱包和交易所都立即支持新的 bc1 格式。嵌套 SegWit 充当了兼容性桥梁:您可以节省部分手续费,而使用旧版软件的发件人仍可向您付款。 到2026年,该格式主要作为备用方案存在。该 3... 该前缀与非SegWit的P2SH地址相同,这意味着仅凭地址本身无法判断这是一笔SegWit交易。

原生SegWit(P2WPKH,前缀 bc1q..., 42 个字符) 对大多数用户而言是最佳选择。它采用 Bech32 编码,全部为小写字母,比 Base58 具有更强的错误检测能力,并消除了易混淆的字符(不含大写字母 O、数字 0、大写字母 I 或小写字母 l)。 一笔标准的1输入、2输出的P2WPKH交易占用约141 vbytes,比同等规模的传统交易节省约38%。截至2026年,所有活跃钱包和交易所均已支持该协议。

原生 SegWit 多签名(P2WSH,前缀 bc1q..., 62个字符) 这是脚本哈希变体,用于多签名钱包和复杂的消费条件。 较长的地址反映的是32字节的SHA-256哈希值,而非P2WPKH所使用的20字节哈希值。如果您正在运行2-of-3多签设置,P2WSH是SegWit原生支持的实现方式。

Taproot(P2TR,前缀 bc1p..., 62个字符) 这是于2021年启用的SegWit 1.0版本。 它采用Schnorr签名而非ECDSA,这使得多个签名可以聚合为一个,从而使多签名交易在链上与单签名交易无法区分。它为单签名交易提供了最低的手续费,并具备最佳的隐私保护。当您确认收款人及其钱包支持bc1p地址时,请使用此功能。

快速推荐

对于大多数人来说:请使用原生 SegWit(bc1q)。几乎所有活跃的钱包和交易所都支持该协议,与传统方案相比可节省约 38% 的手续费,且在 2026 年不会存在兼容性风险(对于需要将 SegWit 集成到钱包软件中的开发者,请参阅 比特币核心钱包开发指南.).

如果您的钱包支持 Taproot(bc1p),且您正在与同样支持该功能的钱包进行单签名交易,这样可以略微降低手续费并提升隐私性。

嵌套式SegWit(3...)是一种兼容性回退方案。它本身没问题,但已经没有理由将其作为默认选项了。

区块大小之争:SegWit为何如此备受争议

SegWit的技术依据很明确,但其启用路径却并不明确。

2015年至2017年间,比特币陷入了其历史上最具争议的治理纠纷之一。归根结底,问题很简单:当不同派系利益冲突时,一个去中心化网络应如何升级自身的规则?

采矿僵局

根据标准的BIP9升级流程,软分叉需要在两周内获得95%矿工的支持信号。截至2017年初,SegWit虽然已准备就绪数月,但支持率始终未能达到这一门槛。

最强烈的反对来自大型矿场,尤其是比特大陆(Bitmain),该公司当时掌控着比特币算力的相当大份额。 其原因后来变得明朗:比特大陆使用了一项名为ASICBoost的专利技术,这项优化使其矿机获得了显著的效率优势。SegWit在结构上与隐蔽的ASICBoost技术不相容。阻挠SegWit的实施正是为了维护这一优势。

BIP 148 与 UASF

2017年3月,一位化名Shaolinfry的匿名开发者发布了BIP 148:一项用户激活软分叉(UASF)。 BIP 148 并未等待矿工发出信号,而是提议经济节点(即交易所、支付处理商以及运行比特币软件的企业)从 2017 年 8 月 1 日起,直接开始拒绝任何未表明支持 SegWit 的区块。

其中的逻辑很简单:矿工生成区块,但只有当网络接受这些区块时,它们才具有价值。 如果经济上的多数派中有足够多的人运行 BIP 148 节点,矿工要么激活 SegWit,要么眼睁睁看着自己的区块被弃用。风险同样显而易见:如果采用率不足,就会发生链分叉,导致两个互不兼容的比特币版本并行运行。

UASF运动是一场自下而上且声势浩大的运动。会议胸牌纷纷出现,推特上的争论愈演愈烈,“运行自己的节点”这一口号也变得愈发紧迫。

《纽约协议》与比特币现金

面对UASF的最后期限,2017年5月,50多家比特币行业巨头齐聚纽约,签署了后来被称为《纽约协议》的文件。 各方同意启用SegWit,但随后将进行一次硬分叉,将区块大小翻倍至2MB(该方案被称为SegWit2x)。

这一折中方案未能让双方都完全满意。反对扩大区块大小的开发者认为,SegWit2x是一种他们并未同意的“后门”硬分叉。而希望扩大区块大小的矿工和公司,依然未能如愿以偿。

2017年8月1日,一个主张纯粹增加区块大小(不采用SegWit)的派系对比特币进行了分叉,创建了比特币现金(BCH),其初始区块大小上限为8MB。SegWit于2017年8月24日在比特币网络上激活。 2017年11月,SegWit2x硬分叉计划因其组织者认定未能达成充分共识而被放弃。

和解内容

这一结果的意义远不止于技术细节。UASF 奏效了:决定适用哪些共识规则的是经济节点,而非矿工。如今,这常被视为一个例证,表明比特币的治理权最终掌握在运行和使用该软件的人手中,而非生产区块的人手中。社区中的一部分人将 8 月 1 日称为“比特币独立日”。

SegWit带来的可能性

闪电网络

闪电网络的设计早于SegWit的出现。其设计者深知,在解决交易可变性问题之前,该网络无法安全部署,因为支付通道依赖于一系列通过TXID相互引用的未确认交易链。SegWit提供的固定TXID保证,使得这些通道变得安全。

闪电网络于2018年初在比特币主网上线,距离SegWit激活大约六个月。截至2025年第一季度,该网络已处理超过1亿笔交易。如果没有SegWit,这一切基础设施都不可能存在。

Taproot 与脚本版本控制

SegWit 在比特币的交易格式中引入了脚本版本控制机制。见证程序以一个版本字节开头:SegWit V0 支持 P2WPKH 和 P2WSH。未来任何定义新版本号的升级都将拥有独立的规则,既不会与现有规则冲突,也不需要再经历一场充满争议的升级之争。

SegWit V1 即 Taproot,于 2021 年 11 月启用。它引入了 Schnorr 签名、用于处理复杂支出条件的 MAST(默克尔化抽象语法树)框架,以及隐私改进措施——这些改进使得多签名钱包在链上看起来与单签名交易完全相同。 Taproot 引入的每一项技术功能都依赖于 SegWit 创建的版本化架构。

序数词与铭文

正是SegWit引入、Taproot进一步扩展的这一“见证”数据结构,使得将任意数据、图像、文本和代码直接嵌入比特币交易在技术上成为可能。 这就是Ordinals协议和比特币铭文背后的机制,它推动了链上数据使用量的激增,并促使Taproot在2024年的采用率达到约42%。 随着铭文活动的减少,到2025年底,Taproot的使用率稳定在交易总量的20%左右,而SegWit V0仍以约85%的比例占据主导地位。

SegWit 背景:比特币的升级时间线

活动
2015皮特·维勒在“比特币扩展”会议上介绍了SegWit概念
2016BIP 141 已正式发布;矿工支持率在 95% 门槛以下停滞不前
2017年3月由 Shaolinfry 发布的 BIP 148(UASF)
2017年5月50多家公司签署了《纽约协议》
2017年8月1日比特币现金从比特币分叉而来
2017年8月24日比特币网络在第481,824个区块时激活了SegWit
2017年11月SegWit2x硬分叉计划已取消
2018年1月闪电网络在主网正式上线
2021年11月Taproot 正式启用,基于 SegWit 的版本控制系统
2023-2024序数和铭文利用了SegWit/Taproot的见证空间
2026约85%的比特币交易使用了SegWit

当前收养情况

SegWit在激活后采用率稳步增长,在最初的几个月内就达到了交易总量的30%,随后随着钱包和交易所升级软件,在接下来的两年里这一比例攀升至50%以上。

截至2026年,约85%的比特币交易使用SegWit(来源:Spark.money比特币网络统计数据、CoinGecko)。剩余的15%是来自尚未升级的钱包和服务的旧版交易。 Taproot(P2TR,SegWit V1)的采用率在2024年达到峰值,约占交易总量的42%,这主要得益于Ordinals刻录活动的推动;随后随着刻录量的减少,该比例在2025年底回落至约20%。

采用曲线与SegWit本身的发展轨迹如出一辙:随着硬件钱包、交易所和支付处理商陆续更新软件,新地址格式通常需要一到三年时间才能被主流采用。Taproot的支持范围正在各类钱包实现中持续扩大。

SegWit 与传统方案:差异总结

功能旧版(SegWit之前)SegWit
签名位置ScriptSig 内部(主交易正文)单独的证人字段
区块大小指标大小(以字节为单位,上限为1MB)重量单位(上限为4M WU)
TXID 计算包含签名数据不包括见证数据
交易可塑性可能的已修复
典型的1进/2出传输规模~226 vbytes约141 vbytes(P2WPKH)
节省费用基线降低约38%(P2WPKH 与 P2PKH 相比)
支持闪电网络不安全必填;启用支付渠道
地址前缀1...bc1q... (本地) 或 3... (嵌套)
编码Base58Bech32

结论

SegWit 是一项协议升级,它将比特币的签名数据与交易数据分离,修复了一个自 2009 年以来就存在的安全漏洞,将交易手续费降低了约三分之一,并为闪电网络、Taproot 以及此后基于它们构建的所有应用提供了架构基础。

截至2026年,它已成为比特币上的交易标准,处理着绝大多数链上活动。它所引入的地址格式,尤其是原生SegWit(bc1q)格式,是当今大多数用户默认应采用的格式。 围绕其激活展开的政治斗争,至今仍是比特币治理史上最具启发性的篇章之一:它证明了在去中心化网络中,共识并非由矿工授予,而是由用户所确立的。

Frequently Asked Questions

What does SegWit stand for?
SegWit stands for Segregated Witness. "Segregated" means separated, and "witness" is the cryptographic term for the signature data that proves a transaction is authorized. Together, the name describes exactly what the upgrade does: it moves signature data out of the main transaction and stores it separately.
Is SegWit safe to use?
Yes. As of 2026, approximately 85% of all Bitcoin transactions use SegWit, making it the network standard. All major wallets (Ledger, Trezor, BlueWallet, Electrum) and exchanges support SegWit addresses. There is no meaningful security trade-off compared to legacy addresses. If anything, SegWit addresses have a slight security advantage because the public key is only revealed when you spend, not when you receive.
What is the difference between SegWit and Native SegWit?
"SegWit" addresses starting with 3 are wrapped (or nested) SegWit. They embed a SegWit script inside an older P2SH envelope for backward compatibility with wallets that predate bc1 support. "Native SegWit" addresses starting with bc1q use the full SegWit format with no wrapper, resulting in lower fees (~38% savings vs legacy, versus ~26% for nested SegWit) and a cleaner address format with better error detection.
What is the difference between SegWit and Taproot?
SegWit (specifically SegWit V0) introduced the witness field and block weight system. Taproot is SegWit V1, activated in November 2021. It uses Schnorr signatures instead of ECDSA, allows signature aggregation for multisig wallets (making them look identical to single-sig on-chain), and enables more complex scripting through MAST. Taproot addresses start with bc1p. For most single-sig users, Taproot offers slightly better fees and improved privacy, but native SegWit (bc1q) remains the safer default given its broader exchange and wallet compatibility.
Can I send Bitcoin from a SegWit address to a Legacy address?
Yes. Bitcoin transactions are format-agnostic on the sending side. You can send from a bc1q address to a 1... address and vice versa. The address format affects how your own spending transaction is sized and priced, not where the funds can go. All SegWit-compatible wallets handle the script generation automatically.
Does SegWit actually reduce my fees?
Yes, in concrete terms. Sending from a native SegWit (bc1q) address reduces your transaction's virtual byte size by roughly 38% compared to a legacy (1...) address for a standard 1-input, 2-output transaction (141 vbytes vs 226 vbytes). Because fees are priced per vbyte, a smaller transaction pays proportionally less. The savings are larger if you have multiple inputs, since each input's witness data gets the 75% discount.
Why did some miners oppose SegWit?
The primary technical reason was ASICBoost, a mining optimization patented and used by Bitmain that provided a meaningful efficiency advantage. ASICBoost was structurally incompatible with SegWit. Blocking the upgrade protected that competitive edge. There were also ideological arguments about block size policy, but the ASICBoost conflict of interest is the most concrete explanation for why miner signalling stalled for over a year despite broad developer and user support.
Did SegWit cause the Bitcoin Cash fork?
SegWit's activation was a trigger, but the underlying disagreement was about scaling philosophy. A faction within the Bitcoin community wanted to increase the block size as the primary scaling solution, rather than segregate witness data and build on top of the protocol. When SegWit activated on August 24, 2017, that faction had already forked on August 1, creating Bitcoin Cash with an 8MB block size limit. The split was the result of a years-long debate, not a single decision.
What is BIP 141?
BIP 141 is the formal Bitcoin Improvement Proposal that specified the Segregated Witness upgrade. BIP stands for Bitcoin Improvement Proposal, the standard process through which protocol changes are proposed, discussed, and adopted. BIP 141 defined the transaction format changes, the block weight system, and the new script types. It was developed alongside BIP 143 (updated signature hashing), BIP 144 (peer-to-peer communication of SegWit data), and BIP 147 (closing a remaining malleability vector in multisig scripts). You can read the original specification at the official Bitcoin BIPs repository on GitHub.
What is the Bech32 address format?
Bech32 is the encoding system used for native SegWit addresses (bc1q...). It was introduced as part of BIP 173 specifically for SegWit. Compared to the older Base58 encoding used by legacy addresses, Bech32 is all lowercase, eliminates visually similar characters (no 0, O, I, or l), provides stronger error detection that can catch up to four character errors with certainty, and is more efficient for QR codes. A modified version, Bech32m, is used for Taproot (bc1p...) addresses.
Does SegWit work with hardware wallets?
Yes. All major hardware wallets, including Ledger, Trezor, Coldcard, and BitBox02, have supported SegWit addresses for years. Most default to native SegWit (P2WPKH) for new Bitcoin wallets. If you're setting up a new hardware wallet in 2026, you will almost certainly be given a bc1q address by default.

使用 Bitcoin.com 钱包,安全地开始投资

迄今为止已创建超过8500万个钱包。这里提供您安全买卖、交易和投资比特币及加密货币所需的一切功能。

A screenshot of the Bitcoin.com Wallet app

扫描以下载 Bitcoin.com 钱包

用您的移动设备扫描此二维码,系统将自动将您重定向至相应的店铺页面。