Le 7 novembre 2017, l’utilisateur de Github devops199 a publié un message simple : « Je l’ai tué accidentellement ».
Le message comprenait un lien vers une transaction sur la blockchain Ethereum qui a effectivement entraîné le gel permanent de 513 774 ETH (d’une valeur actuelle de plus de 1,7 milliard de dollars), affectant des milliers de détenteurs.
Aujourd’hui, un groupe de détenteurs dont l’ETH est bloqué dans le contrat intelligent propose un plan pour récupérer les fonds.
Comment 513 774 ETH ont-ils été soudainement gelés ?
Le 6 novembre 2017, devops199 s’amusait sur la blockchain Ethereum, comme le font de nombreux développeurs pour jouer avec la plateforme de contrats intelligents basée sur Solidity. Au cours de cette exploration, devops199 a trouvé un portefeuille non initialisé et a procédé à son initialisation, devenant ainsi l’unique propriétaire. Leur décision suivante a été d’utiliser la fonction kill, détruisant les données contractuelles du portefeuille (la motivation de Devops199 pour cela n’est pas claire).
Il s’est avéré que ce portefeuille était la bibliothèque sur laquelle tous les portefeuilles multisig Parity s’appuyaient pour fonctionner. Après avoir appelé la fonction kill, devops199 s’est rendu sur Github et a signalé ce qui s’était passé.
Alors que le mème « Je l’ai tué accidentellement » est devenu un témoignage de la nature expérimentale d’Ethereum et des contrats intelligents, les victimes sont toujours laissées dans les limbes, sans aucun moyen d’accéder à leurs fonds. Les fonds ne sont ni perdus, ni volés, ni brûlés. Ils sont essentiellement simplement gelés, toujours en sécurité dans le portefeuille multisig dans lequel ils ont été placés il y a 8 ans.
Un bref récapitulatif des tentatives de récupération
En 2017 et 2018, plusieurs EIP et propositions ont été proposés pour résoudre le problème et permettre aux victimes d’accéder à leurs fonds. Cependant, aucun n’a été accepté par la communauté Ethereum.
Seulement un an et demi avant l’incident du bug Parity, il y avait un projet massif sur la blockchain Ethereum appelé « le DAO ». Le projet visait à être un fonds d’investissement natif d’Ethereum et a obtenu le soutien massif des détenteurs d’ETH.
En 28 jours, la vente participative a permis de récolter la somme impressionnante de 11,5 millions d’ETH, ce qui équivaut à environ 14 % de tous les jetons ETH existants à l’époque. Cependant, la catastrophe n’est survenue qu’un mois plus tard.
En juin 2016, un pirate informatique inconnu a réussi à exploiter les vulnérabilités du contrat intelligent DAO. Le pirate informatique a drainé 3,6 millions d’ETH vers un sous-contrat sous son contrôle. En raison de la façon dont le contrat DAO a été établi, le pirate informatique ne pourrait pas déplacer l’ETH vers un portefeuille externe pendant une période de 34 jours.
Cela a créé un scénario unique pour la communauté Ethereum où elle avait 34 jours pour décider de la manière de gérer la situation. Finalement (après de nombreux débats), il a été décidé qu’un hard fork aurait lieu pour extraire tous les fonds du contrat DAO et les placer dans un contrat de retrait uniquement où les investisseurs d’origine pourraient retirer leurs jetons dans leur propre portefeuille.
Dans la période qui a suivi, la communauté Ethereum a traversé une période intense avec des débats vicieux entre opposants et partisans du fork.
Cela a conduit à une scission de la chaîne pendant le hard fork et les adversaires du fork ont qualifié leur projet d’Ethereum Classic (ETC). Ses partisans considèrent ETC comme la chaîne originale qui reste fidèle au principe d’immuabilité d’Ethereum.
Initialement, l’ETH et l’ETC ont presque atteint la parité en termes de valorisation, démontrant la gravité du fossé au sein de la communauté. Aujourd’hui, la capitalisation boursière des ETC ne représente qu’environ 0,5 % de la capitalisation boursière des ETH, mais le fait qu’elle existe toujours témoigne de la sensibilité de la question de l’immuabilité et des hard forks.
Comment l’incident de DAO a influencé la réponse de la communauté au bug de parité
En raison de l’expérience traumatisante du piratage de DAO et des conséquences qui ont suivi, il existe naturellement une forte résistance à tout type de nouveau hard fork ou de rollback sur la blockchain Ethereum. Cependant, les fonds du portefeuille multisig Parity ne peuvent être récupérés que par un hard fork.
D’un point de vue technique, il ne serait pas très compliqué de réinsérer du code de contrat dans la bibliothèque supprimée pour restaurer la fonctionnalité de retrait.
Le débat n’est donc pas de nature technique, mais plutôt politique. D’un côté, nous avons les victimes et les partisans du recouvrement des fonds. De l’autre côté, nous avons les investisseurs d’Ethereum qui craignent que toute intervention ne conduise à ternir à nouveau l’immuabilité d’Ethereum et aux éventuelles retombées observées auparavant avec le piratage de DAO.
Le résultat ? Une impasse dans laquelle aucune mesure n’a jamais été prise au-delà de propositions visant à y remédier qui n’ont jamais été approuvées.
Une nouvelle solution émerge
Début 2024, un groupe de détenteurs d’ETH touchés par le bug de parité se sont regroupés sur un serveur Discord appelé Locked Ether Collective pour voir s’ils pouvaient trouver une solution à leur malheur commun.
En octobre 2024, ils ont contacté la communauté de l’ETH à la recherche d’idées et de collaborations. Grâce à des discussions plus approfondies et à de nombreux affinements au sein du groupe, leur proposition a lentement commencé à prendre forme.
Aujourd’hui, ils ont rendu public leur proposition dans l’espoir de convaincre la grande communauté des EPF de ses mérites.
Protocole de récupération de fonds Ethereum (EFRP)
Leur nouvelle proposition ne ressemble à aucune de celles proposées auparavant. Notamment, cela peut s’appliquer à d’autres scénarios similaires, et ne se limite pas au gel du portefeuille Parity qui a inspiré la proposition.
La proposition, appelée Ethereum Fund Recovery Protocol (EFRP), a le potentiel de voir des milliers d’utilisateurs récupérer des fonds que l’on croyait perdus depuis longtemps. Il s’agit d’un protocole de récupération général ouvert à tous, quelle que soit sa taille.
Au lieu d’essayer de récupérer directement l’ETH gelé (ce qui ne peut être réalisé que via un hard fork), la proposition envisage de brûler l’ETH verrouillé et de donner aux détenteurs un jeton de compensation appelé sETH. Au fil du temps, le sETH serait remplacé par l’ETH provenant de la redirection des frais de transaction de base qui sont actuellement brûlés via l’EIP-1559. Au fil du temps, ce processus permettrait de rétablir l’intégrité des victimes du bug de parité.
La proposition EFRP comprend également la formation d’un petit DAO qui superviserait le processus et gérerait la distribution des jetons sETH.
Disposer d’un protocole de récupération général fonctionnel pourrait améliorer la confiance dans l’interaction avec les contrats intelligents sur la blockchain Ethereum. Cela contribuerait à réduire la barrière à l’entrée des utilisateurs de la blockchain sans sacrifier l’immuabilité ou la décentralisation.
Il reste cependant à voir si leur proposition sera acceptée par les investisseurs d’Ethereum.
Le 7 novembre 2017, l’utilisateur de Github devops199 a publié un message simple : « Je l’ai tué accidentellement ».
Le message comprenait un lien vers une transaction sur la blockchain Ethereum qui a effectivement entraîné le gel permanent de 513 774 ETH (d’une valeur actuelle de plus de 1,7 milliard de dollars), affectant des milliers de détenteurs.
Aujourd’hui, un groupe de détenteurs dont l’ETH est bloqué dans le contrat intelligent propose un plan pour récupérer les fonds.
Comment 513 774 ETH ont-ils été soudainement gelés ?
Le 6 novembre 2017, devops199 s’amusait sur la blockchain Ethereum, comme le font de nombreux développeurs pour jouer avec la plateforme de contrats intelligents basée sur Solidity. Au cours de cette exploration, devops199 a trouvé un portefeuille non initialisé et a procédé à son initialisation, devenant ainsi l’unique propriétaire. Leur décision suivante a été d’utiliser la fonction kill, détruisant les données contractuelles du portefeuille (la motivation de Devops199 pour cela n’est pas claire).
Il s’est avéré que ce portefeuille était la bibliothèque sur laquelle tous les portefeuilles multisig Parity s’appuyaient pour fonctionner. Après avoir appelé la fonction kill, devops199 s’est rendu sur Github et a signalé ce qui s’était passé.
Alors que le mème « Je l’ai tué accidentellement » est devenu un témoignage de la nature expérimentale d’Ethereum et des contrats intelligents, les victimes sont toujours laissées dans les limbes, sans aucun moyen d’accéder à leurs fonds. Les fonds ne sont ni perdus, ni volés, ni brûlés. Ils sont essentiellement simplement gelés, toujours en sécurité dans le portefeuille multisig dans lequel ils ont été placés il y a 8 ans.
Un bref récapitulatif des tentatives de récupération
En 2017 et 2018, plusieurs EIP et propositions ont été proposés pour résoudre le problème et permettre aux victimes d’accéder à leurs fonds. Cependant, aucun n’a été accepté par la communauté Ethereum.
Seulement un an et demi avant l’incident du bug Parity, il y avait un projet massif sur la blockchain Ethereum appelé « le DAO ». Le projet visait à être un fonds d’investissement natif d’Ethereum et a obtenu le soutien massif des détenteurs d’ETH.
En 28 jours, la vente participative a permis de récolter la somme impressionnante de 11,5 millions d’ETH, ce qui équivaut à environ 14 % de tous les jetons ETH existants à l’époque. Cependant, la catastrophe n’est survenue qu’un mois plus tard.
En juin 2016, un pirate informatique inconnu a réussi à exploiter les vulnérabilités du contrat intelligent DAO. Le pirate informatique a drainé 3,6 millions d’ETH vers un sous-contrat sous son contrôle. En raison de la façon dont le contrat DAO a été établi, le pirate informatique ne pourrait pas déplacer l’ETH vers un portefeuille externe pendant une période de 34 jours.
Cela a créé un scénario unique pour la communauté Ethereum où elle avait 34 jours pour décider de la manière de gérer la situation. Finalement (après de nombreux débats), il a été décidé qu’un hard fork aurait lieu pour extraire tous les fonds du contrat DAO et les placer dans un contrat de retrait uniquement où les investisseurs d’origine pourraient retirer leurs jetons dans leur propre portefeuille.
Dans la période qui a suivi, la communauté Ethereum a traversé une période intense avec des débats vicieux entre opposants et partisans du fork.
Cela a conduit à une scission de la chaîne pendant le hard fork et les adversaires du fork ont qualifié leur projet d’Ethereum Classic (ETC). Ses partisans considèrent ETC comme la chaîne originale qui reste fidèle au principe d’immuabilité d’Ethereum.
Initialement, l’ETH et l’ETC ont presque atteint la parité en termes de valorisation, démontrant la gravité du fossé au sein de la communauté. Aujourd’hui, la capitalisation boursière des ETC ne représente qu’environ 0,5 % de la capitalisation boursière des ETH, mais le fait qu’elle existe toujours témoigne de la sensibilité de la question de l’immuabilité et des hard forks.
Comment l’incident de DAO a influencé la réponse de la communauté au bug de parité
En raison de l’expérience traumatisante du piratage de DAO et des conséquences qui ont suivi, il existe naturellement une forte résistance à tout type de nouveau hard fork ou de rollback sur la blockchain Ethereum. Cependant, les fonds du portefeuille multisig Parity ne peuvent être récupérés que par un hard fork.
D’un point de vue technique, il ne serait pas très compliqué de réinsérer du code de contrat dans la bibliothèque supprimée pour restaurer la fonctionnalité de retrait.
Le débat n’est donc pas de nature technique, mais plutôt politique. D’un côté, nous avons les victimes et les partisans du recouvrement des fonds. De l’autre côté, nous avons les investisseurs d’Ethereum qui craignent que toute intervention ne conduise à ternir à nouveau l’immuabilité d’Ethereum et aux éventuelles retombées observées auparavant avec le piratage de DAO.
Le résultat ? Une impasse dans laquelle aucune mesure n’a jamais été prise au-delà de propositions visant à y remédier qui n’ont jamais été approuvées.
Une nouvelle solution émerge
Début 2024, un groupe de détenteurs d’ETH touchés par le bug de parité se sont regroupés sur un serveur Discord appelé Locked Ether Collective pour voir s’ils pouvaient trouver une solution à leur malheur commun.
En octobre 2024, ils ont contacté la communauté de l’ETH à la recherche d’idées et de collaborations. Grâce à des discussions plus approfondies et à de nombreux affinements au sein du groupe, leur proposition a lentement commencé à prendre forme.
Aujourd’hui, ils ont rendu public leur proposition dans l’espoir de convaincre la grande communauté des EPF de ses mérites.
Protocole de récupération de fonds Ethereum (EFRP)
Leur nouvelle proposition ne ressemble à aucune de celles proposées auparavant. Notamment, cela peut s’appliquer à d’autres scénarios similaires, et ne se limite pas au gel du portefeuille Parity qui a inspiré la proposition.
La proposition, appelée Ethereum Fund Recovery Protocol (EFRP), a le potentiel de voir des milliers d’utilisateurs récupérer des fonds que l’on croyait perdus depuis longtemps. Il s’agit d’un protocole de récupération général ouvert à tous, quelle que soit sa taille.
Au lieu d’essayer de récupérer directement l’ETH gelé (ce qui ne peut être réalisé que via un hard fork), la proposition envisage de brûler l’ETH verrouillé et de donner aux détenteurs un jeton de compensation appelé sETH. Au fil du temps, le sETH serait remplacé par l’ETH provenant de la redirection des frais de transaction de base qui sont actuellement brûlés via l’EIP-1559. Au fil du temps, ce processus permettrait de rétablir l’intégrité des victimes du bug de parité.
La proposition EFRP comprend également la formation d’un petit DAO qui superviserait le processus et gérerait la distribution des jetons sETH.
Disposer d’un protocole de récupération général fonctionnel pourrait améliorer la confiance dans l’interaction avec les contrats intelligents sur la blockchain Ethereum. Cela contribuerait à réduire la barrière à l’entrée des utilisateurs de la blockchain sans sacrifier l’immuabilité ou la décentralisation.
Il reste cependant à voir si leur proposition sera acceptée par les investisseurs d’Ethereum.