Qu'est-ce qu'une attaque à double dépense ? . Une attaque à double dépense est un problème unique aux monnaies numériques dans lequel un utilisateur peut dépenser le même actif numérique plus d'une fois. Ceci est possible car les utilisateurs finaux peuvent reproduire facilement des informations numériques.
Bitcoin a réussi à contrecarrer le problème de double dépense, mais toutes les crypto-monnaies n'utilisent pas le même algorithme de consensus.
Donc, ce n'est pas parce que Bitcoin a gardé les utilisateurs en sécurité contre les attaques à double dépense que cela signifie que toutes vos transactions sont sécurisées. Voici tout ce que vous devez savoir sur les doubles dépenses et comment une attaque de double dépense peut affecter une crypto-monnaie.
Attaques à double dépense expliquées
La double dépense est une transaction qui utilise la même entrée qu'une autre transaction qui a déjà été validée sur le réseau.
Une attaque à double dépense n'est évidemment pas possible avec l'argent de fiat physique. Lorsque vous dépensez 5$pour obtenir un café, par exemple, vous donnez la note physique et ne pouvez pas l'utiliser une deuxième fois.
Lorsqu'il s'agit d'utiliser des cartes de crédit, un tiers — la banque — garantit que l'argent de votre compte est transféré dans le compte du vendeur. De cette façon, vous n'avez plus accès à ces fonds et ne pouvez pas les utiliser une deuxième fois pour effectuer des paiements.
Cependant, les choses ne sont pas si simples sur la blockchain. Une crypto-monnaie est un fichier numérique, qui est assez facile à copier. Comme il n'existe pas d'autorité centralisée pour contrôler les transactions, les utilisateurs peuvent répliquer plus facilement les fichiers numériques et les utiliser pour effectuer des achats. Le titulaire fait une copie de la pièce numérique et l'utilise pour effectuer une autre transaction tout en conservant l'original dans un portefeuille.
Comment Bitcoin empêche les doubles dépenses
La blockchain Bitcoin a mis en place un protocole pour contrer les attaques à double dépense inspirées du système de trésorerie traditionnel. C'est un mécanisme de confirmation qui maintient une blockchain « chronologiquement ordonnée » à partir de la première opération enregistrée en 2009.
Supposons qu'un détenteur envisage d'utiliser un Bitcoin pour faire plusieurs achats à d'autres commerçants. Toutes les transactions vont dans un pool où ils doivent attendre la confirmation. La première transaction est validée et publiée sur la blockchain. Avec chaque nouveau bloc ajouté au livre, l'opération obtient plus de confirmations.
La deuxième transaction utilisant la même entrée ne sera pas validée car les mineurs peuvent identifier l'attaque à double dépense en fonction des enregistrements précédents.
Que se passe-t-il si deux de ces transactions sont extraites du pool simultanément ? Les mineurs ne valideront que celle avec le plus grand nombre de confirmations, et celle-ci sera la seule transaction enregistrée sur la blockchain.
Les commerçants acceptant le paiement en Bitcoin doivent attendre la confirmation avant de libérer les biens ou services pour éviter les escroqueries. De cette façon, les vendeurs ont la garantie que la transaction est irréversible.
Si vous faites une copie numérique de votre Bitcoin et que vous essayez de l'utiliser, vous ne pourrez plus dépenser les fonds épargnés dans votre portefeuille à l'avenir. Les mineurs utilisent des mathématiques complexes et d'énormes quantités de pouvoir pour analyser les dossiers antérieurs et éviter les doubles dépenses. Avec la copie déjà enregistrée comme dépensée sur la blockchain, il est impossible d'utiliser la pièce numérique une deuxième fois.
L'inconvénient ? Cela ralentit le processus d'achat puisque les commerçants doivent attendre (parfois pendant presque une heure) pour obtenir la confirmation dont ils ont besoin.
Types d'attaques à double dépense
Bien que toutes les crypto-monnaies n'utilisent pas le mécanisme de confirmation et le consensus sur la preuve de travail, la plupart d'entre elles peuvent contrer les doubles dépenses. Cependant, il est encore théoriquement possible qu'une attaque à double dépense se produise.
Attaque de course
Une attaque de course devient possible lorsque les commerçants acceptent des paiements avant de recevoir des confirmations de bloc sur la transaction. Un utilisateur final envoie deux transactions presque simultanément, l'une au marchand et l'autre à un autre portefeuille. Dans ce cas, les mineurs pouvaient valider l'opération vers le portefeuille, ce qui signifierait que le marchand ne recevrait pas les fonds.
Attaque de Finney
Une attaque de Finney se produit également lorsque le marchand n'attend pas la confirmation de la transaction. Dans ce cas, un mineur transfère des fonds d'un portefeuille à un autre mais ne valide pas immédiatement le bloc. Ensuite, il ou elle utilise le portefeuille source pour effectuer un achat. Une fois la deuxième transaction définie, le mineur diffuse le bloc précédemment extrait, qui inclut également la première transaction.
Attaque 51%
Une attaque de 51 % dans cette situation est appelée attaque majoritaire car elle nécessite que l'attaquant contrôle plus de la moitié du taux de hachage d'un réseau. Cela pourrait être possible si un mineur ou un groupe de mineurs parvenait à générer des blocs plus rapidement que le reste des autres utilisateurs sur un réseau. Tous les algorithmes de consensus sont conçus pour éliminer les risques d'une attaque de 51%.
Les plats à emporter
Une attaque à double dépense est dangereuse pour les utilisateurs de crypto-monnaie. Les commerçants et les autres utilisateurs sont escroqués et laissés hors de leurs poches, et la réputation du réseau est endommagée. Une crypto-monnaie qui ne peut pas contrer les doubles dépenses devra d'abord faire face à l'inflation, puis à un manque de confiance. Cela conduit inévitablement à un réseau sans valeur.
Disclaimer: The views and opinions expressed by the author should not be considered as financial advice. We do not give advice on financial products.