CPFP Carve-Out for Fee-Prediction Issues in Contracting Applications (eg Lightning)



Summary:

The recently released RC for bitcoind 0.19 includes a carve-out rule in an attempt to pave the way for more robust CPFP of on-chain contracts (Lightning commitment transactions). The special case rule should have been relaxed to avoid the need for adding a 1 CSV to all outputs, but instead, the last transaction which is added to a package of dependent transactions in the mempool must have no more than one unconfirmed parent. This would allow adding a large transaction to each output of the unconfirmed parent, but it may allow an attacker to exceed the MAX_PACKAGE_VIRTUAL_SIZE limit in some cases. An attacker can spam 100k of free tx, but it's simple. In conclusion, the Lightning close algorithm would be feasible to implement by allowing a simplified RBF where you can replace if feerate is higher, new tx is in the first 4Msipa of mempool, and old tx isn't.


Updated on: 2023-06-13T15:48:22.274676+00:00