Propulsé par

Les craintes concernant les attaques par rejeu s'intensifient alors que les partisans du BIP-110 qualifient le Bitcoin de « spamcoin »

La relance prévue du fork BIP-110, qui avait échoué, remet un ancien danger lié aux cryptomonnaies sous les feux de l'actualité : les attaques par rejeu, dans lesquelles une transaction destinée à une blockchain peut potentiellement être copiée sur une autre.

ÉCRIT PAR
PARTAGER
Les craintes concernant les attaques par rejeu s'intensifient alors que les partisans du BIP-110 qualifient le Bitcoin de « spamcoin »

Points clés

  • Dashjr a déclaré le 18 août que le Bitcoin, qu’il qualifie de « Spamcoin », devrait intégrer une protection contre les attaques par rejeu.
  • Le BIP-110 a atteint un pic de 2,53 % de soutien de la part des mineurs avant que sa chaîne minoritaire ne s'enlise le 8 août.
  • Bitcoin Knots prévoit un nouveau sighash, mais la protection contre la réinjection RDTS resterait facultative.

La question est importante car Luke Dashjr et d’autres partisans du BIP-110 discutent d’un hard fork qui remplacerait l’algorithme de minage SHA-256d de la chaîne minoritaire par BLAKE2b. Une telle initiative créerait de manière permanente une architecture entièrement nouvelle, mais les deux réseaux continueraient de partager leur historique de transactions antérieur à la scission.

Qu’est-ce qu’une attaque par rejeu exactement ?

Imaginons qu’une personne détienne 1 bitcoin avant un hard fork. Lorsque la blockchain se divise, le même historique de sorties de transaction non dépensées (UTXO) existe sur les deux réseaux. Concrètement, le propriétaire contrôle les bitcoins correspondants sur chaque chaîne à l’aide de la même clé privée.

Les problèmes commencent si les deux réseaux reconnaissent également les mêmes règles de transaction et de signature. Supposons que le propriétaire envoie la pièce à une plateforme d’échange sur la chaîne A. Si cette transaction signée est également valide sur la chaîne B, une autre partie peut la copier et la diffuser sur cette dernière. La chaîne B peut accepter la transaction car, d’un point de vue cryptographique, rien ne distingue cette autorisation de celle destinée à son propre réseau.

Replay attack diagram.
Schéma illustrant le fonctionnement d’une attaque par rejeu.

C’est ce qu’on appelle une attaque par rejeu. Personne ne vole la clé privée ni ne contourne la cryptographie de Bitcoin. Le problème est plus simple : l’utilisateur a créé une seule autorisation valide, mais deux chaînes de blocs la reconnaissent. Et tandis que la chaîne BIP-110 se situe à la hauteur de bloc 961636, les personnes dépensant des BTC transfèrent des pièces BIP-110, ou quel que soit le nom qu’on leur donnera à l’avenir, en même temps, sans même s’en rendre compte. « La grande majorité de ces [BIP-110 minority chain] blocs ne font que rejouer des transactions datant de plusieurs jours provenant de la chaîne principale », a écrit Mononaut, développeur chez Mempool.space, sur X. Ce sujet de la protection contre les rejeu ou des attaques par rejeu a suscité une conversation virale sur X ces derniers jours.

La protection contre la relecture érige un mur entre les chaînes

La protection contre la rediffusion empêche ce croisement en rendant les transactions sur les réseaux concurrents distinctes. Une méthode consiste à modifier le hachage de signature, communément appelé « sighash », de sorte qu’une transaction signée pour une chaîne ne respecte pas les règles de consensus de l’autre.

Une protection obligatoire intègre cette distinction au cœur même de la bifurcation. Une protection facultative laisse les transactions ordinaires potentiellement compatibles avec les deux chaînes et oblige les utilisateurs à recourir délibérément à un mécanisme spécifique à chaque chaîne lorsqu’ils souhaitent séparer leurs pièces.

Cette distinction est devenue importante pour le BIP-110. Le projet en cours ne semble pas offrir une protection bidirectionnelle automatique et complète contre la relecture. Au contraire, du moins selon les discussions sur Discord, Bitcoin Knots met en œuvre une nouvelle option de sighash capable de créer une transaction valide sur la chaîne RDTS mais invalide sous Bitcoin Core.

Dashjr estime que la protection relève de la responsabilité de l’autre chaîne

Dashjr a adopté une position inhabituelle quant à la responsabilité de chaque réseau. Interrogé le 18 août sur la protection contre la relecture pour le hard fork proposé, il a déclaré : « La protection contre la relecture relevait de la responsabilité de Spamcoin, puisqu’il s’agit de l’altcoin distribué par airdrop. »

X screenshot
Source de l’image : X

