Author

Topic: [Unconfirmed TXs] non-profit transaction rescue service (starting at 0.003 BTC) (Read 959 times)

hero member
Activity: 518
Merit: 502

The link to your reference implementation is broken, BTW. If anyone is interested: here's the link to the PR that implements CPFP for bitcoin core.
full member
Activity: 210
Merit: 104
“Create Your Decentralized Life”
if C is to small then I have no easy way to get the tx for them.  they will have to do it themselves.

hero member
Activity: 714
Merit: 500
So, let's say we have address A (1BTC) which sends to address B(merchant: 0.7 BTC) and address C(change 0.2BTC) so it's 0.1 BTC fee.
So, can I change receiving address B? Or can I just say, there is less going to C, so the fee gets higher, but then I also could say there is less going to B, so the merchant gets less money.

You don't replace anything, you just sweep your change address (C) (if you own the change addr) back to itself.  If your the recipient (B) who wants to sweep a transaction they you just sweep the receipt address

Code:
CPFP initiated from Change address (C)
====== Unconfirmed TX ======|== CPFP TX ===
{ A: 1.00 } -> { B: 0.70 }  |
            \> { C: 0.20 } -|-> { C: 0.01 }
               Fee: 0.10        Fee: 0.19

==OR==

CPFP initiated from Recieving address (B)
====== Unconfirmed TX ======|== CPFP TX ===
{ A: 1.00 } -> { B: 0.70 } -|-> { B: 0.51 }
            \> { C: 0.20 }  |
               Fee: 0.10        Fee: 0.19

Examples of this in action:
Unconfirmed TX
CPFP TX

Again... this is a hack... If you want to do it right you generate a new address for each and every transaction always and forever and ever and ever... Wink

I'm handing out free lunch here... guess I wasn't worried too much about overcooking the chicken...
OK, thanks, that makes sense.
But what if, there is no C or C is just too small to give a good additional fee? Is there a workaround for that?
full member
Activity: 210
Merit: 104
“Create Your Decentralized Life”
I have tested this on testnet and looks real good...

Unsigned CPFP txID: 504658563f231e71f79312e96da2cc13e779875ac262269b1b8f9f04e527dfc9
Code:
0100000001c9df27e5049f8f1b9b2662c25a8779e713cca26de91293f7711e233f565846500000000000ffffffff02c0912100000000001976a9148c3279620a52d619ebcd35ae291be00ba70f425788ac605b03000000000017a914948c74ad2e6cbc753812ebba1dc05f0bd088fbfa8700000000

To sign and send using PyBitcoinTools, do the following
Code:
pybtctool signall $rawtx $privkey | pybtctool -s send
Where $rawtx and $privkey are replaced with the appropriate strings.
full member
Activity: 210
Merit: 104
“Create Your Decentralized Life”
interesting service.
for signing raw transactions you can add brainwallet to the list too.
https://brainwallet.org/#tx
I've been playing with PyBitcoinTools and it looks like it might be a good generic transaction signing service.

I've open-sourced (lol) the way I'm making the CPFP transactions... so anyone can make their own if they don't want to make the donation.
Use PyBitcoin to make CPFP transaction with tip to bounty

Anyway... I'll start cutting transactions tomorrow... cheers.
full member
Activity: 210
Merit: 104
“Create Your Decentralized Life”
So, let's say we have address A (1BTC) which sends to address B(merchant: 0.7 BTC) and address C(change 0.2BTC) so it's 0.1 BTC fee.
So, can I change receiving address B? Or can I just say, there is less going to C, so the fee gets higher, but then I also could say there is less going to B, so the merchant gets less money.

You don't replace anything, you just sweep your change address (C) (if you own the change addr) back to itself.  If your the recipient (B) who wants to sweep a transaction they you just sweep the receipt address

Code:
CPFP initiated from Change address (C)
====== Unconfirmed TX ======|== CPFP TX ===
{ A: 1.00 } -> { B: 0.70 }  |
            \> { C: 0.20 } -|-> { C: 0.01 }
               Fee: 0.10        Fee: 0.19

==OR==

CPFP initiated from Recieving address (B)
====== Unconfirmed TX ======|== CPFP TX ===
{ A: 1.00 } -> { B: 0.70 } -|-> { B: 0.51 }
            \> { C: 0.20 }  |
               Fee: 0.10        Fee: 0.19

Examples of this in action:
Unconfirmed TX
CPFP TX

Again... this is a hack... If you want to do it right you generate a new address for each and every transaction always and forever and ever and ever... Wink

I'm handing out free lunch here... guess I wasn't worried too much about overcooking the chicken...
hero member
Activity: 714
Merit: 500
Since I heard about CPFP, I wonder, if it doesn't enable easier double spends.
Does the receiving address have to stay the same? Couldn't that be changed pretty quick, should miners go rough?
Any change address can be used.  It's just the nature of me trying to do this second hand.  Since any change address I generated will be useless to the person trying to get the TX out of hock.  My script recycles address so that I don't have to ask for a list of addresses from people.

Just makes it simpler for me to hand (python) code the TX... no other reason
That didn't answer my question, or maybe I just didn't understand it.

So, let's say we have address A (1BTC) which sends to address B(merchant: 0.7 BTC) and address C(change 0.2BTC) so it's 0.1 BTC fee.
So, can I change receiving address B? Or can I just say, there is less going to C, so the fee gets higher, but then I also could say there is less going to B, so the merchant gets less money.
full member
Activity: 210
Merit: 104
“Create Your Decentralized Life”
interesting service.
for signing raw transactions you can add brainwallet to the list too.
https://brainwallet.org/#tx
Signing appears to be broken in latest branch...
https://github.com/brainwallet/brainwallet.github.io/issues/80
legendary
Activity: 3472
Merit: 10611
interesting service.
for signing raw transactions you can add brainwallet to the list too.
https://brainwallet.org/#tx
full member
Activity: 210
Merit: 104
“Create Your Decentralized Life”
Since I heard about CPFP, I wonder, if it doesn't enable easier double spends.
Does the receiving address have to stay the same? Couldn't that be changed pretty quick, should miners go rough?
Any change address can be used.  It's just the nature of me trying to do this second hand.  Since any change address I generated will be useless to the person trying to get the TX out of hock.  My script recycles address so that I don't have to ask for a list of addresses from people.

Just makes it simpler for me to hand (python) code the TX... no other reason
hero member
Activity: 714
Merit: 500
Since I heard about CPFP, I wonder, if it doesn't enable easier double spends.
Does the receiving address have to stay the same? Couldn't that be changed pretty quick, should miners go rough?
full member
Activity: 210
Merit: 104
“Create Your Decentralized Life”
Service
I'm offering this service to pay for a developers bounty on CPFP (not for my own profit).

Why?
I have seen a number of threads from people complaining about unconfirmed transactions.  There is a way to pull these transactions out of the mempool with a degree of technical skill.  I'm willing to put my effort to work to craft the proper transaction to pull these unconfirmed transactions out of the mempool.  The cost for this is based on the unconfirmed transaction size, but will start at 3 mBTC (0.003 BTC).  All proceeds will be paid into the bounty to have CPFP integrated into one of the major wallets.  Basic process follows.

Disclaimer:
Users of this service will be required to sign the provided transaction.  On some wallet applications this is strait forward, on other wallet applications it is not.  I'll help out however I can, but I will not sign the CPFP transaction, nor will I accept any private keys to do this.  Please keep your private keys private.

Minimum Donation Schedule
____TX_Size____
Jump to:
© 2020, Bitcointalksearch.org