crypto attaque 51
|

Qu’est-ce qu’une attaque 51% ?

Les attaquants utilisent les attaques à 51 % pour annuler des transactions qui ont déjà eu lieu, dans une blockchain, dans ce qui est connu sous le nom de double dépense. Par exemple, on peut dépenser 5 bitcoins pour acheter une moto. Une fois la moto livrée, la logique veut que les bitcoins soient transférés pour couvrir le coût de la moto, ce qui peut activer l’attaque.

Toutefois, en effectuant une attaque à 51 %, un attaquant serait en mesure d’annuler une transaction, ce qui entraînerait le remboursement de toutes les pièces utilisées pour financer la transaction. Au final, l’attaquant sera le propriétaire de la moto ainsi que des bitcoins utilisés pour l’acheter.

Comment se passe une attaque de type 51 ?

Chaque fois qu’une transaction est effectuée sur une blockchain, que ce soit par le bitcoin ou toute autre crypto-monnaie, elle est généralement placée dans un pool de transactions non confirmées. En retour, les mineurs sont autorisés à sélectionner des transactions dans le pool pour former un bloc de transactions.

Pour qu’une transaction soit ajoutée à une blockchain, un mineur doit trouver une réponse correcte à une énigme. Les mineurs trouvent des solutions à des énigmes mathématiques complexes en utilisant la puissance de calcul. Plus la puissance de calcul d’un mineur est élevée, plus il a de chances de trouver la bonne réponse pour être autorisé à ajouter un bloc à une blockchain.

Une réponse correcte à une énigme doit être « diffusée » aux autres mineurs et ne peut être acceptée que si toutes les transactions d’un bloc sont valides selon l’enregistrement existant sur une blockchain. Les mineurs corrompus, en revanche, ne diffusent pas les solutions au reste du réseau.

Le résultat de cette pratique est qu’elle entraîne toujours la formation de deux versions d’une blockchain. L’une, qui est la blockchain originale suivie par les mineurs légitimes, et une seconde blockchain utilisée entièrement par un mineur corrompu qui ne diffuse pas les résultats au réseau original.

La plupart du temps, un mineur corrompu continuera à travailler sur sa propre version de la blockchain, qui dans ce cas n’est pas diffusée au reste du réseau. La deuxième blockchain étant désormais isolée du réseau, le mineur corrompu peut dépenser ses bitcoins sur la version véridique de la blockchain, celle que tous les mineurs suivent.

Un processus de gouvernance démocratique

La blockchain est programmée de telle sorte qu’elle suit toujours la chaîne la plus longue, qui est toujours perçue comme la blockchain légitime. Celui qui a la plus grande puissance de hachage/de calcul est susceptible d’ajouter des blocs à une chaîne beaucoup plus rapidement, ce qui donne la chaîne la plus longue, qui sera finalement perçue comme la plus légitime.

Un mineur corrompu essaiera donc d’ajouter des blocs à sa chaîne à un rythme beaucoup plus rapide afin de la rendre plus longue pour être considérée comme la chaîne légitime. Une fois que la blockchain corrompue atteint le seuil pour être considérée comme la plus longue, le mineur corrompu la diffuse au réseau dans le cadre du processus d’initiation de l’attaque 51%.

Le reste du réseau, en détectant la nouvelle blockchain corrompue, cessera d’utiliser la blockchain légitime d’origine et passera à la nouvelle.

L’attaque 51% peut ensuite commencer

Dès que la blockchain corrompue est considérée comme la chaîne véridique, le protocole exige que toutes les transactions qui n’y figurent pas soient annulées. Dans ce cas, un attaquant finirait par se faire rembourser tous les bitcoins qu’il a dépensés sur la blockchain précédente qui est maintenant considérée comme « illégitime ».

C’est ce que l’on appelle communément l’attaque « double dépense » ou l’attaque 51%, car l’attaquant finit par posséder à la fois la moto et les bitcoins utilisés pour l’acheter.