Race Attack vs. Double-Spending Attack: are they same?


Race Attack vs. Double-Spending Attack: are they same?

I know definition of both attack both some times it is called as "race attack" and most of the time called as "double-spending". I guess (maybe) double spending is a subset of a race attack that means race attack includes a groups of different attacks like double-spending, but I'm not sure about that.


Posted 2017-10-01T12:26:00.553

Reputation: 996

related: https://bitcoin.stackexchange.com/q/24109/5406

– Murch – 2017-10-01T15:22:11.620



It's the other way around. The race attack is a specific type of doublespend attempt. It requires the recipient to accept unconfirmed transactions as payment.

The attacker supplies an unconfirmed transaction to the victim that pays the victim. Meanwhile, they broadcast a conflicting transaction to the network. As the merchant saw their own transaction first, they are under the illusion of getting paid, while the rest of the network predominantly saw the doublespend first and thus it's likely the merchant will in fact not get paid.

This attack is much easier to pull off, when the attacker has a direct connection to the victim's node, and perhaps deposits the conflicting transaction directly to miners.

It is therefore recommended to turn off incoming connections to nodes used to receive payments, so that your node will seek their own peers, and not to allow the payer to directly submit the payment to the payee.

The Sybil attack takes this information asymmetry even further as the attacker isolates the victim from the network and restricts their access to information while doublespending them. Other doublespend attacks rely on having premined a transaction to yourself in a block kept secret before paying a victim with a conflicting transaction (Finney attack), or on having overwhelming hashrate (majority attack).


Posted 2017-10-01T12:26:00.553

Reputation: 51 063