Lightning Network. Corso base ep. 11
Di Gabriele Brambilla
Questo episodio del Corso base su Bitcoin e Criptovalute si concentra su Lightning Network, la soluzione definitiva ai problemi di scalabilità di Bitcoin (?)
Introduzione a Lightning Network
Il Corso base su Bitcoin e Criptovalute prosegue e si aggiorna costantemente: oggi parleremo di Lightning Network.
I Layer-2 sono dei network creati sulla struttura di una blockchain già esistente, conosciuta come layer-1. Ad esempio, Ethereum è un layer-1 su cui sono costruiti diversi secondi strati, fra cui Optimism e Arbitrum.
Anche Bitcoin non è da meno: il suo layer-2 è Lightning Network, ormai sempre più utilizzato.
A cosa servono queste strutture? In poche parole, i layer-2 migliorano in qualche modo la chain già esistente. Tra gli obiettivi principali, l’aumento di scalabilità e rapidità delle transazioni è quasi sempre presente.
Nel corso del video conosceremo Lightning Network partendo dal problema di fondo: perché Bitcoin non è scalabile?
Ti suggerisco di guardare l’intero episodio e utilizzare questo riassunto solo per un ripasso.
Non mi resta che augurarti buona visione!
Riassunto dell'episodio
Perché Bitcoin non è scalabile?
La famosa blockchain ha tanti pregi ma anche difetti, fra cui il peggiore è probabilmente la scarsa scalabilità. Ma perché Bitcoin non è scalabile?
Il motivo sta nella costruzione stessa.
Bitcoin è una blockchain che aggiunge un nuovo blocco ogni 10 minuti; il limite di grandezza di ciascuno di essi è di 1MB. Svolgendo un rapido calcolo, la media è di 3,7 transazioni per secondo: un dato piuttosto basso se consideriamo la missione di porsi come valuta alternativa a quelle tradizionali.
Questo limite crea inoltre un altro problema: il costo elevato delle gas fee.
Già di per sé, Bitcoin è una chain non brillante in termini di rapidità.
Nei momenti di utilizzo intenso, la situazione diventa ancor più complessa. In questi casi, per riuscire a portare avanti una transazione in tempistiche decenti si deve incrementare la quota di gas fee che siamo disposti a pagare. In caso contrario, i miners daranno precedenza a chi offre di più, con il risultato di lunghissime attese, nell’ordine di ore e ore.
Come risolvere la questione?
Sono state proposte diverse soluzioni, fra cui menzioniamo:
- Aumentare la grandezza del blocco da 1 a 32MB.
- Ridurre il tempo di emissione da 10 minuti a 10 secondi.
Entrambe le idee non liquidano definitivamente il problema; anzi, rischiano di crearne altri in tema di spazio di archiviazione e sicurezza.
Esiste però una terza via: Lightning Network.
Cos'è e come funziona Lightning Network
Lightning Network è una soluzione off-chain; perciò, dimentichiamoci sidechain e altre strutture simili.
LN è un protocollo Peer-to-peer. Infatti, le transazioni non circolano su una blockchain ma tramite un canale privato tra gli utenti.
Il meccanismo di funzionamento è semplice:
- I partecipanti aprono il canale.
- Si caricano dei fondi su di esso (bitcoin).
- Fatto ciò si possono eseguire quanti scambi desideriamo, non c’è limite.
- Al termine si può chiudere il canale.
Qual è il collegamento con il network Bitcoin?
L’apertura e la chiusura del canale avvengono on-chain. Le transazioni Peer-to-peer restano invece sul canale e non vengono condivise con la blockchain Bitcoin.
Questo meccanismo consente di avere i bilanci dei partecipanti sempre corretti, evitando però di interagire con la chain per ogni singolo movimento. Sicurezza e scalabilità garantite!
Lightning Network: esempi pratici
Vediamo come funziona Lightning Network aiutandoci con degli esempi pratici.
Scopriremo come LN offra la possibilità di scambiare somme e pagare in sicurezza, rapidamente e a costo ridotto.
Canale Lightning Network a due utenti (A e B)
Ecco il caso più semplice: due utenti che aprono un canale per inviarsi reciprocamente bitcoin. Ecco le fasi:
- Apertura del canale con transazione multisig 2×2 (entrambi gli utenti devono firmare). Questa azione avviene on-chain.
- Funding del canale con fondi dalla blockchain Bitcoin. Sia A che B caricano un certo importo a loro discrezione (questo sarà il loro limite di spesa).
- Da qui in poi, tutte le transazioni avverranno off-chain. Un sistema di accounting sovrascriverà i bilanci precedenti dopo ogni operazione.
- Prelievo dal canale o chiusura comporteranno una transazione on-chain: si torna su Bitcoin con i saldi aggiornati all’ultimo bilancio del canale.
Nel video spiego in maniera più approfondita quanto appena elencato.
Canale Lightning Network a tre utenti (A, B e C)
Un canale LN non è limitato a due partecipanti, anzi: vediamo l’esempio a tre.
Immaginiamo che A voglia inviare denaro a C; essi non hanno un canale diretto e non hanno neppure intenzione di aprirlo: infatti, se ogni volta dovessimo creare canali ad hoc non ci salveremmo più!
No problem, ecco la soluzione: sfruttare il fatto che A ha un canale con B e questi ce l’ha con C. B diventa quindi un tramite tra le parti. I passaggi sono i seguenti:
- Il ricevente (C) genera una specie di smart contract molto basilare chiamato invoice; dopodiché lo gira a B. L’invoice contiene informazioni in parte crittografate sull’ammontare da pagare.
- B riceve il documento, lo trattiene e genera il suo da inviare ad A.
- A questo punto, l’utente A può effettuare la transazione verso B, a sua volta pronto ad avviarne un’altra a beneficio di C.
- Solo chi ha generato il primo invoice (C) potrà riscattare la transazione finale e il relativo importo: grazie alla crittografia, il tramite (B) non ha alcun modo di prelevare il capitale.
La procedura appena descritta si chiama routing e consente a Lightning di diventare un vero e proprio network.
Per chiarezza, tutti i punti appena elencati non avvengono su blockchain Bitcoin.
Lightning Network
Scalando quanto appena visto, se A volesse inviare bitcoin a Q, il palleggio di fondi potrebbe coinvolgere numerosi nodi. Tutti questi movimenti accadono sul network, quindi non appesantiscono in alcun modo Bitcoin.
La transazione seguirà il percorso con minor resistenza e basse fee, proprio come i fulmini scelgono la strada per scaricare a terra.
Vantaggi e svantaggi di Lightning Network
Parliamo di vantaggi e svantaggi di Lightning Network, partendo dai primi.
Questo sistema permette di spostare bitcoin in modo rapidissimo e dai costi irrisori.
In aggiunta, LN è privato: ogni nodo vede solo le transazioni che instrada. Perciò non saprà né a che stato è il movimento né chi lo ha preceduto ed eventualmente seguirà.
Fino a qui tutto sembra bellissimo. Purtroppo dobbiamo anche elencare gli svantaggi e le criticità.
Innanzitutto la sicurezza: Lightning Network è meno sicuro di Bitcoin, soprattutto a causa della giovane età ed esperienza.
Un altro punto importante sta nel possesso o meno di un nodo. Se ne siamo privi, utilizzando ad esempio BlueWallet, ebbene sì: stiamo rivolgendoci a un servizio custodial. Ecco una articolo per saperne di più sui wallet.
Purtroppo gli incentivi ad aprire un proprio nodo sono pochi: le basse fee, ottime per chi usa il network, non portano infatti guadagni sufficienti a chi lo mantiene vivo.
Se anche volessimo aprirlo, i costi potrebbero farci cambiare idea. Il problema principale di Lightning Network è forse questo: la tendenza a rivolgersi a servizi terzi riduce i nodi a un numero esiguo.
Che dire del futuro? Ponendo rimedio alle debolezze, Lightning Network potrebbe svolgere un ruolo fondamentale nella mass adoption di bitcoin.
Abbiamo visto tanto e ora ne sappiamo certamente di più rispetto all’inizio. Se hai bisogno di approfondire qualche tema, cerca sul sito e sul mio canale YouTube: troverai tanti tutorial che faranno al caso tuo!