Bien qu'elles soient soutenues par la technologie blockchain qui promet sécurité, immuabilité et transparence totale, de nombreuses cryptomonnaies comme le Bitcoin SV (BSV), le Litecoin (LTC) et l'Ethereum Classic (ETC) ont fait l'objet d'attaques à 51 % à plusieurs reprises par le passé. Bien qu'il existe de nombreux mécanismes par lesquels des entités malveillantes peuvent attaquer et ont attaqué des blockchains, une attaque à 51 %, ou une attaque majoritaire comme on l'appelle aussi, se produit lorsqu'un groupe de mineurs ou une entité contrôle plus de 50 % de la puissance de hashing de la blockchain et en prend ensuite le contrôle.

Sans doute la méthode la plus coûteuse et la plus fastidieuse pour compromettre une blockchain, les attaques à 51 % ont largement réussi avec des réseaux plus petits qui nécessitent une puissance de hashing plus faible pour venir à bout de la majorité des nœuds.

Comprendre une attaque à 51 %.

Avant de se plonger dans la technique impliquée dans une attaque 51%, il est important de comprendre comment les blockchains enregistrent les transactions, les valident et les différents contrôles intégrés dans leur architecture pour empêcher toute altération. Utilisant des techniques cryptographiques pour relier les blocs successifs, qui sont eux-mêmes des enregistrements des transactions qui ont eu lieu sur le réseau, une blockchain adopte l'un des deux types de mécanismes de consensus pour valider chaque transaction à travers son réseau de nœuds et les enregistrer de façon permanente.

Alors que les nœuds d'une blockchain de type Proof-of-Work (PoW) doivent résoudre des énigmes mathématiques complexes pour vérifier les transactions et les ajouter à la blockchain, une blockchain de type Proof-of-Stake (PoS) exige des nœuds qu'ils mettent en jeu un certain montant du token natif pour obtenir le statut de validateur. Dans les deux cas, une attaque à 51 % peut être orchestrée en contrôlant le hashrate du mining du réseau, ou en contrôlant plus de 50 % des tokens mis en jeu dans la blockchain.

PoW vs PoS

Pour comprendre comment fonctionne une attaque à 51 %, imaginez que plus de 50 % de tous les nœuds qui remplissent ces fonctions de validation conspirent ensemble pour introduire une version différente de la blockchain ou exécuter une attaque par déni de service (DOS). Cette dernière est un type d'attaque à 51 % dans lequel les nœuds restants sont empêchés de remplir leurs fonctions, pendant que les nœuds attaquants ajoutent de nouvelles transactions à la blockchain ou effacent les anciennes. Dans les deux cas, les assaillants peuvent potentiellement annuler des transactions et même dépenser deux fois le token natif, ce qui revient à créer une fausse cryptomonnaie.

Diagrammatic representation of a 51% attack

Il va sans dire qu'une telle attaque à 51 % peut compromettre l'ensemble du réseau et provoquer indirectement de grandes pertes pour les investisseurs qui détiennent le token natif. Même si la création d'une version altérée de la blockchain d'origine nécessite une quantité phénoménale de puissance de calcul ou de cryptomonnaies mises en jeu dans le cas de grandes blockchains comme Bitcoin ou Ethereum, ce n'est pas aussi farfelu pour les petites blockchains.

En effet, une simple attaque DOS peut paralyser le fonctionnement de la blockchain, et avoir un impact négatif sur le prix de la cryptomonnaie sous-jacente. Cependant, il est improbable que les anciennes transactions au-delà d'un certain seuil puissent être annulées, ce qui ne met en danger que les transactions les plus récentes ou futures effectuées sur le réseau.

Une attaque de 51 % sur le réseau Bitcoin est-elle possible ?

Pour une blockchain PoW, la probabilité d'une attaque à 51 % diminue à mesure que la puissance de hashing ou la puissance de calcul utilisée par seconde pour le mining augmente. Dans le cas du réseau Bitcoin (BTC), les auteurs de l'attaque devraient contrôler plus de la moitié du hashrate du Bitcoin, qui s'élève actuellement à ~290 exahashes/s, ce qui les obligerait à avoir accès à au moins 1,3 million des plus puissants circuits intégrés spécifiques à une application (ASIC), comme le Antminer S19 Pro de Bitmain, vendu environ 3 700 dollars pièce.

Cela signifie que les auteurs de ces attaques doivent acheter des équipements de mining pour un total d'environ 10 milliards de dollars, rien que pour avoir une chance d'exécuter une attaque de 51 % sur le réseau Bitcoin. Il y a ensuite d'autres aspects comme les coûts d'électricité et le fait qu'ils n'auraient droit à aucune des récompenses de mining applicables aux nœuds honnêtes.

