Νέο σφάλμα Bitcoin Lightning Network: Μη αποδοθείσα δρομολόγηση πληρωμών

Οι προγραμματιστές Bitcoin είναι συζητώντας ένα νέο σφάλμα Lightning Network που μπορεί να προκαλέσει αποτυχίες δρομολόγησης πληρωμών που δεν αποδίδονται. Αυτό το σφάλμα μπορεί να προκαλέσει την αποτυχία των πληρωμών του Lightning Network χωρίς τα εμπλεκόμενα μέρη να γνωρίζουν γιατί.

Σε αντίθεση με το βασικό επίπεδο Bitcoin όπου χιλιάδες χειριστές κόμβων επικυρώνουν τις συναλλαγές, οι πληρωμές Lightning μπορούν να περιλαμβάνουν μόνο δύο άτομα. Οι χρήστες θυσιάζουν σκόπιμα την ασφάλεια του blockchain του Bitcoin σε αντάλλαγμα για μεγαλύτερες ταχύτητες και φθηνότερες χρεώσεις.

Μέσα στο Lightning Network, οι πληρωμές μπορεί να αποτύχουν εάν κάτι πάει στραβά με οποιοδήποτε βήμα σε διάφορες διαδικασίες πολλαπλών υπογραφών. Για παράδειγμα, ο τελικός παραλήπτης μπορεί να αρνηθεί να αποδεσμεύσει μια προεικόνα που επιβεβαιώνει ότι έλαβε την πληρωμή ή ένας κόμβος Lightning Network μπορεί να βγει εκτός σύνδεσης.

Μια μη αποδοθείσα αποτυχία δρομολόγησης πληρωμής σημαίνει ότι το οι ξοδευτές δεν θα ήξεραν καν τι πήγε στραβά. Είτε ένα μήνυμα σφάλματος καταστράφηκε κατά την επιστροφή στον αποστολέα, είτε δεν έλαβαν ποτέ μήνυμα. Μπορεί να συνεχίσουν να προσπαθούν να χρησιμοποιήσουν έναν ελαττωματικό κόμβο χωρίς καν να συνειδητοποιήσουν ότι υπάρχει πρόβλημα.

Εάν οι χρήστες λάβουν μια ειδοποίηση για το τι πήγε στραβά, μπορούν να δοκιμάσουν ξανά αφού κάνουν μερικές προσαρμογές, όπως μετάβαση σε διαφορετικό κόμβο Lightning Network.

Πιθανές λύσεις για την αποτυχία μη αποδιδόμενης δρομολόγησης πληρωμών

Ο προγραμματιστής Joost Jager περίμενε αυτό το ζήτημα και προτείνεται μια λύση το 2019. Παρατήρησε ότι ένα κανάλι πληρωμής θα μπορούσε να πάρει πολύ χρόνο για να επιβεβαιώσει ότι η συναλλαγή ολοκληρώθηκε. Συνέστησε την προσθήκη δύο χρονικών σφραγίδων στα μηνύματα που στέλνουν οι κόμβοι στον αποστολέα της συναλλαγής. Η μία χρονική σήμανση αντιπροσωπεύει τη στιγμή που ο κόμβος έλαβε τη συναλλαγή και η άλλη χρονική σήμανση όταν ο κόμβος μετέφερε τη συναλλαγή στην επόμενη στάση του. Και οι δύο χρονικές σημάνσεις θα δώστε στους αποστολείς μια ιδέα για το ποια κανάλια καθυστερούν να αναμεταδώσουν συναλλαγές και αποφύγετε αυτά τα κανάλια στο μέλλον.

Στις 19 Οκτωβρίου 2022, ο Jager δημοσιεύτηκε μια ενημερωμένη έκδοση της μη αποδιδόμενης επιδιόρθωσης δρομολόγησης πληρωμών που θα βελτίωνε τα μηνύματα αποτυχίας, ώστε να μην φαίνονται σαν ασυναρτησίες σε έναν αποστολέα. Τα βελτιωμένα μηνύματα θα επιτρέψουν στους αποστολείς να προσδιορίσουν τον ακριβή κόμβο που προκάλεσε την αποτυχία της συναλλαγής τους, ώστε να μπορούν να τον αποκλείσουν από μελλοντικές συναλλαγές.

