Bitcoin Forum

Bitcoin => Bitcoin Technical Support => Topic started by: miguelmorales85 on January 26, 2018, 08:47:15 PM



Title: Double Spending Issues Because of Mempool's reducing
Post by: miguelmorales85 on January 26, 2018, 08:47:15 PM
Hello Bitcoin gurus. I always come here to find answers to my problems after some unsuccessful search in google.

Now that the mempool is being crushed. I have problem with several transactions.

Case #1:
I needed to send 0.625927 BTC to wallet 3FcJ5qSBExencX5eowGJwrPBnfKX41FrXK (a ledger wallet generated address)
First I sent the BTC from my GreenAddress wallet thinking being a segwit address would be quicker and cheaper, it wasnt faster enough. That txid is 4821084d640e48ee247160620aedbe9b5605621486270bd570032c94368d6966
It was stuck so I believed it will be abadoned in time.

Then I sent the other 0.625927 BTC from Copay, my former trust wallet. I used a higher fee. The txid is f11436dd3a7de43d09e362bf3fbb3ea56b14c14c81007831e96d9588bb9a84c1
This TX was successful and the BTC were transfered on 01/01/18

My surprise is that when the mempool gets down the first tx is executed too. I asked the owner of the wallet 3FcJ5qSBExencX5eowGJwrPBnfKX41FrXK if he received another payment and he told me checked on his ledger wallet GUI and he received it but it was tagged as double spending and then the print screen he sent me only show one TX.

I checked a block explorer and you can see the two txs. What is happening how can he confirm the other tx ? he is currently choosing in the ledger the Segwit chain.

Case #2:
Im trying to send some BTC from BitcoinCore segwit address to another segwit address in GreenAddress.
I tried several times and because of mempool full I had to abandon transaction.
Turns out abandon a tx is not cancel it, from all of the abandoned the one with higher fee is the one that got confirmed. NOT the first one in being into a block. Can someone explain me that?
Could I receive BTC from a wallet and check +6 confirmations and then lose those BTC because the same BTC were sent to another wallet with a high fee but "abandoned"
The issue is that I checked the receiver wallet and the TX in a block explorer and I can see they are there but in GreenAddress the TX is tagged as double spend and not added to my total wallet funds. What can I do ?


I'll go to translate bitcoin core 0.16.x while I get some replies, thanks in advance...


Title: Re: Double Spending Issues Because of Mempool's reducing
Post by: LoyceV on January 26, 2018, 10:09:07 PM
It was stuck so I believed it will be abadoned in time.
This is a bad assumption: once broadcasted, someone can always broadcast it again. That means it can get confirmed later, unless you make the transaction invalid by double spending the input to another address.

Quote
I asked the owner of the wallet 3FcJ5qSBExencX5eowGJwrPBnfKX41FrXK if he received another payment and he told me checked on his ledger wallet GUI and he received it but it was tagged as double spending and then the print screen he sent me only show one TX.

I checked a block explorer and you can see the two txs. What is happening how can he confirm the other tx ?
I have no experience with Ledger, but the transaction is confirmed and he received his payment twice (here (https://blockchain.info/tx/f11436dd3a7de43d09e362bf3fbb3ea56b14c14c81007831e96d9588bb9a84c1) and here (https://blockchain.info/tx/4821084d640e48ee247160620aedbe9b5605621486270bd570032c94368d6966)).

Quote
Could I receive BTC from a wallet and check +6 confirmations and then lose those BTC because the same BTC were sent to another wallet with a high fee but "abandoned"
No. For this to happen would mean miners have to forget the last 6 blocks. Think about 51% attacks for this scenario to happen.


Title: Re: Double Spending Issues Because of Mempool's reducing
Post by: Lauda on January 26, 2018, 10:09:48 PM
My surprise is that when the mempool gets down the first tx is executed too. I asked the owner of the wallet 3FcJ5qSBExencX5eowGJwrPBnfKX41FrXK if he received another payment and he told me checked on his ledger wallet GUI and he received it but it was tagged as double spending and then the print screen he sent me only show one TX.
It can't be a double spend; read these two words again. Double spend. To double spend something, you have to spend the same thing twice. The two transactions are literally spending from different sources:
1st one from 3P83sWGjujgjKN2AN73Q6n52UUg9ecQyvd;
2nd one from 19mbyFd8ehSs5AyGQF1hZnS4fj6i1kRgDc.


What is happening how can he confirm the other tx ?
Both transactions have been confirmed and he has *received* the funds. You can see his balance here: https://blockchain.info/address/3FcJ5qSBExencX5eowGJwrPBnfKX41FrXK.

Could I receive BTC from a wallet and check +6 confirmations and then lose those BTC because the same BTC were sent to another wallet with a high fee but "abandoned"
Abandon transaction is a local function. It does not, and can not, remove the transaction from the network.