Toutefois, pour les petites blockchains comme Bitcoin SV, le scénario est tout à fait différent, car le hashrate du réseau est d'environ 590PH/s, ce qui rend le réseau Bitcoin presque 500 fois plus puissant que Bitcoin SV.

Cependant, dans le cas d'une blockchain PoS comme Ethereum, les entités malveillantes devraient disposer de plus de la moitié du total des ethers (ETH) qui sont bloqués dans des contrats de staking sur le réseau. Cela nécessiterait des milliards de dollars uniquement en termes d'achat de la puissance de calcul requise pour avoir ne serait-ce qu'un semblant de réussite d'une attaque à 51 %.

De plus, dans le cas où l'attaque échouerait, tous les tokens mis en jeu pourraient être confisqués ou verrouillés, ce qui porterait un coup financier considérable aux entités impliquées dans la prétendue attaque.

Comment détecter et prévenir une attaque à 51 % sur une blockchain ?

La première chose à faire pour une blockchain est de s'assurer qu'aucune entité, groupe de mineurs ou même pool de mineurs ne contrôle plus de 50 % du hashrate minier du réseau ou du nombre total de tokens mis en jeu.

Pour cela, les blockchains doivent contrôler en permanence les entités impliquées dans le processus de mining ou de staking et prendre des mesures correctives en cas de violation. Malheureusement, la blockchain Bitcoin Gold (BTG) n'a pas pu anticiper ou empêcher que cela se produise en mai 2018, une attaque similaire s'étant répétée en janvier 2020 et ayant conduit à ce que près de 70 000 dollars de BTG soient dépensés deux fois par un acteur inconnu.

Dans tous ces cas, l'attaque à 51 % a été rendue possible par un seul agresseur de réseau qui a obtenu le contrôle de plus de 50 % de la puissance de hashing, et qui a ensuite procédé à des réorganisations profondes de la blockchain originale qui ont inversé les transactions effectuées.

Les attaques répétées contre Bitcoin Gold soulignent l'importance de s'appuyer sur des mineurs ASIC plutôt que sur des mineurs GPU, moins chers. Étant donné que Bitcoin Gold utilise l'algorithme Zhash qui rend le mining possible même sur des cartes graphiques grand public, les agresseurs peuvent se permettre de lancer une attaque de 51 % sur son réseau sans avoir besoin d'investir lourdement dans des mineurs ASIC plus coûteux.

Cet exemple d'attaque à 51 % met en évidence la supériorité des contrôles de sécurité offerts par les mineurs ASIC, car leur acquisition nécessite un investissement plus important et ils sont conçus spécifiquement pour une blockchain particulière, ce qui les rend inutiles pour le mining ou l'attaque d'autres blockchains.

Cependant, dans le cas où les mineurs de cryptomonnaies comme le BTC se tournent vers des altcoins plus petits, même un petit nombre d'entre eux pourrait potentiellement contrôler plus de 50% du hashrate du réseau plus petit de l'altcoin.

De plus, avec des fournisseurs de services tels que NiceHash permettant aux gens de louer de la puissance de hashing pour le mining spéculatif de cryptomonnaies, les coûts de lancement d'une attaque de 51% peuvent être considérablement réduits. Cela a attiré l'attention sur la nécessité de surveiller en temps réel les réorganisations de la chaîne sur les blockchains pour mettre en évidence une attaque 51% en cours.

La Digital Currency Initiative (DCI) du MIT Media Lab est l'une de ces initiatives qui a construit un système pour surveiller activement un certain nombre de blockchains PoW et leurs cryptomonnaies, en signalant toute transaction suspecte qui pourrait avoir dépensé deux fois le token natif pendant une attaque 51%.

Des cryptomonnaies telles que Hanacoin (HANA), Vertcoin (VTC), Verge (XVG), Expanse (EXP) et Litecoin Cash ne sont que quelques exemples de plateformes blockchain qui ont été confrontées à une attaque à 51 %, selon l'initiative DCI.

Parmi eux, l'attaque de Litecoin Cash en juillet 2019 est un exemple classique d'une attaque à 51 % sur une blockchain Proof-of-Stake, même si les auteurs de l'attaque n'ont pas miné de nouveaux blocs et ont dépensé deux fois des Litecoin Cash (LCC) qui valaient moins de 5 000 dollars au moment de l'attaque.

Cela met en évidence les risques moindres d'attaques à 51 % sur les blockchains PoS, les jugeant moins attrayantes pour les pirates de réseau, et c'est l'une des nombreuses raisons pour lesquelles un nombre croissant de réseaux passent au mécanisme de consensus PoS.