交易固定 - Transaction pinning

交易固定是一种方法,通过滥用节点防御攻击的措施,使费用增加变得极为昂贵,这些攻击可能会浪费带宽、CPU 和内存。这可能使多方合约协议(如闪电网络)的费用管理变得更加困难。

例如比特币核心这样的节点允许交易被替换(RBF)或与更高费用的子交易打包(CPFP)时,会对这些替换施加限制,以防止各种拒绝服务攻击。然而,当两个或多个人都有能力提高交易费用时,这就使其中一个人能够在限制之一上固定他们的交易版本,并阻止其他参与者使用费用增加。

一些可以被滥用以实现交易固定的限制包括:

  • BIP125 RBF 规则 #3 要求替换交易支付比被替换交易及其所有子交易总费用更高的绝对费用。这可以让攻击者附加一个大型且低费率的交易到他们想要固定的交易上,迫使任何费用增加支付大型子交易的替换费用。例如,根据 2019 年比特币核心的默认设置,攻击者可以要求诚实参与者支付至少 0.001 BTC 来增加一笔交易的费用(在某些情况下甚至更多)。

  • 最大包大小限制阻止 CPFP 被使用,如果一笔交易在内存池中有超过 101,000 vbytes 的子交易或其他后代,或者有超过 25 个后代或祖先。这可以让攻击者通过创建最大数量的子交易来完全阻止费用增加。如果攻击者因其他原因(例如他们运营向用户支付的服务)必须创建这些交易,这种攻击可能是免费的。对于一些双方合约协议(如当前的闪电网络),这通过 CPFP carve out 得到缓解。

Optech 新闻简报和网站提及

2023

2022

2021

2020

2019

2018

参见

Last updated