Bitcoin des transactions répétées : une faille intéressante mais à faible risque
Les transactions Bitcoin utilisent généralement l'identifiant de la transaction précédente pour dépenser des sorties non dépensées. Ces sorties ne peuvent être dépensées qu'une seule fois, sinon cela entraînera un double paiement, faisant perdre de la valeur au Bitcoin. Cependant, dans l'histoire du Bitcoin, il y a eu deux ensembles de transactions complètement identiques. Cette situation peut se produire parce que les transactions coinbase n'ont pas d'entrées, mais génèrent directement de nouveaux jetons. Par conséquent, deux transactions coinbase différentes peuvent potentiellement envoyer la même quantité de jetons à la même adresse, de manière totalement identique, produisant ainsi le même identifiant de transaction.
Ces deux ensembles de transactions répétées se sont produites entre le 14 et le 15 novembre 2010, sur une période d'environ 16 heures. Le premier ensemble de transactions répétées (d5d2....8599) est encastré entre le deuxième ensemble (e3bf....b468). Il est intéressant de noter que d5d2....8599, bien qu'il soit devenu le premier en tant que transaction répétée, apparaît cependant plus tard sur la blockchain que e3bf....b468.
Ces transactions répétées ont chacune une valeur de 50 BTC, impliquant au total 200 BTC ou 100 BTC( selon la manière de comprendre). À ce jour, ces jetons n'ont pas été dépensés. En théorie, la personne qui possède la clé privée peut dépenser ces Bitcoins, mais seulement 100 BTC peuvent réellement être récupérés. Quant à l'origine de ces jetons, il se peut qu'il ne soit pas possible de le déterminer.
Les transactions répétées peuvent semer la confusion dans les portefeuilles et les explorateurs de blocs, et peuvent également être utilisées pour des attaques. Par exemple, un attaquant peut effectuer deux transactions répétées pour payer deux fois la bourse, puis retirer rapidement des fonds, essayant de faire faillite à la bourse.
Pour résoudre ce problème, un soft fork BIP30 a été mis en œuvre en mars 2012, interdisant l'utilisation de TXID dupliqués pour les transactions. En septembre 2012, cette règle a été modifiée pour s'appliquer à tous les blocs (, à l'exception des deux ensembles de transactions dupliquées mentionnées précédemment ). Le BIP34 activé en mars 2013 exige que les transactions coinbase incluent la hauteur du bloc, ce qui semble résoudre fondamentalement le problème des transactions dupliquées.
Cependant, certains scripts de coinbase des transactions avant l'activation de BIP34 ont leur premier octet qui correspond exactement à la hauteur de bloc valide future. Cela signifie qu'il est encore possible de générer des transactions en double à certaines hauteurs de bloc spécifiques. Le prochain bloc susceptible de générer des transactions en double est le 1,983,702, prévu aux alentours de janvier 2046.
Néanmoins, le coût et la difficulté d'exploiter cette faille sont très élevés. Les mineurs doivent non seulement avoir suffisamment de chance pour extraire un bloc spécifique, mais aussi dépenser des frais considérables. Au prix actuel du Bitcoin, cette attaque pourrait coûter plus de 15 millions de dollars, et elle n'aurait presque aucune utilité pratique.
Compte tenu de la difficulté et du coût de la duplication des transactions, ainsi que de la rareté des opportunités d'en tirer parti, cette vulnérabilité ne constitue pas une menace majeure pour la sécurité de Bitcoin. Cependant, étant donné l'échelle temporelle impliquée et l'unicité des transactions répétées, ce problème reste préoccupant. Les développeurs de Bitcoin ont investi beaucoup de temps sur ce problème au fil des ans, et l'année 2046 pourrait devenir la date limite pour corriger complètement cette vulnérabilité. La méthode de correction pourrait nécessiter un soft fork, l'une des solutions possibles étant l'application forcée de l'engagement SegWit.
Cette page peut inclure du contenu de tiers fourni à des fins d'information uniquement. Gate ne garantit ni l'exactitude ni la validité de ces contenus, n’endosse pas les opinions exprimées, et ne fournit aucun conseil financier ou professionnel à travers ces informations. Voir la section Avertissement pour plus de détails.
21 J'aime
Récompense
21
7
Partager
Commentaire
0/400
PositionPhobia
· 07-08 21:33
En 2046, parlons-en plus tard, d'abord vivons.
Voir l'originalRépondre0
TestnetScholar
· 07-08 20:31
2046 est trop loin, aujourd'hui il y a du vin, aujourd'hui je me saoule.
Voir l'originalRépondre0
LayoffMiner
· 07-07 01:31
Eh, à 2046 alors, la machine fonctionne normalement.
Voir l'originalRépondre0
RektButSmiling
· 07-05 22:06
On en reparlera en 2046. Je m'en vais, je m'en vais~
Voir l'originalRépondre0
ruggedNotShrugged
· 07-05 22:05
Qui pourra encore vivre jusqu'en 2046 pour voir la correction des vulnérabilités ?
Voir l'originalRépondre0
ser_we_are_ngmi
· 07-05 22:05
Il faut encore attendre 23 ans. Pourquoi es-tu si pressé...
Voir l'originalRépondre0
MetaNomad
· 07-05 21:54
L'année 2046 semble encore loin, je vais d'abord dormir un peu.
Vulnérabilité des transactions répétées de Bitcoin : une correction finale pourrait arriver en 2046
Bitcoin des transactions répétées : une faille intéressante mais à faible risque
Les transactions Bitcoin utilisent généralement l'identifiant de la transaction précédente pour dépenser des sorties non dépensées. Ces sorties ne peuvent être dépensées qu'une seule fois, sinon cela entraînera un double paiement, faisant perdre de la valeur au Bitcoin. Cependant, dans l'histoire du Bitcoin, il y a eu deux ensembles de transactions complètement identiques. Cette situation peut se produire parce que les transactions coinbase n'ont pas d'entrées, mais génèrent directement de nouveaux jetons. Par conséquent, deux transactions coinbase différentes peuvent potentiellement envoyer la même quantité de jetons à la même adresse, de manière totalement identique, produisant ainsi le même identifiant de transaction.
Ces deux ensembles de transactions répétées se sont produites entre le 14 et le 15 novembre 2010, sur une période d'environ 16 heures. Le premier ensemble de transactions répétées (d5d2....8599) est encastré entre le deuxième ensemble (e3bf....b468). Il est intéressant de noter que d5d2....8599, bien qu'il soit devenu le premier en tant que transaction répétée, apparaît cependant plus tard sur la blockchain que e3bf....b468.
Ces transactions répétées ont chacune une valeur de 50 BTC, impliquant au total 200 BTC ou 100 BTC( selon la manière de comprendre). À ce jour, ces jetons n'ont pas été dépensés. En théorie, la personne qui possède la clé privée peut dépenser ces Bitcoins, mais seulement 100 BTC peuvent réellement être récupérés. Quant à l'origine de ces jetons, il se peut qu'il ne soit pas possible de le déterminer.
Les transactions répétées peuvent semer la confusion dans les portefeuilles et les explorateurs de blocs, et peuvent également être utilisées pour des attaques. Par exemple, un attaquant peut effectuer deux transactions répétées pour payer deux fois la bourse, puis retirer rapidement des fonds, essayant de faire faillite à la bourse.
Pour résoudre ce problème, un soft fork BIP30 a été mis en œuvre en mars 2012, interdisant l'utilisation de TXID dupliqués pour les transactions. En septembre 2012, cette règle a été modifiée pour s'appliquer à tous les blocs (, à l'exception des deux ensembles de transactions dupliquées mentionnées précédemment ). Le BIP34 activé en mars 2013 exige que les transactions coinbase incluent la hauteur du bloc, ce qui semble résoudre fondamentalement le problème des transactions dupliquées.
Cependant, certains scripts de coinbase des transactions avant l'activation de BIP34 ont leur premier octet qui correspond exactement à la hauteur de bloc valide future. Cela signifie qu'il est encore possible de générer des transactions en double à certaines hauteurs de bloc spécifiques. Le prochain bloc susceptible de générer des transactions en double est le 1,983,702, prévu aux alentours de janvier 2046.
Néanmoins, le coût et la difficulté d'exploiter cette faille sont très élevés. Les mineurs doivent non seulement avoir suffisamment de chance pour extraire un bloc spécifique, mais aussi dépenser des frais considérables. Au prix actuel du Bitcoin, cette attaque pourrait coûter plus de 15 millions de dollars, et elle n'aurait presque aucune utilité pratique.
Compte tenu de la difficulté et du coût de la duplication des transactions, ainsi que de la rareté des opportunités d'en tirer parti, cette vulnérabilité ne constitue pas une menace majeure pour la sécurité de Bitcoin. Cependant, étant donné l'échelle temporelle impliquée et l'unicité des transactions répétées, ce problème reste préoccupant. Les développeurs de Bitcoin ont investi beaucoup de temps sur ce problème au fil des ans, et l'année 2046 pourrait devenir la date limite pour corriger complètement cette vulnérabilité. La méthode de correction pourrait nécessiter un soft fork, l'une des solutions possibles étant l'application forcée de l'engagement SegWit.