Problema con la rete lightning, ancora un bug nell’implementazione di lnd

È di nuovo il momento. Il bitcoiner “Burak” ha di nuovo messo fuori uso parte della rete Lightning. Si potrebbe pensare che questa sia una notizia vecchia. No! È la seconda volta in meno di un mese che ci riesce.

Parte della rete di fulmini

Questa volta si è trattato di un problema simile a quello del 10 ottobre, ma un po’ più insidioso. Al blocco 761.248, lnd si è improvvisamente fermato. Si tratta dell’implementazione di Lightning Labs utilizzata da molti nodi.

Questo blocco conteneva una transazione insolita. Si trattava ancora una volta di Burak che giocava con i parametri bínnen bitcoin, ma che non venivano rilevati correttamente all’interno di bitcoind (che utilizza lnd come underlay).

La particolarità: la transazione riportava un messaggio nell’OP_RETURN, riferito a Core Lightning – il concorrente di lnd: “eseguirai cln. e sarai felice””. Burak ha anche condiviso la soluzione direttamente su GitHub:

– La modifica del parametro maxWitnessItemsPerInput da 500.000 a 4.000.000 risolve il problema.

La causa del problema in Lnd è piuttosto tecnica. In bitcoin, esiste una regola di consenso secondo la quale il limite di “stack items” è al massimo di 1.000. In un pagamento Pay-to-Taproot, è stato in grado di superare questa regola con 500.001 “push” vuoti. Questo ha creato un conflitto tra btcd e Bitcoin Core.

Sulla mainchain, il pagamento funzionava bene, ma questo stesso pagamento causava l’abbandono dei nodi lnd.

Soluzioni

Il problema è stato risolto immediatamente e i servizi di nodi come Umbrel, MyNode e Razpiblitz hanno presto rilasciato aggiornamenti che consentono agli utenti di passare a LND v0.15.4-beta. Se state gestendo un nodo Lnd, è una buona idea prendersi un momento per attivarsi con questo!

Per inciso, il problema era già noto a Lightning Labs, in quanto Anthony Towns lo ha sollevato quindici giorni fa.

Anche Burak ha riscontrato questo problema, ma ha colto l’opportunità di sfruttarlo effettuando la transazione sulla mainnet. Avrebbe potuto affrontare il problema in altri modi (con un pagamento sulla testnet o con la divulgazione della vulnerabilità).

Di conseguenza, anche le azioni di Burak sono state criticate. È davvero etico?

https://twitter.com/r32a_/status/1587409132973334532

Su Bitcoin Focus, quindici giorni fa, si poteva già leggere un articolo dettagliato sul primo numero! Nell’edizione #110, si legge: Un cortocircuito su un fulmine mette fuori uso parte della rete.

Author