lunedì 10 ottobre 2022

Come Funziona Lightning Network: Basse Fee e Privacy (Bitcoin)

Se sei entrato nel mondo crypto da qualche anno, sicuramente ricorderai l'esperimento Lightning Network effettuato su Twitter nel 2019. Sostanzialmente da indirizzo ad indirizzo (come una staffetta), venivano aggiunti 10.000 Satoshi ad una transazione che passava da una nazione all'altra. La transazione massima avrebbe raggiunto i 4.390.000 Satoshi prima di "spegnersi". L'esperimento voleva dimostrare che Bitcoin è inarrestabile, incensurabile e può viaggiare ovunque. 
Perchè è stato inventato Lightning Network? Che collegamento ha con Bitcoin? Lightning Network cerca di risolvere il problema di scalabilità di Bitcoin che crea un blocco ogni 10 minuti di massimo 1 megabyte. 

1 megabyte=1.000.000 byte

Una transazione pesa in media 450 byte quindi facendo 1 milione diviso 450 diviso 300 secondi (10 minuti), otteniamo 3.7 TPS.  Se tu ci pensi 3.7 TPS sono poche transazioni quindi quando la rete si satura possono volerci ore prima della conferma della transazione. Sicuramente è possibile pagare più fee ma la scalabilità rimane bassa. Io ricordo che un sistema di pagamento globale dovrebbe garantire migliaia di transazioni per secondo (TPS). Un'altra cosa da sottolineare che all'aumentare del peso della transazione (sino a 4 mega per Bitcoin) aumenta il costo delle fee pagate al miner quindi alla rete (pensa ad esempio nell'includere nella transazione una jpeg, cioè un NFT).

Come migliorare la scalabilità?

1) Aumento della dimensione dei blocchi (questa soluzione è stata scelta da Bitcoin Cash che ha portato le dimensioni dei blocchi a 32 megabyte ovvero 118 TPS. Invece Bitcoin SV ha aumentato le dimensioni a 128 megabyte e poi con l'aggiornamento Quasar addirittura a 2 gigabyte)

2) Migliorare la velocità del blocco (che è di 10 minuti) quindi "avvicinarli". Questo migliora la scalabilità quindi TPS

Quali sono gli svantaggi? Se tu aumenti le dimensioni dei blocchi, avrai bisogno di hard disk sempre più grossi. La blockchain di Bitcoin ha superato già diversi gigabyte. Tu pensa cosa vorrebbe dire aumentare questo spazio di 32 volte o di 128 volte! Questo cosa vuol dire? Che hai bisogno di hardware sempre più performanti quindi ci sarà sempre meno gente a fare mining fovorendo la centralizzazione. Se invece avviciniamo i blocchi, c'è meno tempo da parte dei nodi per validare le transazioni quindi ci sarebbe bisogno, anche in questo caso, di macchinari super performanti (data center). In questo caso ci potrebbero essere anche errori/bug (problemi di sicurezza), diatribe tra validatori ed aumento dello spazio di archiviazione (perchè ci sono molti più blocchi). 


COME LIGHTNING NETWORK RISOLVE IL PROBLEMA?
Essa è una side chain quindi una soluzione off chain (p2p). Le transazioni viaggiano su una rete a parte. Trasferiti i fondi dalla blockchain di Bitcoin su questo canale, essi possono viaggiare da un wallet all'altro (sempre all'interno del canale):

Bitcoin Blockchain (OUT) --> Lightning Network (IN)

Lightining Network (wallet A) --> Lightning Network (wallet B)

Lightning Network (OUT) --> Bitcoin Blockchain (IN)

Le transazioni quindi i trasferimenti sono collateralizzati. Tu ricorda che esistono sempre 21 milioni di Bitcoin. Se tu trasferisci 3 Bitcoin, questi faranno da collaterale finendo su Lightning Network e diverranno il tuo "local balance". Tu puoi inviare al wallet B un quantitativo uguale o minore al tuo balance ovviamente. In questo canale off chain ci saranno tutte le transazioni appartenenti ad un wallet. Tutto questo avviene fuori dalla rete Bitcoin in modo privato. La chiusura del canale riporta il proprio balance on chain. Se tu avevi 1 BTC e ne hai inviato 0.3 a B, ovviamente sarai in grado di riportare on chain solo 0.7 BTC. L'invoice contiene l'hash del pagamento richiesto che conosce un certo wallet (hash time lock contract). Tutti i canali aperti da varie entità nel network rappresentano quello che si chiama "routing" perchè LN è composto da una fitta rete di nodi e canali. 
Le varie transazioni scelgono il percorso più veloce, a minor fee e con meno resistenza. Esattamente un po' quello che fanno i reali fulmini quando si scaricano a terra: seguono il percorso a minor resistenza elettrica! (essi si generano per una differenza di potenziale elevata nell'atmosfera) Tornando a LN, ogni nodo può decidere la sua routing fee (alcuni satoshi). Tuttavia quando io invio una transazione, il network sceglierà quello preferenziale a minor percorso e minor fee.
Uno dei migliori wallet è Breez.


ASPETTI NEGATIVI DI LIGHTNING NETWORK
Se le fee sono basse ci sono pochi incentivi a tenere aperto canali e nodi. Esso è meno sicuro di Bitcoin e potrebbero esserci delle vulnerabilità (tu ricorda che si tratta di una sidechain). Altro problema è che se tu non hai un nodo, nel momento in cui apri un canale (trasferendo i tuoi satoshi) stai utilizzando un servizio custodial. Il canale aperto e chiuso ha un costo e il network è un po' centralizzato perchè ci sono pochi nodi. Comunque la capacità ad oggi ha raggiunto i 5000 Bitcoin (quasi 100 milioni di dollari).

Nessun commento:

Posta un commento