lightning-dev

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

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

Original Postby David A. Harding

Posted on: October 27, 2019 22:54 UTC

In an email thread, Johan Torås Halseth proposed a rule for the Bitcoin mempool that the last transaction added to a package of dependent transactions must have no more than one unconfirmed parent.

However, Bitcoin Core developer Dave pointed out that this could lead to a free relay attack, where an attacker creates a low feerate transaction and sends many child transactions with slightly higher fees until the mempool is full. Then, the attacker creates one small transaction with a slightly higher fee and watches the low feerate transaction and its children get evicted, causing the fees in the mempool to drop dramatically. To mitigate this problem and optimize the mempool to maximize miner profit, Bitcoin Core has implemented various measures which are detailed in a document uploaded on their developer wiki. The document also provides insights into the current state of the mempool and ways to improve it.