硬分叉和软分叉有什么区别?一条链为什么会变成两条
软分叉收紧规则,旧节点通常还能跟上;硬分叉改动不兼容,拒绝升级的人会留在旧链上。讲清两者差别,以及比特币现金、以太坊经典这类分叉币是怎么来的。
加密新闻里隔一段时间就会出现「某条链要分叉」。有人说这是升级,有人说你的币会变成两份,还有网站催你「立刻领取分叉币」。这三件事不是一回事。
分叉的本意是:一部分节点开始执行一套新规则。 新规则和旧规则能不能相处,决定了它是一次全体升级,还是一条链从某一块之后变成两条。
先记住谁在执行规则
区块链没有客服可以宣布「从明天起账本改成这样」。每一台运行软件的节点,都在用自己的程序检查:这个新区块合不合法。大家的检查标准一致,账本就还是一本。
所谓分叉,就是有人发布了一版改过规则的软件。从某个区块高度开始,升级了的节点和没升级的节点,可能对「这一块算不算数」得出不同结论。分歧有两种结果,对应两种分叉。
软分叉:新规则更严,旧节点还能认得
软分叉(Soft Fork) 是收紧规则。升级后的节点拒绝一些旧规则本来允许的区块;没升级的节点仍然把新区块当成合法的,因为那些区块并没有违反旧标准,只是用了旧标准里的一个子集。
你可以把它想成小区门禁从「刷卡就能进」改成「刷卡并且必须是业主」。新门禁更严。已经按新规矩进来的人,旧门禁也认,因为他们确实刷了卡。不同意新规矩的人,只要仍想待在大家共同进出的那道门里,实际上就得遵守更严的标准——否则他们生产出的、不符合新规则的区块,会被升级后的多数节点丢掉。
比特币用软分叉做过多次升级,其中两次最常被提到:
- 隔离见证(SegWit,2017):把签名数据从交易主体里拆出去,变相提高一个区块能装的交易数量,同时为后来的扩展留下接口。它没有把比特币分成两条链
- Taproot(2021):改进了脚本的隐私和灵活性,同样是在原链上激活的
软分叉成功的前提,是足够多的算力或验证者愿意执行新规则。你自己不升级钱包,通常仍能收发原来的币;要使用新功能时,才需要新版本软件。比特币上的 SegWit 和 Taproot 也让地址长得不一样,1、3 和 bc1 分别是什么,见比特币地址格式。
硬分叉:旧节点认为新区块非法
硬分叉(Hard Fork) 放宽规则,或改出一条旧软件无法接受的规则。没升级的节点会把新区块判定为非法,直接拒绝。
如果几乎所有人都升级,旧规则失去出块的人,网络还是一条链,只是全体换了软件。以太坊 2022 年从工作量证明转到权益证明,就是一次协调好的硬分叉:节点需要升级才能继续跟上主链,但社区没有分裂成两条长期并存、都有人维护的链。两种共识的差别见 PoW 与 PoS。
分裂发生在另一类情况:有一批人拒绝升级,并且继续按旧规则出块。 从分叉的那一个区块起,历史是同一本账,之后变成两本。两边的币数量、地址在那一刻看起来一样,再往后的交易就各记各的。
两条被讲得最多的分裂:
- 比特币现金(BCH,2017):扩容争论里,一部分参与者不要 SegWit 这条软分叉路线,硬分叉出了区块上限更大的比特币现金。比特币主链仍是原来的 BTC
- 以太坊经典(ETC,2016):The DAO 合约出漏洞,大量 ETH 被转走。以太坊社区选择硬分叉,把相关记录改回到被盗之前。认为「账本不该因为一次事故被改写」的人继续维护旧链,那条链就是以太坊经典
所以硬分叉不等于「项目成功升级」,也不等于「你白捡一种新币」。它可能是全体换软件,也可能是社区分手,留下两个代码和两套资产。
一张表看完差别
| 软分叉 | 硬分叉 | |
|---|---|---|
| 规则怎么变 | 收紧,新区块仍符合旧标准 | 旧软件会认为新区块非法 |
| 不升级的节点 | 通常仍能跟着主链走 | 会停在旧规则上,跟不上新链 |
| 会不会变成两条链 | 设计上不会 | 只有当一批人拒绝升级并继续出块时才会 |
| 比特币上的例子 | SegWit、Taproot | 比特币现金 |
| 以太坊上的例子 | 也有向后兼容的升级 | 2016 年分出以太坊经典;2022 年合并是协调后的换规则 |
| 你要不要马上行动 | 一般不用,除非想用新功能 | 看你的币在钱包还是在交易所,以及这条新链有没有人真的在维护 |
「我的币会变成两份」是有条件的
只有同时满足这几条,分叉那一刻的余额才会在两条链上各有一份:
- 这是一次真的分裂,新旧两条链都还有人出块
- 分叉时,币在你自己控制私钥的地址里。在交易所里的余额,记的是平台的账,平台决定给不给你新链上的那一份
- 你使用的钱包后来支持那条新链。同一套私钥在数学上对应两边的地址,但旧钱包软件不一定会显示新链
比特币和以太坊本身不是这样分出来的。它们从创世就是两条不同的链,不是谁从谁的账本上裂开。减半也不是分叉:比特币的发行节奏一开始就写在协议里,到块高自动执行,不需要再改一次大家互不兼容的规则。
分叉期间真正要防的是别的东西
规则之争本身不会把你的私钥弄丢。亏钱的常见路径是后面这些:
- 来路不明的「领取分叉币」网站。 它要你输入助记词,或者连接钱包签一笔看不懂的授权。分叉币如果真有交易所或你信任的钱包支持,会在那些正式渠道出现,而不是出现在私信和广告里。助记词一旦交出,见常见骗局
- 重放。 两条链如果没有各自的重放保护,你在一条链上签过的转账,有可能被原样拿到另一条链上再广播,导致另一条链上的对应资产也被转走。正规的分裂会处理这件事。分叉刚发生的那几天,不要急着在两条链上转同一笔资产
- 交易所暂停充提。 节点还在升级、账本还可能短暂分叉时,平台会暂停充币,避免记到还没稳定的区块上。这是保护措施,不是币消失了
- 没人维护的「新链」。 谁都可以从某个高度改一条规则并给新币起名字。没有算力、没有验证者、没有持续出块的链,上面那份「余额」没有市场,也没有安全
常见问题
Q:软分叉需要我做什么吗? 多数时候不用。你的币还在原链上,旧钱包一般仍能收发。只有在你想使用新功能时,才需要升级软件。不要因为一条「必须升级否则资产作废」的私信去下载来历不明的钱包。
Q:硬分叉是不是项目方或矿工说了算? 谁都可以发布一套新规则,但链不会因此自动改道。要让新规则成为大家认的那本账,需要节点、矿工或验证者、交易所和用户一起跟着走。跟的人不够,它就只是一条旁支,甚至很快停摆。
Q:分叉币要不要马上领? 先确认这条新链是否真的在出块、你信任的钱包或交易所是否支持,以及有没有重放保护。不满足这些,就没有什么可领的。任何要求助记词的领取页面都不要用。
Q:持有比特币,是不是每次分叉都能多一种币? 只有在你自己掌握私钥、而且那次分裂真的产生了一条还有人维护的新链时,分叉高度上的余额才会在新链上有一份对应记录。交易所持仓能不能到账,由平台决定。绝大多数打着分叉旗号的「新币」不会变成可以安心持有的资产。
Q:Layer 2 算分叉吗? 不算。Layer 2是在原链之外处理交易、再把结果提交回原链的扩容方案。它没有把原链的历史从某一块拆成两本互不承认的账。
小结
软分叉收紧规则,旧节点通常还能留在同一条链上;硬分叉让旧软件拒绝新区块,只有当一部分人拒绝升级并继续出块时,一条链才会变成两条。比特币现金和以太坊经典都是这样留下的。你的币不会因为新闻里出现「分叉」两个字就自动翻倍。币在自己钱包里、新链真的有人维护、渠道不是来历不明的领取网站——这三件同时成立,那份余额才用得上。