Bug zamrzava bitcoin u Lightning Networku satima

Kasno u nedelju, istraživači otkrili kritična greška u validaciji na LND-u, popularnoj implementaciji Bitcoin-ove Lightning Network koju zastupa Lightning Labs.

Konkretno, LND-ova implementacija Bitcoin punog čvora, BTCD, imala je grešku njegovo implementacija tap root. (BTCD je potpuna implementacija čvora za Bitcoin koji je popularan među korisnicima Lightning Network-a.)

Greška utiče na LND verzije 0.15.1 i starije. LND poziva sve korisnike da nadograde na v0.15.2.

LND greška je uticala na to kako su Lightning čvorovi funkcionisali i spriječila korisnike LND-a da na nekoliko sati izađu iz Lightning mreže sloja 2 na mainnet, sloj 1 Bitcoin. Dok je greška bila neriješena, korisnici LND-a nije mogao kreirati ili zatvoriti nove Lightning kanale.

Ogromna Taproot transakcija sa više potpisa otkrila je grešku

Istraživači su otkrili LND bug dok su testirali granice Bitcoin skriptni jezik, programski jezik Bitcoin. Željeli su testirati izuzetno napredan pametni ugovor koji je zahtijevao koautentifikaciju brojnih strana.

Da bi izvršio ovaj test, jedan istraživač, Burak, stvorio veliki Taproot sa više znakova 998 od 999 transakcija. Ovo je zahtijevalo 998 potpisa privatnog ključa za autentifikaciju slanja bitcoina — izvanredan broj supotpisnika.

Da biste tu cifru 998 stavili u kontekst, uzmite u obzir da korisnici Lightning Networka obično otvaraju kanale koristeći samo 2-od-2 transakcije s više potpisa.

Taproot transakcija 998 od 999 sa više znakova je bila prihvaćen od strane proizvođača blokova testneta. Transakcija je kasnije minirana u glavnom Bitcoin bloku. Zatim transakcija razbio LND.

Ta transakcija je zbunila metod koji je koristio LND da izračuna koji je najnoviji Bitcoin blok. Konkretno, LND nije mogao raščlaniti novi blok zbog njegovog neispravnosti biblioteka. Sljedeće poruka bi se pojavilo u evidenciji grešaka: "Nije moguće dovršiti ponovno skeniranje lanca: readScript: stavka svjedoka skripte je veća od maksimalno dozvoljene veličine."

Lightning Labs odmah počeo sa radom na LND bugu popraviti, ažurirajući BTCD-ovu biblioteku za raščlanjivanje žice i planirao izdavanje verzije 0.15.2

Čitaj više: Offline Bitcoin Lightning plaćanja će uskoro biti moguća

Ističe potrebu za uslugama nadzornog tornja za više implementacije

Nakon procesa rješavanja grešaka, istraživači su počeli izražavati potrebu za uslugama osmatračnice koje ne zavise od implementacije.

Ova greška je uticala samo na LND. LND je a popularna implementacija Lightning Network-a. Ostale implementacije uključuju Éclair i Core Lightning.

Watchtowers su usluge treće strane koje nadgledaju javno vidljivu Bitcoin Lightning mrežu i omogućavaju korisnicima da traže nadoknadu za loše ponašanje. Stražarske kule mogu pratiti sve implementacije Lightninga kako bi zaštitile korisnike tokom prekida bilo koje određene implementacije.

Na primjer, pošto se većina korisnika pridružuje Lightningu kao transakcija 2 od 2 s više potpisa, oni obično vjeruju jednoj drugoj strani da neće lagati o konačnom stanju bitcoina u međusobnom posedu prilikom zatvaranja kanala i izlaska iz mreže na mainnet Bitcoin.

Ako neko laže o bitkoinu koji posjeduje prilikom pokušaja zatvaranja Lightning kanala, korisnik koji može dokazati ovu laž može objaviti drugu, tzv. Pravda Transakcija, i uzmite 100% bitcoina na svom kanalu kao nagradu za hvatanje laži.

Toranj koji nadgleda sve implementacije (LND, Core Lightning, Éclair, itd.) mogao bi zaštititi korisnika tokom bugova ili hakova, omogućavajući im da objavljuju Justice Transactions ako neko pokuša ukrasti njihov novac tokom prekida usluge. Postoje neke male stražarske kule za više implementacije poput Oko Satoshija, ali nisu u širokoj upotrebi.

Za detaljnije vijesti, pratite nas cvrkut i Google vesti ili poslušajte naš istraživački podcast Inovirano: Blockchain City.

Izvor: https://protos.com/taproot-bug-freezes-bitcoin-inside-lightning-network-for-hours/