Les chercheurs qui examinent l'incident du Liquid Network d'environ 320 millions de dollars testent une explication impliquant une faille dans la validation des transactions qui aurait permis à des L-BTC prétendument créés par un bug d'être échangés contre de vrais Bitcoin. L'incident a commencé lorsqu'un client SideSwap a soumis 4 000 L-BTC le 6 septembre, entraînant la libération d'environ 3 996 BTC. Une reconstruction de transaction citée par Stu aurait montré environ 3 996,0183 L-BTC créés dans le bloc Liquid 4 050 336 avant le retrait.
Pourquoi c'est important
Le mécanisme proposé se concentre sur les transactions confidentielles de Liquid et les range proofs, conçus pour vérifier que les montants cachés restent dans les limites autorisées sans les révéler. Le chercheur Calle a décrit une collision de clé de cache qui pourrait permettre à une preuve invalide de réutiliser un résultat de vérification réussi. Charles Guillemet a approuvé l'explication générale, bien que Calle ait averti que son compte rendu simplifié pouvait contenir des erreurs.
La piste logicielle pourrait être aussi importante que le bug présumé. Mononaut a déclaré que le code était entré dans la branche de développement principale d'Elements la semaine précédente mais n'était pas apparu dans une version taguée, tandis que les fonctionnaires de la fédération Liquid l'auraient apparemment exécuté. D'autres nœuds auraient rejeté les transactions ou le bloc concernés. Blockstream n'a pas confirmé ce compte de déploiement dans les déclarations disponibles, rendant l'analyse post-mortem importante pour identifier les versions affectées et le chemin de défaillance.
Impact sur le marché
Le problème immédiat concerne les réserves de Bitcoin par rapport aux passifs en L-BTC. Liquid affirme que les clés de signature de la fédération n'ont pas été compromises, et les acteurs détenant le Bitcoin retiré se sont décrits comme des whitehats tout en conditionnant la plupart des retours à un correctif sur les nœuds affectés. Aucun retour complété ni déploiement de correctif n'a été établi. Les investisseurs surveilleront une analyse post-mortem reproductible, des mises à jour logicielles sur les nœuds fédérés et non fédérés, et la preuve que le processus de validation corrigé rejette la transaction invalide.
Questions fréquemment posées
-
Comment des L-BTC prétendument non adossés ont-ils pu être utilisés pour retirer de vrais BTC ?
Les chercheurs indiquent qu'une collision de clé de cache aurait contourné une vérification de range proof, permettant une sortie invalide cachée. Ces L-BTC seraient ensuite entrés dans une demande de peg-out de 4 000 L-BTC qui a libéré environ 3 996 BTC.
-
Quel est le rôle des range proofs dans les transactions Liquid ?
Les range proofs permettent aux nœuds de vérifier que les montants des transactions confidentielles restent dans les limites autorisées sans révéler les montants. Une défaillance de cette vérification pourrait permettre à une sortie cachée négative de compenser une sortie positive plus importante.
-
Le bug de validation des transactions est-il entré dans une version publiée de Liquid ?
Mononaut a déclaré que le code était entré dans la branche de développement principale d'Elements mais n'était jamais apparu dans une version taguée, tandis que les fonctionnaires de la fédération l'auraient apparemment exécuté. Blockstream n'a pas confirmé ce compte de déploiement.
-
Les clés de signature de la fédération Liquid ont-elles été compromises ?
Liquid a affirmé que ni la clé d'autorisation de peg-out de SideSwap ni d'autres clés de la fédération n'avaient été compromises. Les comptes émergents se concentrent plutôt sur la manière dont des L-BTC invalides ont atteint le processus de retrait.
-
Que faut-il pour résoudre l'incident Liquid de 320 M$ ?
Les enquêteurs ont besoin d'une analyse post-mortem identifiant le code affecté, pourquoi les nœuds fédérés ont accepté les transactions, et si le logiciel corrigé les rejette. La récupération du Bitcoin retiré résoudrait également le déficit de réserves signalé.