Bitcoin nodes have two rules that limit the use of CPFP:
- The number of children (including the transaction itself) cannot exceed 25.
- The total size of a transaction and all its children cannot exceed 100,000 vbytes.
however CPFP curve out The previously mentioned rule is that numbers can be exceeded. CPFP curve out Even if you think you’re over the 25 child count and 100,000 vbytes limit, you’re saying that up to 1000 vbytes of additional transactions can be “added” to an unconfirmed transaction (which has no unconfirmed parent).
I’m wondering how to check the CPFP curve out rule. In other words, how does a Bitcoin node prevent a given rule from being used more than once?
For example, assume that one of your transactions with 3 outputs has already produced 100,000 vbytes with a child count of 25. Why does adding a new transaction (200vbytes) directly to one of the two remaining outputs prevent me from adding another transaction (up to 800 bytes in size) to the third remaining output?
Could there be some indicator on the CPFP curve output to tell me if it is being used or not (though I don’t know how it could be implemented since I don’t know when the CPFC curve output occurs)? Since CPFP curve out rules cannot be used on more than one output, is it possible to activate a given rule only when a transaction has exactly 2 outputs? Or is a third method used?