
比特币的SegWit(隔离见证)是一种软分叉升级,旨在通过优化交易结构来解决网络可扩展性问题,同时保持和旧节点的兼容性,主要目的在于不改变原有区块大小和规则的前提下,环节比特币网络在交易处理能力方面的压力,SegWit通过调整交易数据的组织方式,将原本占用较大空间的签名验证信息从交易主体中分离出来,使区块在单位限制下可以容纳更多有效交易数据,这种结构层面的变化,使比特币在保持网络一致性的同时,还可以提高交易吞吐水平,还可以为后续扩展的方案奠定基础,比特币网络依赖区块来记录和确认交易,随着区块空间变的紧张,也限制了比特币作为支付网络的使用场景。
1、软分叉的核心在于新规则是旧规则的“子集”,即新区块不仅符合新标准,也满足旧共识规则。这使得未升级的旧节点依然能接受这些区块,从而维持单一区块链。这种设计避免了网络分裂,保障了系统稳定性。
2、SegWit通过将交易的签名数据(称为“见证”)从交易输入中分离出来,放入一个独立的结构中,从而改变了交易的数据格式
3、向后兼容:新规则是旧规则的子集,未升级的旧节点仍能验证新区块的有效性,避免了区块链分裂。
4、激活方式:采用BIP-9版本位机制,矿工通过在区块头设置特定标志位来表达支持,当95%的算力(2016个区块内1916个区块)投票支持后,新规则自动激活。 同时引入了用户激活分叉(UASF)作为补充机制,由全节点运行者自发部署时间锁,倒逼升级。
1、SegWit 中的扩展是通过权重的形式实现的,见证字节的权重为 1,其他数据字节的权重为 4,从而限制每个区块的最大权重为 400 万。为什么要为不同类型的数据分配不同的权重?一个常识性的想法是,见证数据在使用时只起到验证作用,不需要长期保存在存储中,因此成本相对较低,权重也较低。
2、这实际上是变相提高了区块大小限制,理论上的区块大小上限被提升到了 4MB(完全归功于见证数据),平均下来区块可以达到 2MB 左右。从旧区块结构来看,这还是秉承了中本聪当初每个区块不超过 1MB 的限制。
3、增加区块有效容量:通过引入“区块权重”概念(见证字节权重为1,其他数据字节权重为4),将区块最大限制从1MB扩展至400万权重单位,从而允许每个区块容纳更多交易。
4、解决交易延展性问题:分离签名数据后,交易ID(TXID)不再受签名部分影响,修复了可能导致交易被篡改的漏洞,为闪电网络等第二层方案奠定了基础。
5、优化交易结构:新交易可使用空输入脚本,并在独立的“见证”字段存储签名,旧节点虽无法识别新规则,但仍接受此类区块,确保网络平稳过渡。