RBF和CPFP该怎么选
如果交易还没确认,你是发送方且钱包支持RBF——选RBF,因为主动权在你手上,操作简单。如果交易已经卡住,你是接收方,或者发送方没有启用RBF——选CPFP,这是你唯一能主动加速的方式。
RBF和CPFP到底有什么区别
RBF(Replace-By-Fee)是发送方用同一笔钱重新发一笔手续费更高的交易,覆盖掉原来那笔卡住的交易。前提是原始交易发送时标记了"可替换"(Opt-in RBF)。
CPFP(Child Pays For Parent)是接收方用收到的这笔还没确认的币,发起一笔新的转账(给自己或给别人),给这第二笔交易设置很高的手续费。矿工为了拿到第二笔的高手续费,会同时把两笔都打包确认。
场景对应操作:
情况A:你是发送方,交易还没确认,原始交易启用了RBF
用RBF。打开钱包,找到那笔卡住的交易,点击"加速"或"Speed Up"按钮,钱包会自动帮你重新广播一笔更高费率的交易。如果钱包没有这个按钮,也可以在发送历史里找到该交易,选择"替换"或"Replace",手动设置新的费率后重新广播。
大部分主流钱包(Ledger、Xverse、TokenPocket等)默认支持Opt-in RBF。
做到什么程度算完成: 新交易广播后,在区块浏览器或钱包内看到替换交易的费率已更新,等待确认即可。
情况B:你是接收方,发送方的交易卡住了(且未启用RBF)
用CPFP。用你的钱包(比如Ledger配合Electrum)找到那笔待确认的入账,右键选择"Child pays for parent"(CPFP),系统会自动构建一笔使用该未确认UTXO的新交易,设置一个较高的费率后广播。
做到什么程度算完成: 子交易广播后,能看到父交易和子交易在mempool中关联,确认状态开始向前推进。
情况C:你是发送方,但原始交易没有启用RBF
RBF无法使用。如果钱包里还有另一笔未使用的UTXO,可以尝试用CPFP——但前提是你要把新交易关联到卡住的交易。如果钱包不支持手动构建这种关系,且没有"加速"入口,那你只能等交易超时后自动从mempool中被丢弃,或者联系矿池加速器服务。
怎么选——两条关键标准
标准1:谁有主动权?
发送方有主动权 → RBF(自己改费率)
接收方有主动权 → CPFP(只能接收方操作)
标准2:隐私考虑 RBF会让找零地址暴露得比CPFP更明显——替换交易里哪个输出金额变少了,那个大概率就是找零。CPFP不暴露这种信息,因为子交易花费的输出不一定是找零,也可以是接收方在花自己收到的钱。
如果这笔交易涉及隐私敏感操作,CPFP比RBF更优,即使CPFP总成本可能更高。
操作确认方式
RBF:替换交易广播后,在钱包的交易列表里确认原交易已消失或被标记为"已替换"。在区块浏览器输入交易哈希,看到的费率为新设置的值。
CPFP:子交易广播后,在区块浏览器(如mempool.space)输入父交易的哈希,可以看到它下面关联了一笔子交易,两者费率加总后会显示总费率。
常见失败原因
失败原因1:RBF替换交易的手续费增幅不够大。 新交易的手续费必须比原交易高,且增幅至少等于网络最低中继费率(minimum relay fee),否则节点会拒绝转发替换交易。
失败原因2:CPFP子交易费率设置过低。 矿工会计算"父+子"两笔交易的总手续费除以总字节数,得出一个加权平均费率。如果平均费率仍然低于当前mempool的最低费率,两笔都会继续卡住。
风险提醒
RBF可能让收款人困惑:收款人会在钱包里看到待处理交易消失又出现,因为交易被替换了。
CPFP成本可能高于RBF:CPFP需要额外支付一笔交易的矿工费,而RBF只是替换原有交易,总成本通常更低。
在铭文交易场景中,RBF可能被用于"狙击":攻击者拿到公开的签名数据后用RBF替换交易,导致原买家交易作废。
确认完成的方式
交易确认后,在区块浏览器查看确认状态。比特币区块平均每10分钟出块一次,加速后通常需要10到60分钟完成确认。
下一步: 如果你经常需要手动加速交易,建议以后发送交易时直接设置一个略高于当前网络平均费率的水平(在mempool.space可以查看实时建议费率),避免后续花额外成本去补救。