Σκουριασμένος Ράσελ πρότειναν μια εναλλακτική λύση: Κάθε κόμβος δρομολόγησης θα πληρώνεται μία φορά ακόμη και όταν μια συναλλαγή αποτύχει. Οι αποστολείς μπορούσαν να πουν ποιος κόμβος δρομολόγησης απέτυχε συγκρίνοντας τον αριθμό των satoshi που στάλθηκαν με τον αριθμό των satoshi που έλαβαν πίσω. Αυτή η τεχνική μέτρησης satoshi θα λειτουργούσε ακόμα κι αν ένα μήνυμα σφάλματος καταστρεφόταν. (Σημείωση: Ένα satoshi ισούται με το εκατομμυριοστό του bitcoin.)

Οι υλοποιήσεις LND του Lightning Network μαστίζονται από σφάλματα

Την 1η Νοεμβρίου 2022, Lightning Labs κυκλοφόρησε μια επείγουσα ενημέρωση για τη διόρθωση ενός σφάλματος που προκάλεσε την αποτυχία των κόμβων LND να αναλύσουν τις συναλλαγές που χρειάζονταν πολλές εισαγωγές μαρτύρων. Οι κόμβοι που δεν ενημερώνονται ενδέχεται να αποτύχουν να αποτρέψουν το κλείσιμο κακόβουλου καναλιού μόλις λήξουν τα χρονικά κλειδώματα.

Ένας προγραμματιστής γνωστός ως "Burak" πυροδότησε το σφάλμα με μια συναλλαγή που περιέχει το μήνυμα, «θα τρέξεις το CLN [Core Lightning] και θα είσαι ευτυχισμένος».

Ο Burak επιτέθηκε με επιτυχία στο LND Lightning. Εις διπλούν.

Ο Burak ενεργοποίησε ένα παρόμοιο σφάλμα στις 9 Οκτωβρίου 2022, όταν ο ανώνυμος προγραμματιστής έστειλε μια συναλλαγή multisig tapscript 998-από-999. Αυτός ο τύπος συναλλαγής θα απαιτούσε 998 υπογραφές ιδιωτικού κλειδιού για τον έλεγχο ταυτότητας, καθιστώντας δύσκολη την επιτυχή ώθησή του. Αυτός καυχήθηκε για να το κάνετε με χρέωση 4.90 $.

Διαβάστε περισσότερα: Σφάλμα παγώνει το bitcoin μέσα στο Lightning Network για ώρες

Ο χρήστης του Twitter Stadicus που ονομάζεται οι επιθέσεις μια «άγρια ​​κατάρριψη» και πρότεινε την έναρξη ενός προγράμματος επιβράβευσης σφαλμάτων.

Ένας χάκερ με το όνομα Άντονι Τάουνς ισχυρίστηκε προσπάθησε να προειδοποιήσει τους προγραμματιστές του Lightning Network για το σφάλμα, αλλά λέει ότι το αποθετήριο btcd φαίνεται να στερείται μηχανισμού για την αναφορά σφαλμάτων ασφαλείας.

Δύο προγραμματιστές του Lightning Network πρότειναν πιθανές λύσεις για το ζήτημα αποτυχίας δρομολόγησης πληρωμών που δεν έχει αποδοθεί. Με τη βελτίωση των μηνυμάτων, η πρόταση του Joost Jager θα διευκόλυνε τον εντοπισμό του προβλήματος. Η πρόταση του Ράσελ θα έκανε κοστίζει στους αποστολείς μερικά περισσότερα satoshi, ωστόσο καθιστούν δυνατή την ανίχνευση του προβλήματος ακόμα κι αν ένα μήνυμα δεν επιστρέψει στον αποστολέα. Εν τω μεταξύ, οι προγραμματιστές διορθώνουν σφάλματα που μπορεί να προκαλέσουν την αποτυχία των κόμβων LND εξαρχής.

Για περισσότερα ενημερωμένα νέα, ακολουθήστε μας Twitter και  ειδήσεις Google ή ακούστε το ερευνητικό μας podcast Καινοτομία: Blockchain City.

Πηγή: https://protos.com/new-bitcoin-lightning-network-bug-unattributed-payment-routing/