Qu'est-ce qu'un Race Attack ?
Un Race Attack se produit lorsqu'une personne diffuse deux transactions cryptographiques contradictoires à presque la même heure, en espérant que la mauvaise soit acceptée en premier. C'est une technique classique contre les commerçants qui acceptent des paiements sans confirmation. Imaginez envoyer deux chèques du même compte et parier que le guichetier traitera celui que vous préférez.
« Race Attack needs Replace by Fee. » Pas tout à fait. Bien que RBF soit lié, un Race Attack peut survenir sans règles explicites de remplacement, ce qui le distingue d'une attaque de remplacement de transaction.
Comment fonctionne un Race Attack
Imaginez quelqu'un payant un magasin en crypto au comptoir. Il veut son café et garder ses pièces. Voici le scénario.
- Étape 1 : L'attaquant crée deux transactions qui dépensent les mêmes pièces, mais avec des destinataires différents.
- Étape 2 : Il en envoie une au commerçant et envoie en même temps l'autre vers différents nœuds en espérant qu'elle se propage plus vite.
- Étape 3 : Le commerçant voit la première arriver, la considère comme payée et remet la marchandise.
- Étape 4 : Les mineurs confirment l'une des transactions en conflit. L'autre est rejetée par le réseau dès qu'un bloc est trouvé.
- Étape 5 : Si celle confirmée est la version choisie par l'attaquant, le commerçant ne reçoit rien et en tire une leçon.
Oui, c'est aussi simple et oui, le timing fait la différence.
Pourquoi le Race Attack compte
Et si quelqu'un tente cela ?
- Avantage : Connaître le Race Attack vous permet de définir des règles de paiement sensées, pour ne pas remettre de marchandises contre une promesse qui ne sera pas honorée.
- Perspective : C'est une variante d'une attaque de double dépense, mais elle ne nécessite pas de matériel sophistiqué ni de gros moyens.
- Pertinence : Vous verrez ce sujet au niveau des portefeuilles pour points de vente, du commerce électronique et de tout service qui envisage des paiements sans confirmation.
Si vous vendez un article qui est expédié ou qui a une valeur réelle, attendez une ou plusieurs confirmations de transaction avant de livrer. Pour les petits achats en personne, fixez des limites et utilisez des portefeuilles qui signalent les conflits.
Caractéristiques clés du Race Attack
Ce qui distingue un Race Attack :
- Instantané : Il se produit avant la première confirmation de bloc.
- En conflit : Deux transactions dépensent les mêmes entrées, une seule peut être confirmée.
- Vitesse : La propagation et le choix des mineurs déterminent le gagnant, pas le matériel sophistiqué.
- Différent : Il n'a pas besoin d'attaques à 51 pour cent ni de contrôle du minage.
Variantes
Le Race Attack a quelques variantes que vous pourriez rencontrer :
- Classique : Deux transactions en conflit diffusées à presque la même heure.
- Finney : Un mineur crée à l'avance un bloc contenant une dépense, paie ensuite un commerçant, puis publie le bloc.
- Vector76 : Combine des éléments de blocs préminés et du timing pour tromper les plateformes.
- RBF : Objectif similaire mais repose sur des règles de remplacement basées sur les frais plutôt que sur une simple course de propagation.
La topologie du réseau compte. Les attaquants peuvent augmenter leurs chances s'ils contrôlent de nombreux pairs ou usent d'identités factices, ce qui explique pourquoi les attaques Sybil reviennent souvent dans les discussions sur les défenses contre le Race Attack.
Exemple
Un escroc paie un kiosque avec un transfert sans confirmation, puis envoie en course une transaction en conflit vers les mineurs et gagne, laissant le kiosque impayé alors que l'écran affichait brièvement « payé ».
Anecdote
Le Race Attack a été abordé dans les premiers forums Bitcoin, et le conseil d'époque de Satoshi d'attendre plusieurs confirmations reste la recommandation. Rolex rencontre les fils Reddit.
Conclusion
En une phrase : un Race Attack est un jeu de timing contre les paiements sans confirmation, donc un peu de patience suffit pour en réduire l'impact.