Il a ajouté qu’il existerait des moyens de séparer les transactions, mais a fait valoir que « les transactions Bitcoin légitimes doivent rester valides sur Bitcoin ». Son raisonnement repose sur son affirmation selon laquelle le réseau minoritaire BIP-110/RDTS est Bitcoin, tandis que la blockchain Bitcoin SHA-256d, largement dominante, est le réseau dissident.

X screenshot
Source de l’image : X

Dashjr a utilisé à plusieurs reprises des noms péjoratifs pour désigner la chaîne Bitcoin dominante, notamment « Spamcoin » et « Bpedo », une référence incorporant le terme « pedo ». Il a qualifié ce réseau d’altcoin tout en continuant à décrire la branche BIP-110 comme le Bitcoin légitime.

Les chiffres du réseau racontent une toute autre histoire

Cette caractérisation est en contradiction avec l’activité observable du réseau. La part des mineurs signalant le BIP-110 a atteint un pic d’environ 2,53 %, et lorsque ses règles de consensus sont entrées en vigueur le 8 août, sa branche minoritaire n’a produit que deux blocs immédiats avant de s’enliser. La chaîne dominante de Bitcoin a continué de fonctionner tandis que l’écart se creusait de plusieurs centaines de blocs. Quelques autres blocs BIP-110 ont été minés à un rythme extrêmement lent.

Le réseau majoritaire a conservé l’essentiel de la puissance de hachage significative du Bitcoin, la chaîne la plus longue, le poids du travail, la liquidité et la reconnaissance économique. La proposition BIP-110 a par la suite été classée comme close, tandis que ses partisans se sont tournés vers des projets visant à modifier la preuve de travail (PoW) BLAKE2b afin de redynamiser le réseau minoritaire.

De plus, la communauté Bitcoin est exaspérée par les affirmations répétées de Dashjr, et la protection contre la relecture de type « opt-in » actuellement en discussion est une pomme de discorde. « Mdr. Luke ne va tout de même pas lancer sa sh**coin avec une protection contre la réutilisation, n'est-ce pas ? Je suppose qu'elle ne sera donc pas cotée sur les bourses », a écrit mercredi un utilisateur de X. Un autre utilisateur de X a rétorqué :

« Cela a dépassé les limites du simple non-sens pour devenir un comportement malveillant. Diffuser de fausses informations comme celles-ci peut causer un réel préjudice financier aux utilisateurs de Bitcoin. »

La protection « opt-in » laisse la responsabilité aux utilisateurs

Selon l’approche actuellement discutée sur le canal Discord de Bitcoin Knots, les transactions ordinaires pourraient rester réutilisables, car RDTS a l’intention de maintenir la compatibilité avec les types de sighash existants de Bitcoin Core. Les utilisateurs souhaitant bénéficier d’une protection spécifique à RDTS devraient utiliser le nouveau sighash, ce qui nécessiterait un logiciel de portefeuille compatible ou un micrologiciel de signature matérielle.

Screenshot of Bitcoin Knots Discord.
Une conversation sur le Discord de Bitcoin Knots – capture d’écran.

Les utilisateurs peuvent également tenter de fractionner leurs pièces manuellement. Une transaction Bitcoin contenant des données rejetées par le RDTS pourrait créer une sortie n’existant que sur la chaîne dominante. À l’inverse, le « sighash » spécifique au RDTS proposé pourrait produire une transaction acceptée par le RDTS, mais rejetée par Bitcoin Core.

Le résultat s’apparente bien davantage à une protection contre la relecture « opt-in » qu’au pare-feu automatique auquel s’attendent les utilisateurs d’un hard fork controversé. Il incombe donc aux portefeuilles, aux plateformes d’échange et aux détenteurs de savoir exactement quelles transactions peuvent se propager d’une chaîne à l’autre. Cette décision est étrange, en particulier pour une nouvelle chaîne et un actif cryptographique ne bénéficiant d’aucun soutien de la part des plateformes d’échange. Les fournisseurs d’infrastructure, en particulier les plateformes d’échange de cryptomonnaies, ne sont guère susceptibles de s’intéresser à une chaîne qui privilégie une protection « opt-in » plutôt qu’une barrière universelle contre la relecture. Si la bifurcation BLAKE2b a lieu vers le 1er septembre, la protection contre la relecture sera donc bien plus qu’un détail technique obscur. Elle deviendra un test concret permettant de déterminer si les utilisateurs peuvent séparer en toute sécurité les actifs hérités de la même histoire que Bitcoin, alors même que Dashjr continue d’affirmer, de manière bien plus ambitieuse, que le réseau supportant pratiquement la totalité du hashrate, de la liquidité et de l’activité économique de Bitcoin est en quelque sorte l’altcoin.

Cet article a été traduit de l'anglais à l'aide de l'IA. La version originale en anglais fait foi ; les traductions automatiques peuvent contenir des inexactitudes, en particulier dans la terminologie juridique et réglementaire.