Ny Bitcoin Lightning Network-fejl: Utilskrevet betalingsruting

Bitcoin udviklere er diskuterer en ny Lightning Network-fejl, der kan forårsage utilskrevet betalingsdirigeringsfejl. Denne fejl kan få Lightning Network-betalinger til at mislykkes, uden at de involverede parter ved hvorfor.

I modsætning til basislaget Bitcoin, hvor tusindvis af nodeoperatører validerer transaktioner, kan Lightning-betalinger involvere så få som to personer. Brugere ofrer målrettet sikkerheden i Bitcoins blockchain i bytte for hurtigere hastigheder og billigere gebyrer.

Inden for Lightning-netværket kan betalinger mislykkes, hvis noget går galt med et hvilket som helst trin i forskellige multisignaturprocesser. For eksempel kan slutmodtageren nægte at frigive et forhåndsbillede, der bekræfter, at de har modtaget betalingen, eller en Lightning Network-node kan gå offline.

En utilskrevet betalingsdirigeringsfejl betyder, at brugere ville ikke engang vide, hvad der gik galt. Enten er en fejlmeddelelse blevet ødelagt på vej tilbage til afsenderen, eller også har de aldrig modtaget en besked. De kan blive ved med at prøve at bruge en defekt node uden selv at indse, at der er et problem.

Hvis brugerne får en meddelelse om, hvad der gik galt, kan de prøve igen efter at have foretaget et par justeringer, f.eks. at skifte til en anden Lightning Network-knude.

Mulige løsninger på den utildelte betalingsdirigeringsfejl

Udvikler Joost Jager forudså dette problem og foreslog en løsning i 2019. Han bemærkede, at en betalingskanal kunne tage lang tid at bekræfte, at handlen gik igennem. Han anbefalede at tilføje to tidsstempler til de beskeder, som noder sender tilbage til transaktionens afsender. Det ene tidsstempel repræsenterer tidspunktet, hvor noden modtog transaktionen, og det andet tidsstempel, hvor noden videresendte transaktionen til dets næste stop. Begge tidsstempler ville give afsendere en idé om, hvilke kanaler der er langsomme til at videresende transaktioner og undgå disse kanaler i fremtiden.

Den 19. oktober 2022, Jager indsendt en opdateret version af hans utildelte betalingsdirigering, der ville forbedre fejlmeddelelser, så de ikke ville ligne volapyk for en afsender. De forbedrede meddelelser vil give afsendere mulighed for at identificere den nøjagtige node, der fik deres transaktion til at mislykkes, så de kan udelukke den fra fremtidige transaktioner.

Rusty Russell foreslog et alternativ: Hver routingknude vil blive betalt én gang, selv når en transaktion mislykkes. Afsendere kunne fortælle, hvilken routingnode der fejlede sammenligne antallet af sendte satoshis med antallet af satoshis, de modtog tilbage. Denne satoshi-tælleteknik ville fungere, selvom en fejlmeddelelse blev beskadiget. (Bemærk: En satoshi svarer til en hundrede milliontedel af en bitcoin.)

LND-implementeringer af Lightning Network plaget med fejl

Den 1. november 2022, Lightning Labs frigivet en nødopdatering til at rette en fejl, der fik LND-noder til at undlade at parse transaktioner, der havde brug for mange vidneinput. Noder, der ikke opdaterer, forhindrer muligvis ondsindede kanallukninger, når timelocks udløber.

En udvikler kendt som "Burak" udløste fejlen med en transaktion indeholdende beskeden, "du kører CLN [Core Lightning], og du vil være glad."

Burak har med succes angrebet LND Lightning. To gange.

Burak udløste en lignende fejl den 9. oktober 2022, da den anonyme udvikler sendte en 998-af-999 tapscript multisig-transaktion. Denne transaktionstype ville have krævet 998 private nøglesignaturer for at godkende, hvilket gør det vanskeligt at skubbe den igennem. Han pralede om at gøre det for et gebyr på 4.90 USD.

Læs mere: Bug fryser bitcoin inde i Lightning Network i timevis

Twitter-bruger Stadicus kaldet angrebene en "savage takedown" og foreslog at starte et bug bounty-program.

En hacker ved navn Anthony Towns hævdede han forsøgte at advare Lightning Network-udviklere om fejlen, men siger, at btcd-repoen ser ud til at mangle en mekanisme til at rapportere sikkerhedsfejl.

To Lightning Network-udviklere foreslog mulige løsninger på problemet med fejl i forbindelse med betalingsrouting. Ved at forbedre budskaberne ville Joost Jagers forslag gøre det lettere at lokalisere, hvor problemet opstod. Russells forslag ville koster afsendere nogle flere satoshis, men gør det alligevel muligt at spore problemet også selvom en besked ikke vender tilbage til afsenderen. I mellemtiden retter udviklere fejl, der kan få LND-noder til at svigte i første omgang.

For mere informerede nyheder, følg os på Twitter , Google Nyheder eller lyt til vores undersøgende podcast Fornyet: Blockchain City.

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