Qu’est-ce qu’une attaque par double dépense sur la blockchain ?

Explication du fonctionnement simplifié d’une blockchain

Une blockchain, qu'est-ce que c'est ? Lorsque l’on parle de blockchain, on parle souvent de cryptomonnaies ou encore de NFT. Mais comment une blockchain fonctionne dans le fond, est-ce un programme ? Un réseau ?

Pour faire simple, une blockchain est une suite de blocs qui sont liés entre eux de manière immuable, l’information contenue dans ces blocs est inscrite à jamais et ne peut pas être altérée, l’ensemble des blocs sont connectés comme un réseau sous forme de nœuds. Une blockchain met un point d’honneur à sa sécurité, c’est ce qui lui accorde sa crédibilité. L’information en cours d’écriture doit passer une série d’épreuves et être certifiée par différents acteurs pour être inscrite dans la blockchain, c’est là qu’une attaque par double dépense peut apparaitre.

À la création d’un nouveau bloc, une multitude d’opérations sont inscrites dans ce bloc, comme l’envoi de cryptomonnaies ou le déploiement d’un smart contract par exemple. Chaque opération numérique est vérifiée par des intermédiaires qui ne sont autres que des particuliers ou des entreprises qui utilisent un algorithme cryptographique afin de s’assurer que la transaction est valable et ne comporte pas de faux dans la création numérique. Lorsque les acteurs tombent d’accord sur la création d’un bloc, on appelle ça le mécanisme de consensus.

L’attaque par double dépense en détails

Mais qu’est-ce qu’une attaque par double dépense alors ? Une attaque par double dépense signifie qu’un utilisateur va essayer de dépenser deux fois la même cryptomonnaie. Ce type d’attaque se produit donc au moment de la création d’un bloc.

Par exemple, une personne qui possède 1 Bitcoin et souhaite l’échanger en même temps contre des USDT et en même temps contre de l’Ethereum ne devrait pas pouvoir le faire. Son Bitcoin ne pouvant être dépensé qu’une seule fois entièrement. Une attaque par double dépense sur la blockchain Bitcoin permettrait alors de dépenser deux fois le même Bitcoin. Rassurez-vous, ce genre d’attaque n’est jamais arrivé sur la blockchain Bitcoin.

Il est parfois possible que le début d’une attaque par double dépense soit initiée à la création d’un bloc involontairement. Lorsqu’un bloc est en cours de création, il est prévisible qu’une compétition soit mise en place entre les différents acteurs afin de créer le bloc. Un même Bitcoin peut alors se retrouver dans deux blocs différents. Mais rassurez-vous, un seul bloc sera choisi et définitivement inscrit dans la blockchain, il s’agira du bloc le plus long. Le Bitcoin ne sera alors dépensé qu’une seule et unique fois.

Les risques d’une attaque par double dépense sur la blockchain

Quels sont les risques d’une attaque par double dépense sur la blockchain alors ? Cette dernière attaque est l’une des pires attaques possibles sur la blockchain, au même titre qu’une attaque à 51% par exemple. L’attaque par double dépense permettrait de multiplier artificiellement une cryptomonnaie tout en faussant le registre de la blockchain, enlevant toute crédibilité à cette dernière.

La crédibilité pour une blockchain est essentielle, car s’il est prouvé qu’une attaque par double dépense a eu lieu dans le passé d'une blockchain, c'est qu’il y a des risques que cela se reproduise. De plus, tous les blocs depuis cette attaque sont considérés comme “corrompus” et donc la blockchain ne respecte plus son principe de sécurité de base.

Toutes les cryptomonnaies qui sont alors liées à cette blockchain verront leur cours s’effondrer devant un tel risque.

Savoir se protéger contre une attaque par double dépense sur la blockchain

Il est possible de se protéger face à une attaque par double dépense sur la blockchain. De nombreuses méthodes et analyses sont possibles, mais cela dépendra de votre place vis-à-vis de la blockchain. Êtes-vous un développeur ou un utilisateur ?

Si vous lisez cet article en tant que développeur blockchain, vous allez devoir renforcer la cryptographie de votre algorithme validateur afin de complexifier une attaque par double dépense.

Si vous lisez cet article en tant qu’utilisateur d’une blockchain vous allez devoir principalement vous méfier des petites ou récentes blockchains. En effet, il sera beaucoup moins probable qu’une attaque par double dépense intervienne sur la blockchain Bitcoin ou la blockchain Ethereum. Cependant, si vous faites partie des premiers à utiliser une nouvelle blockchain, méfiez-vous de son fonctionnement et prenez le temps de l’analyser. Si vous le pouvez, utiliser des sites équivalent à etherscan.io pour la nouvelle blockchain que vous convoitez. Un tel site vous permet de surveiller les enchainements de blocs et leur contenu pour vous assurer de leur conformité avec l’ensemble du réseau et ainsi éviter les attaques. Nous vous conseillons d'utiliser un site comme BlockExplorer afin de vous renseigner sur l'utilisation d'une nouvelle blockchain.

Maintenant que vous savez ce qu’est une attaque par double dépense sur la blockchain, comment l’identifier et comment vous en protéger, vous voilà avec une carte de plus dans votre manche !