Bug jäädyttää bitcoinin Lightning Networkissa tuntikausia

Myöhään sunnuntaina tutkijat löysi kriittinen validointivirhe LND:ssä, Bitcoinin Lightning Networkin suositussa toteutuksessa, jota puolustaa Lightning Labs.

Tarkemmin sanottuna LND:n Bitcoinin täyden solmun toteutuksessa, BTCD:ssä, oli virhe sen toteutus Taproot. (BTCD on täydellinen solmutoteutus Bitcoinille, joka on suosittu Lightning Network -käyttäjien keskuudessa.)

Virhe vaikuttaa LND-versioihin 0.15.1 ja sitä vanhempiin. LND kehottaa kaikkia käyttäjiä päivittämään versioon 0.15.2.

LND-virhe vaikutti Lightning-solmujen toimintaan ja esti LND-käyttäjiä poistumasta kerroksen 2 Lightning-verkosta pääverkkoon, kerrokseen 1 Bitcoin muutaman tunnin ajan. Vaikka vika oli ratkaisematta, LND-käyttäjät uusia Lightning-kanavia ei voitu luoda tai sulkea.

Massiivinen multi-sig Taproot-kauppa paljasti virheen

Tutkijat löysivät LND-bugin testaamalla sen rajoja Bitcoinin komentosarjakieli, Bitcoinin ohjelmointikieli. He halusivat testata erittäin edistynyttä älysopimusta, joka vaati useiden osapuolten yhteistodennusta.

Tämän testin suorittamiseksi yksi tutkija, Burak, luotu suuri 998/999 multi-sig Taproot kauppa. Tämä vaati 998 yksityisen avaimen allekirjoitusta lähettävän bitcoinin todentamiseksi - poikkeuksellisen paljon allekirjoittajia.

Laittaaksesi 998-luvun asiayhteyteen, ota huomioon, että Lightning Networkin käyttäjät avaavat tyypillisesti kanavia käyttämällä vain 2/2 monen merkkitapahtuman tapahtumia.

998/999 usean merkin Taproot-kauppa oli testnet-lohkojen tuottajien hyväksymä. Kauppa louhittiin myöhemmin pääverkon Bitcoin-lohkossa. Sitten kauppa mursi LND.

Tämä tapahtuma hämmensi LND:n käyttämän menetelmän laskeakseen, mikä oli viimeisin Bitcoin-lohko. Tarkemmin sanottuna LND ei voinut jäsentää uutta lohkoa sen viallisen vuoksi kirjasto. Seuraavat viesti näkyy virhelokeissa: "Ei voida suorittaa ketjun uudelleenskannausta: readScript: script witness -kohde on suurempi kuin suurin sallittu koko."

Lightning Labs aloitti työt välittömästi LND bugiin korjata, päivittää BTCD:n lankojen jäsennyskirjaston ja suunnitellut julkaistavan version 0.15.2

Lue lisää: Offline Bitcoin Lightning -maksut ovat pian mahdollisia

Korostaa ristiin toteutettavien vartiotornipalvelujen tarvetta

Vianratkaisuprosessin jälkeen tutkijat alkoivat ilmaista tarvetta vartiotornipalveluihin, jotka ovat toteutusagnostisia.

Tämä virhe vaikutti vain LND:hen. LND on a Lightning Networkin suosittu toteutus. Muita toteutuksia ovat Éclair ja Core Lightning.

Vartiotornit ovat kolmannen osapuolen palveluita, jotka valvovat julkisesti katseltavissa olevaa Bitcoin Lightning Networkia ja antavat käyttäjille mahdollisuuden hakea hyvitystä väärinkäytöksestä. Vartiotornit voivat valvoa kaikkia Lightningin toteutuksia suojatakseen käyttäjiä minkä tahansa tietyn toteutuksen katkosten aikana.

Esimerkiksi koska useimmat käyttäjät liittyvät Lightningiin 2-of-2-multi-sig-tapahtumana, he yleensä luottaa siihen, että yksi vastapuoli ei valehtele lopullisesta saldosta bitcoineja toistensa hallussa suljettaessa kanavaa ja poistuttaessa verkosta pääverkkoon Bitcoiniin.

Jos joku valehtelee hallussaan olevasta bitcoinista yrittäessään sulkea Lightning-kanavaa, käyttäjä, joka voi todistaa tämän valheen, voi julkaista toisen, ns. Oikeudenmukainen kauppa, ja ottavat 100 % kanavansa bitcoinista palkkiona valheen saamisesta.

Vartiotorni, joka valvoo kaikkia toteutuksia (LND, Core Lightning, Éclair jne.), voisi suojata käyttäjää virheiden tai hakkeroinnin aikana, jolloin hän voi julkaista Justice Transactions jos joku yrittää varastaa rahojaan palvelukatkon aikana. On joitain pieniä, ristiin toteutettavia vartiotorneja, kuten Satoshin silmä, mutta niitä ei käytetä laajalti.

Saat lisätietoja uutisista seuraamalla meitä Twitter ja Google Uutiset tai kuuntele tutkivaa podcastiamme Innovoitu: Blockchain City.

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