Author

Topic: How can I broadcast a 'Replace-by-Fee' double-spend transaction? (Read 2028 times)

legendary
Activity: 1260
Merit: 1019
The way I see it, any attempt to change an already broadcast transaction is a scam attempt,
the network should reject any double spend attempt
What do you mean by "network should reject"? Who is responsible for rejecting
on every node in the world? You? Me? Satoshi?

Quote
even to the same address with a different
fee as it is changing (most likely deleting, replacing or ignoring) an already broadcast tranzsaction,
it is against the concept of bitcoin
It is not against the concept. And there is no such thing as "concept". There are consenus rules.
And the consensus rules do not have a rule for rejecting unconfirmed conflicting transactions.
sr. member
Activity: 1188
Merit: 260
Tryig to survive in this harsh world
Say I have manually constructed a 'replace-by-fee' tx. How do I broadcast it? None of the push-tx sites seem to be accepting it. I am not running a full node, so pushing locally is not an option.

EDIT: I just realized I have to mark the original transaction as replacable, which was not done. So I guess I have to find some miner willing to take my double-spend TX.

Aren't there any mining services offering this? It will be a good business model.

"Aren't there any mining services offering this? It will be a good business model. "

Think about it again, what you are asking for is a scam service to double spend if it was to be made it will be and should be rejected by the network.


This is not a scam service. By replace-by-fee, it is assumed that a double spend must be sending to the same addresses, with a higher fee (possible by reducing amount to some other address in the outputs). Now how do we check that the amount deducted is actually from the change address and not the "real" receiver?

The tx must have a special form, the change address must be from the set of inputs. That way we can check that indeed the amount was reduced from change and not from some other address.

Rather than being a scam, this is a service that can help tx confirm faster. So its completely the opposite.

Of course, miners could (and should be allowed to) not only accept replace-by-fee but any double spend. This is the whole idea of mining. If we go by your logic, and everyone is going to be "good" and not allow "scams" to happen, then we don't even need Proof-of-Work.

As per the protocol, it does not matter what tx someone has in their mempool. What actually matters is which tx is finally mined and included in a block. Relying on zero-confirmations is not a very smart thing to do.  

Also I'm curious to see how such a service will be "rejected by the network"? (what does this mean?)

The way I see it, any attempt to change an already broadcast transaction is a scam attempt, the network should reject any double spend attempt even to the same address with a different fee as it is changing (most likely deleting, replacing or ignoring) an already broadcast tranzsaction, it is against the concept of bitcoin of no changing or altering broadcast transactions even if still not confirmed.
legendary
Activity: 1001
Merit: 1003
Say I have manually constructed a 'replace-by-fee' tx. How do I broadcast it? None of the push-tx sites seem to be accepting it. I am not running a full node, so pushing locally is not an option.

EDIT: I just realized I have to mark the original transaction as replacable, which was not done. So I guess I have to find some miner willing to take my double-spend TX.

Aren't there any mining services offering this? It will be a good business model.

"Aren't there any mining services offering this? It will be a good business model. "

Think about it again, what you are asking for is a scam service to double spend if it was to be made it will be and should be rejected by the network.


This is not a scam service. By replace-by-fee, it is assumed that a double spend must be sending to the same addresses, with a higher fee (possible by reducing amount to some other address in the outputs). Now how do we check that the amount deducted is actually from the change address and not the "real" receiver?

The tx must have a special form, the change address must be from the set of inputs. That way we can check that indeed the amount was reduced from change and not from some other address.

Rather than being a scam, this is a service that can help tx confirm faster. So its completely the opposite.

Of course, miners could (and should be allowed to) not only accept replace-by-fee but any double spend. This is the whole idea of mining. If we go by your logic, and everyone is going to be "good" and not allow "scams" to happen, then we don't even need Proof-of-Work.

As per the protocol, it does not matter what tx someone has in their mempool. What actually matters is which tx is finally mined and included in a block. Relying on zero-confirmations is not a very smart thing to do.  

Also I'm curious to see how such a service will be "rejected by the network"? (what does this mean?)
sr. member
Activity: 1188
Merit: 260
Tryig to survive in this harsh world
Say I have manually constructed a 'replace-by-fee' tx. How do I broadcast it? None of the push-tx sites seem to be accepting it. I am not running a full node, so pushing locally is not an option.

EDIT: I just realized I have to mark the original transaction as replacable, which was not done. So I guess I have to find some miner willing to take my double-spend TX.

Aren't there any mining services offering this? It will be a good business model.

"Aren't there any mining services offering this? It will be a good business model. "

Think about it again, what you are asking for is a scam service to double spend if it was to be made it will be and should be rejected by the network.
legendary
Activity: 3388
Merit: 4615
- snip -
As far as I know, the F2Pool engine allows to move the existing transaction in mempool queue to the beginning (or add the transaction with the highest priority is transaction is unknown to a pool)
The engine currently does not allow to replace transaction with conflicting one.
- snip -

You may be right, but in this case it wouldn't hurt to check with macbook-air or Quickseller and see.
legendary
Activity: 1260
Merit: 1019
In particular there are two forum members, macbook-air and Quickseller, that both have access to add transactions directly to blocks solved by one of the currently largest pools (F2Pool). Send either of them a message and see what sort of tip they'd require to include your transaction in their next block.
As far as I know, the F2Pool engine allows to move the existing transaction in mempool queue to the beginning (or add the transaction with the highest priority if transaction is unknown to a pool)
The engine currently does not allow to replace transaction with conflicting one.

And this way is too hard for everyday/anyone use  Cheesy
legendary
Activity: 3388
Merit: 4615
- snip -
I guess I have to find some miner willing to take my double-spend TX.

Aren't there any mining services offering this? It will be a good business model.

If you're willing to send a big enough tip, there are definitely mining pool operators here at bitcointalk.org that will mine it for you.

In particular there are two forum members, macbook-air and Quickseller, that both have access to add transactions directly to blocks solved by one of the currently largest pools (F2Pool). Send either of them a message and see what sort of tip they'd require to include your transaction in their next block.
legendary
Activity: 1260
Merit: 1019
None of the push-tx sites seem to be accepting it.
Try https://webbtc.com/relay_tx
But the result depends on the peers of webbtc

I am not running a full node, so pushing locally is not an option.
I have standalone program for this task, which connects to a number of nodes and pushes the tx
legendary
Activity: 1001
Merit: 1003
Say I have manually constructed a 'replace-by-fee' tx. How do I broadcast it? None of the push-tx sites seem to be accepting it. I am not running a full node, so pushing locally is not an option.

EDIT: I just realized I have to mark the original transaction as replacable, which was not done. So I guess I have to find some miner willing to take my double-spend TX.

Aren't there any mining services offering this? It will be a good business model.
Jump to: