ExpressVPN seller (OP)
Newbie
Offline
Activity: 19
Merit: 1
|
|
March 01, 2020, 06:46:38 PM |
|
I would like to know if it is possible, if so, how, if you can double spend an unconfirmed Bitcoin transaction if you have not marked the transaction with RBF. I have tried it several times now, but with both Bitcoin Core and Bitcoin Armory I get the error message that the new Bitcoin transaction conflicts with the unconfirmed transaction and therefore I fail with double spend. I would be very happy if someone could help me.
|
|
|
|
|
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
|
Rickorick
Jr. Member
Offline
Activity: 107
Merit: 8
|
|
March 01, 2020, 07:31:18 PM |
|
You have to create a raw transaction with a higher fee and submit to the mempool.
|
|
|
|
ExpressVPN seller (OP)
Newbie
Offline
Activity: 19
Merit: 1
|
|
March 01, 2020, 08:08:33 PM |
|
Are you sure that this does not lead to transaction conflicts with the unconfirmed transaction, but also with an unconfirmed transaction that is not marked with RBF?
|
|
|
|
o_e_l_e_o
In memoriam
Legendary
Offline
Activity: 2268
Merit: 18507
|
|
March 01, 2020, 08:38:20 PM |
|
Why do you want to do this? I have tried it several times now, but with both Bitcoin Core and Bitcoin Armory I get the error message that the new Bitcoin transaction conflicts with the unconfirmed transaction and therefore I fail with double spend. It sounds like you are referring specifically to a race attack. You won't be able to broadcast a new transaction via the client which broadcast your previous transaction, as the node or server will already have your previous unconfirmed transaction in its mempool, and so your new transaction will be flagged as a conflict and rejected. You will need to sign the new transaction, export it, and broadcast it from somewhere which hasn't yet seen your previous transaction, such as a different wallet connected to a different node or an online transaction broadcaster such as https://blockchair.com/broadcast. Having said all that, the vast majority of nodes will only accept the transaction which they see first (which will be your original transaction), and most block explorers will flag it up as an attempted double spend. If you are trying to rip someone off with this, you won't be successful. If it was as simple as broadcasting two different transactions from two different places as I stated above, then everyone would be doing it and bitcoin would be useless.
|
|
|
|
ExpressVPN seller (OP)
Newbie
Offline
Activity: 19
Merit: 1
|
|
March 01, 2020, 08:59:27 PM |
|
Thank you for the informations. In my opinion, Bitcoin would not be useless just because you can double spend unconfirmed transactions, that's why nearly anyone wait for confirmations. To understand this correctly, it is actually almost impossible to double spend an unconfirmed transaction that has not been marked with RBF since the nodes always accept the transaction that they saw first. I always thought the nodes preferred the transactions with the highest fees. You have to create a raw transaction with a higher fee and submit to the mempool.
So the answer is wrong?
|
|
|
|
squatter
Legendary
Offline
Activity: 1666
Merit: 1196
STOP SNITCHIN'
|
|
March 01, 2020, 09:06:07 PM |
|
Having said all that, the vast majority of nodes will only accept the transaction which they see first (which will be your original transaction) To have any chance of success, the second transaction would need to be sent directly to mining nodes. I'm not sure how many mining pools still have policies that allow spends like this. It was once possible with Eligius. If it was as simple as broadcasting two different transactions from two different places as I stated above, then everyone would be doing it and bitcoin would be useless.
We should just consider unconfirmed transactions as unpaid. That's how most businesses deal with the issue.
|
|
|
|
ExpressVPN seller (OP)
Newbie
Offline
Activity: 19
Merit: 1
|
|
March 01, 2020, 09:28:35 PM |
|
Thank you for this information, if you know a mining pool, I would be very interested to try such a double spend.
|
|
|
|
BitMaxz
Legendary
Offline
Activity: 3234
Merit: 2942
Block halving is coming.
|
|
March 01, 2020, 10:42:03 PM |
|
Thank you for this information, if you know a mining pool, I would be very interested to try such a double spend. If this is not for scamming purposes this video below will help how to perform double-spend and how double-spend works. - https://www.youtube.com/watch?v=ycq7O48aPvQActually the video is made to save your stuck transaction but you can get idea how it works.
|
|
|
|
nc50lc
Legendary
Offline
Activity: 2394
Merit: 5523
Self-proclaimed Genius
|
|
March 02, 2020, 02:58:13 AM |
|
You can wipe your transaction history by using -zapwallettxes as an added start parameter or in the config file and clear your mempool by manually deleting 'mempool.dat'. The order is: shutdown core - delete mempool - start with zapwallettxes. But that wont stop your node from receiving your 1st transaction back to your mempool. If you're fast enough, try to broadcast the new raw transaction in the console. But again, it's up to your peers if they will accept the new conflicting non-RBF transaction ( 99% won't). (Don't do this if your node is pruned)If this is not for scamming purposes this video below will help how to perform double-spend and how double-spend works. - https://www.youtube.com/watch?v=ycq7O48aPvQ
Too bad, localbitcoins removed their blockexplorer's broadcast function. I can't believe they accepted non-RBF double-spends and can successfully propagate it in 2015.
|
. .HUGE. | | | | | | █▀▀▀▀ █ █ █ █ █ █ █ █ █ █ █ █▄▄▄▄ | ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ . CASINO & SPORTSBOOK ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ | ▀▀▀▀█ █ █ █ █ █ █ █ █ █ █ █ ▄▄▄▄█ | | |
|
|
|
nc50lc
Legendary
Offline
Activity: 2394
Merit: 5523
Self-proclaimed Genius
|
|
March 02, 2020, 04:37:24 AM |
|
The difference is, OP's transaction wasn't flagged as " replaceable", so he can't use that method. IDK what his intention is but it looks like he's trying to find a workaround to something that requires a non-RBF transaction.
|
. .HUGE. | | | | | | █▀▀▀▀ █ █ █ █ █ █ █ █ █ █ █ █▄▄▄▄ | ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ . CASINO & SPORTSBOOK ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ | ▀▀▀▀█ █ █ █ █ █ █ █ █ █ █ █ ▄▄▄▄█ | | |
|
|
|
pooya87
Legendary
Offline
Activity: 3430
Merit: 10494
|
|
March 02, 2020, 06:47:21 AM |
|
If you're the owner of pool, you can perform Finney attack (include conflicting/double-spend transaction on mined block). The higher the hashrate percentage you have, the higher probability the attack will success. And if it success, you and your pool reputation would be going downhill instantly.
your description sounds like an invalid block (include conflicting/double-spend transaction on mined block) since you can't really do that. the Finney Attack is a pretty simple double spend attack where there are 2 transactions spending same output, one is broadcast to the network (is in mempool) and the other is included in the block by the miner but the block is not broadcast until the receiver accepts the unconfirmed transaction then the block is broadcast right away which makes the tx in mempool invalid. i said pretty simple because all the merchant has to do is to wait for at least 1 confirmation.
|
. .BLACKJACK ♠ FUN. | | | ███▄██████ ██████████████▀ ████████████ █████████████████ ████████████████▄▄ ░█████████████▀░▀▀ ██████████████████ ░██████████████ █████████████████▄ ░██████████████▀ ████████████ ███████████████░██ ██████████ | | CRYPTO CASINO & SPORTS BETTING | | │ | | │ | ▄▄███████▄▄ ▄███████████████▄ ███████████████████ █████████████████████ ███████████████████████ █████████████████████████ █████████████████████████ █████████████████████████ ███████████████████████ █████████████████████ ███████████████████ ▀███████████████▀ ███████████████████ | | .
|
|
|
|
nc50lc
Legendary
Offline
Activity: 2394
Merit: 5523
Self-proclaimed Genius
|
|
March 02, 2020, 01:34:12 PM |
|
When you mention "he can't use that method", do you mean Electrum doesn't allow to perform the steps in guide if it's non-RBF or because race condition?
I mean the actual written steps. He can use Electum to create the RAW TXs. Broadcasting the low fee tx using Electrum and quickly ( seconds-delay) broadcast the second to other blockexplorers will work but that wont work for a well propagated unconfirmed non-RBF transaction, like if it was sent 1-5+ minutes ago.
|
. .HUGE. | | | | | | █▀▀▀▀ █ █ █ █ █ █ █ █ █ █ █ █▄▄▄▄ | ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ . CASINO & SPORTSBOOK ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ | ▀▀▀▀█ █ █ █ █ █ █ █ █ █ █ █ ▄▄▄▄█ | | |
|
|
|
ExpressVPN seller (OP)
Newbie
Offline
Activity: 19
Merit: 1
|
|
March 03, 2020, 01:37:25 PM |
|
Thank you for all the answers, you answered my questions.
|
|
|
|
ExpressVPN seller (OP)
Newbie
Offline
Activity: 19
Merit: 1
|
|
March 25, 2020, 03:25:44 PM |
|
Are there things that can be done to make it always work because, in my experience, it only works sometimes? Is there a specific block explorer that publishes the transaction faster or maybe changes in the transaction that the transaction with lower fees cannot be accepted?
How much higher must the second transaction be with the fees?
I would be very happy to get answers as I find this very interesting.
|
|
|
|
o_e_l_e_o
In memoriam
Legendary
Offline
Activity: 2268
Merit: 18507
|
Are there things that can be done to make it always work No. There will always be a high risk that it will fail, otherwise people would be double spending all the time and everyone would be waiting for multiple confirmations, instead of some services accepting zero confirmation transactions. Is there a specific block explorer that publishes the transaction faster It's not a case of publishing it faster, but rather, the speed at which it propagates through the network. You need the first transaction to be broadcast to nodes which are used by the intended recipient/victim or the block explorer of their choice, and you need the second transaction to be broadcast to nodes used by miners, but not those nodes which have already seen the first transaction. You could theoretically work out optimum entry points through significant trial and error, but doing so would be costly, time consuming, wouldn't guarantee anything, and could change at any time as nodes come online and drop offline. maybe changes in the transaction that the transaction with lower fees cannot be accepted? No. Once a transaction has been signed and broadcast, it can't be changed to become invalid (excluding transaction malleability if the transaction is built upon a previous unconfirmed transaction, but that doesn't apply here).
|
|
|
|
bob123
Legendary
Offline
Activity: 1624
Merit: 2481
|
|
March 26, 2020, 03:37:17 PM |
|
First, if you try to double spend transaction to scam others.. you won't succeed. If you have to ask such basic questions, you are definitely not able to achieve that.
But if it really is for educational purpose.. what you actually want to do in such a scenario is to broadcast the lower fee (to be replaced) transaction at the same time as your higher fee (replacing) transaction. However, you would use several nodes spread across the world for that. I.e. this means that you would use a single node to broadcast your low fee tx and multiple other nodes (which are not connected with each other) to broadcast the replacing transaction. With that setup, you would be able to get more nodes to have your 2nd (replacing) transaction in their mempool. Then it is mostly luck which miner does find a block. Either one with your first or with your second transaction.
That's the race attack shortly described. There are a few more ways to double spend, but that is probably one of the easiest.
|
|
|
|
ExpressVPN seller (OP)
Newbie
Offline
Activity: 19
Merit: 1
|
|
March 27, 2020, 04:16:26 PM |
|
Thank you for the answer, you spoke of other options, which would they be?
|
|
|
|
|
|