


La malléabilité des transactions constitue un concept fondamental dans le secteur des cryptomonnaies, notamment au sein du réseau Bitcoin. Cet article décrypte en détail la malléabilité des transactions : ses mécanismes, ses origines, les types d’attaques, des cas concrets, son impact sur l’écosystème crypto et les solutions existantes.
La malléabilité des transactions désigne la capacité à modifier l’identifiant unique d’une transaction (TXID) avant sa confirmation dans un bloc sur le réseau Bitcoin. Cette altération n’affecte pas les éléments essentiels de la transaction : expéditeur, destinataire, montant transféré. Elle concerne uniquement l’« empreinte numérique », autrement dit le hachage qui identifie de façon unique la transaction sur la blockchain.
Le problème fondamental tient à la structure de la signature des transactions Bitcoin. Si la signature numérique couvre la majorité des données de la transaction, certains champs — comme le scriptSig de l’entrée — ne sont pas inclus dans la protection de la signature. Cette faille permet d’apporter des modifications mineures et non critiques aux données, modifiant ainsi le hachage et par conséquent le TXID.
La malléabilité des transactions trouve son origine dans plusieurs facteurs :
Schéma de signature numérique : La méthode actuelle ne protège pas l’intégralité des données, laissant la porte ouverte à des modifications.
Champs de transaction flexibles : Certains champs peuvent être exprimés selon différentes représentations valides, ce qui permet des altérations sans remise en cause de la validité de la transaction, mais qui changent le TXID.
Modifications par des tiers : Avant confirmation, des parties tierces peuvent intervenir sur les aspects malléables de la transaction sans l’invalider.
Les attaques liées à la malléabilité se présentent sous diverses formes :
Corruption de données : Manipulation de champs non critiques pour semer la confusion.
Duplication de factures : Reproduction de factures pour inciter un utilisateur ou un service à effectuer deux paiements pour une même demande.
Manipulation des frais : Ajustement des transactions pour modifier les frais associés.
Modification de l’identifiant de transaction : Changement du TXID afin de convaincre une partie qu’une transaction a échoué ou n’a pas été prise en compte.
Double dépense : Permettre une forme de double dépense en faisant passer des transactions modifiées pour des opérations distinctes et nouvelles.
En 2014, une importante plateforme d’échange de cryptomonnaies en a fait l’expérience : elle a suspendu les retraits et déposé le bilan après avoir perdu une quantité substantielle de Bitcoin. Des pirates ont exploité la malléabilité des transactions, les modifiant avant signature et hachage, ce qui a engendré une confusion opérationnelle et permis des retraits multiples jusqu’à épuisement des réserves de Bitcoin.
La malléabilité des transactions entraîne plusieurs conséquences sur le réseau Bitcoin :
Impact sur les opérations des plateformes et la scalabilité : elle peut provoquer des retards de traitement et limiter la capacité du réseau à absorber de gros volumes de transactions.
Retards de confirmation : Les systèmes basés sur des TXID spécifiques risquent de ne pas identifier les transactions modifiées, ce qui allonge les délais et dégrade l’expérience utilisateur.
Risque de fraude et de double dépense : Cette vulnérabilité peut ouvrir la voie à des fraudes en générant de l’incertitude sur le statut des transactions.
Plusieurs solutions ont été proposées et adoptées pour limiter la malléabilité des transactions :
Segregated Witness (SegWit) : Cette évolution sépare les données de signature (witness) du reste de la transaction, empêchant la modification du TXID.
Signatures Schnorr : Elles permettent de vérifier les transactions Bitcoin sans recourir aux identifiants numériques.
Merkelized Abstract Syntax Trees (MAST) : Cette proposition vise à renforcer les scripts, réduire les frais de transaction et optimiser la scalabilité du réseau.
La malléabilité des transactions constitue une vulnérabilité complexe qui a un impact majeur sur l’écosystème Bitcoin et les opérations crypto en général. Si elle représente un défi pour la sécurité et le traitement des transactions, les innovations en matière de blockchain s’efforcent d’y remédier. Alors que l’univers des cryptomonnaies poursuit son évolution, la compréhension et la maîtrise de la malléabilité des transactions restent indispensables pour garantir l’intégrité et l’efficacité des échanges numériques.
La malléabilité des transactions est une faille présente dans certaines cryptomonnaies, permettant de modifier l’identifiant d’une transaction sans en changer le contenu, ce qui peut favoriser des attaques de double dépense.
Consultez votre application de portefeuille ou utilisez un explorateur blockchain. Le hachage correspond à l’identifiant unique de votre transaction, généralement affiché dans les détails.
Non, le hachage d’une transaction ne peut pas être inversé. Une fois inscrit sur la blockchain, il constitue un identifiant unique et permanent.
La règle des 51 % décrit un cas où une entité détient plus de la moitié de la puissance de consensus du réseau, pouvant alors manipuler les transactions et les blocs. Les grands réseaux sont plus robustes, tandis que les plus petits restent vulnérables.











