Nouveau bogue Bitcoin Lightning Network : Routage de paiement non attribué

Les développeurs Bitcoin sont discuter un nouveau bogue Lightning Network qui peut entraîner des échecs de routage de paiement non attribués. Ce bogue peut entraîner l'échec des paiements Lightning Network sans que les parties impliquées ne sachent pourquoi.

Contrairement à la couche de base Bitcoin où des milliers d'opérateurs de nœuds valident les transactions, les paiements Lightning peuvent impliquer aussi peu que deux personnes. Les utilisateurs sacrifient délibérément la sécurité de la blockchain de Bitcoin en échange de vitesses plus rapides et de frais moins chers.

Au sein du Lightning Network, les paiements peuvent échouer en cas de problème à une étape de divers processus multi-signatures. Par exemple, le destinataire final peut refuser de publier une préimage confirmant qu'il a reçu le paiement, ou un nœud Lightning Network peut se déconnecter.

Un échec de routage de paiement non attribué signifie que le les dépensiers ne sauraient même pas ce qui n'allait pas. Soit un message d'erreur a été corrompu sur le chemin du retour vers l'expéditeur, soit il n'a jamais reçu de message. Ils peuvent continuer à essayer d'utiliser un nœud défectueux sans même se rendre compte qu'il y a un problème.

Si les dépensiers reçoivent une notification sur ce qui s'est mal passé, ils peuvent réessayer après avoir effectué quelques ajustements, comme passer à un autre nœud Lightning Network.

Solutions possibles pour l'échec de routage de paiement non attribué

Le développeur Joost Jager a anticipé ce problème et proposé une solution en 2019. Il a remarqué qu'un canal de paiement pouvait prendre beaucoup de temps pour confirmer que la transaction s'était bien déroulée. Il a recommandé d'ajouter deux horodatages aux messages que les nœuds renvoient à l'expéditeur de la transaction. Un horodatage représenterait l'heure à laquelle le nœud a reçu la transaction et l'autre horodatage lorsque le nœud a relayé la transaction jusqu'à son prochain arrêt. Les deux horodatages donner aux expéditeurs une idée des canaux qui tardent à relayer les transactions et évitez ces canaux à l'avenir.

Le 19 octobre 2022, Jager posté une version mise à jour de son correctif de routage de paiement non attribué qui améliorerait les messages d'échec afin qu'ils ne ressemblent pas à du charabia pour un expéditeur. Les messages améliorés permettront aux expéditeurs d'identifier le nœud exact qui a provoqué l'échec de leur transaction afin qu'ils puissent l'exclure des transactions futures.

Russell rouillé suggéré une alternative : chaque nœud de routage serait payé un sat même lorsqu'une transaction échoue. Les expéditeurs pourraient dire quel nœud de routage a échoué par comparer le nombre de satoshis envoyés avec le nombre de satoshis qu'ils ont reçus en retour. Cette technique de comptage satoshi fonctionnerait même si un message d'erreur était corrompu. (Remarque : un satoshi équivaut à un cent millionième de bitcoin.)

Les implémentations LND de Lightning Network en proie à des erreurs

Le 1er novembre 2022, Lightning Labs libéré une mise à jour d'urgence pour corriger un bogue qui empêchait les nœuds LND d'analyser les transactions nécessitant de nombreuses entrées de témoins. Les nœuds qui ne sont pas mis à jour peuvent échouer à empêcher les fermetures de canaux malveillants une fois les délais expirés.

Un développeur connu sous le nom de "Burak" a déclenché le bogue avec une transaction contenant le message, "vous exécuterez CLN [Core Lightning] et vous serez heureux."

Burak a attaqué avec succès LND Lightning. Deux fois.

Burak a déclenché un bogue similaire le 9 octobre 2022, lorsque le développeur anonyme a envoyé une transaction multisig tapscript 998 sur 999. Ce type de transaction aurait nécessité 998 signatures de clé privée pour s'authentifier, ce qui rendrait difficile son exécution réussie. Il vanté à propos de le faire pour des frais de 4.90 $.

Lire la suite: Un bogue gèle le bitcoin dans Lightning Network pendant des heures

Utilisateur Twitter Stadicus appelé les attaques un "démantèlement sauvage" et a suggéré de lancer un programme de primes de bogue.

Un hacker nommé Anthony Towns revendiqué il a essayé d'avertir les développeurs de Lightning Network du bogue, mais dit que le repo btcd semble manquer d'un mécanisme pour signaler les bogues de sécurité.

Deux développeurs de Lightning Network ont ​​proposé des solutions possibles pour le problème d'échec de routage de paiement non attribué. En améliorant les messages, la proposition de Joost Jager permettrait de localiser plus facilement où le problème s'est produit. La proposition de Russell serait coûte aux expéditeurs quelques satoshis de plus, tout en permettant de traquer le problème même si un message ne revient pas à l'expéditeur. Pendant ce temps, les développeurs corrigent des bogues qui pourraient entraîner l'échec des nœuds LND en premier lieu.

Pour des nouvelles plus informées, suivez-nous sur Twitter ainsi que  Google Actualités ou écoutez notre podcast d'investigation Innové : Blockchain City.

Source : https://protos.com/new-bitcoin-lightning-network-bug-unattributed-payment-routing/