CPFP (Child Pays for Parent) Bounty donation address3FEUByMeaxrNmBCVYjvsnhyAjiUdat5i7MNote, this is a multisig address, I can't spend the funds.
I'm starting a bounty campaign to try to raise funds to get wallets that can retrieve unconfirmed transactions from the mempool. The current spam attach is still causing a number of users to have transactions drown in the mempool. Setting proper transaction fees will unquestionably fix any future transactions that they make, but general users lack the ability to do anything about the transactions they have already sent.
How CPFP (Child Pays For Parent's fee) worksI tried to explain it
here before I knew what it was.
Transactions in bitcoin are actually chained together. Each transaction has an input and output. New input links to old output. So lets call the transaction you want to rescue the "parent". To employ a CPFP rescue attempt, we create a new transaction ("child") that spends (links to) the parents outputs. This new child transaction will be coded with generous fees. When a CPFP miner like Eligius sees the pair of transactions, they are scooped up and included in the block. So adding the high fee "child" transaction pulls the "parent" out of the mempool.
What do Wallets Need to Do?Most wallet software is in a perfect position to see what unconfirmed transactions in the mempool are related to the user. It would be technically straight forward for the wallet to alert users that their unconfirmed transactions are being passed over. More over, it they could provide a "Rescue Transaction" or "Deploy Lifegarud" button. In either case, the wallet would examine the drowning transaction (incoming or outgoing) and chain a new high-fee transaction to it.
Does it really work?Yes, I pulled a transaction out of the mempool after 188 hours (8 days). The whole history is viewable on
TradeBlock since they are less agressive about purging their mempool.
Here is my original parent transaction that I sent:
Parent: 358762a9f2fcbd141eae29a8df82a822930428605f4a033e53baaaa377d3df4aHere is the "Lifegaurd" I sent in directly to Eligius:
Child: 8ef3eec72db231feedc1d5e1e5b24f36e290c94344f86822202378320f8380d9What miners process CPFP?Currently only Eligius processes these transactions. They make up about 5% of the current miners pool. They usually win about 5-6 blocks a day, so it won't be immediate, but if someone has been waiting 12 hours, it will sure be a relief.
Is CPFP the only option?No, there is RBF (Replace by Fee) that does the same thing, but as a kind of sanctioned double-spend. There is already a
$1000 bounty out for the first developer to get that one to stick.
Volunteer Lifeguard ServiceIf you just need your transaction out of hock and don't care about the long view... I have set up a
non-profit transaction rescue service that will also serve to fund the campain.