
Décryptage : problème de suspension des transactions sur la blockchain ETC, analyse et reconstitution de l'incident
TechFlow SélectionTechFlow Sélection

Décryptage : problème de suspension des transactions sur la blockchain ETC, analyse et reconstitution de l'incident
Pour les transactions elles-mêmes, l'impact de cet événement est négligeable, car il y avait très peu de transactions dans ces blocs. De plus, les transactions non extraites en dehors de ces blocs seront finalement soumises à nouveau.
Connaissances contextuelles :
Le 31 juillet, Multi-geth a publié la version 1.9.18, annonçant la fin du support d’Ethereum Classic. La raison principale réside dans le fait qu’Ethereum Classic aurait violé le principe d’immuabilité du code et de « Code-is-law » lors de son dur fork Phoenix, entraînant l’inefficacité des fonctions de retour (fallback) dans certains contrats intelligents.
Multi-geth est lui-même un kit de développement distribué et multi-chaînes pour le protocole Ethereum. La cessation de son support pour Ethereum Classic implique l’apparition de nombreuses chaînes alternatives, chaque nœud d’Ethereum Classic devant désormais décider indépendamment quelle chaîne alternative deviendra la chaîne principale selon ses propres critères. Certains nœuds pourraient choisir la chaîne la plus longue comme chaîne principale, d'autres celle présentant la difficulté cumulative la plus élevée, ou encore celle qui représente actuellement la plus grande quantité de travail miné.
Déroulement de l’événement :
Hier, Ethereum Classic a publié un message officiel sur Twitter indiquant qu'une maintenance réseau était en cours, demandant instamment aux services tels que les exchanges et pools miniers de suspendre temporairement les dépôts ETC afin d’examiner davantage les problèmes réseau.

Précédemment, Hudson Jameson, gestionnaire communautaire de la Fondation Ethereum, avait tweeté que la blockchain Ethereum Classic rencontrait des anomalies, recommandant aux exchanges de suspendre les dépôts et retraits, et exhortant les mineurs à coopérer en minant tous sur une même chaîne, en abandonnant celles soutenues par une minorité, jusqu’à ce que le problème soit résolu.

Le 2 août heure de Pékin, Ethereum Classic Labs a annoncé officiellement sur Medium que la restructuration (reorg) de la blockchain ETC était achevée et que le problème était désormais résolu.
En raison d’une erreur non identifiée, OpenEthereum / Parity et Open-ETC ne fonctionnent plus correctement. Cette erreur a provoqué la création de chaînes temporaires et de chaînes minoritaires. À l’avenir, tout nœud Ethereum Classic exécutant OpenEthereum ou Open-ETC pourrait miner sur une chaîne incorrecte.
Analyse du problème et reconstitution des faits :
Le déroulement de cet événement est le suivant :
1. Un mineur malveillant (adresse ETC : 0x75d1e5477f1fdaad6e0e3d433ab69b08c482f14e) a miné environ 3 000 blocs.
2. Le pool minier 2Miners a été brièvement hors ligne pour maintenance en raison de l’arrêt du support d’Ethereum Classic par Multi-geth.
3. Durant cette période de maintenance de 2Miners, aucun nouveau bloc n’a été produit. Une fois la maintenance terminée et le pool remis en ligne, environ 3 000 blocs ont été simultanément insérés dans le système de 2Miners.
4. Tous les nœuds Parity ou OpenEthereum d’Ethereum Classic étant incapables de traiter ces 3 693 blocs provenant de nœuds Core-Geth, une bifurcation de chaîne s’est produite : les mineurs sur les nœuds Parity continuaient de miner sur l’ancienne chaîne principale, tandis que ceux sur les nœuds Core-Geth minaient sur la nouvelle chaîne intégrant les 3 000 blocs ajoutés.
5. Selon le consensus Proof-of-Work (PoW), la puissance de travail accumulée sur la nouvelle chaîne a progressivement dépassé celle de l’ancienne chaîne principale. Certains mineurs sur les nœuds Parity présents sur l’ancienne chaîne se sont alors conformés au principe consistant à « miner sur la chaîne ayant le plus grand travail accumulé » et ont migré vers la nouvelle chaîne.
6. Finalement, au niveau de bloc 10904146, un total de 3 693 blocs ont été intégrés à la blockchain via un processus de restructuration (reorg). Ce dernier est une caractéristique des blockchains, généralement utilisée pour effectuer des opérations de retour arrière (rollback).
S'agit-il d'une attaque ?
Pour déterminer s’il s’agit d’une attaque, nous devons examiner comment ces environ 3 000 blocs ont été générés. La cause réelle réside-t-elle dans une simple déconnexion accidentelle ayant conduit à la création de blocs durant cette période, ou bien s’agit-il d’un acte intentionnel ?
Compte tenu de l’annonce officielle évoquant une « erreur inconnue », il est actuellement impossible de trancher définitivement sur la nature exacte de cet incident.
Impact :
Du point de vue des transactions, l’impact de cet événement est limité, car peu de transactions étaient incluses dans ces blocs. De plus, les transactions non incluses seront in fine soumises à nouveau.
En revanche, concernant la « chaîne » elle-même, cet incident pourrait avoir des conséquences. En effet, le problème est survenu moins d’un jour après l’arrêt du support d’Ethereum Classic par Multi-geth. Bien que la situation actuelle semble relativement simple, si des acteurs expérimentés organisaient plusieurs fois de telles actions similaires, on pourrait s’interroger sur leur objectif visant à provoquer intentionnellement de multiples forks. De plus, par ce biais, un attaquant malveillant pourrait potentiellement mener une attaque à 51 % pour prendre le contrôle de la blockchain, réaliser une double dépense ou supprimer des transactions existantes sur la chaîne.
Liens de référence :
https://coinfomania.com/the-ethereum-classic-blockchain-etc-51-attack/
https://hashdeploy.com/?p=38898
https://hackmd.io/@cUBb4hAvQciAEPoU2yfrzQ/Skd4X6MZw
https://twitter.com/pool2miners/status/1289475794230587394?s=21
https://github.com/multi-geth/multi-geth/releases/tag/v1.9.18
https://cointelegraph.com/news/ethereum-classic-blockchain-splits-due-to-reorg-by-a-single-miner
Bienvenue dans la communauté officielle TechFlow
Groupe Telegram :https://t.me/TechFlowDaily
Compte Twitter officiel :https://x.com/TechFlowPost
Compte Twitter anglais :https://x.com/BlockFlow_News














