Blockchain Innovazione Tecnologia

Lightning network, transazioni fuori catena

Ho precedentemente spiegato, partendo dal basso andando verso l’alto, come funziona e com’è composta una blockchain (“Blockchain, il registro distribuito in catene di blocchi“) e molti dei suoi livelli, partendo dagli “Algoritmi di consenso“, finendo per spiegare l’eventuale evoluzione su piattaforme complementari che lavorano su altri livelli, disambiguando dall’architettura di una rete in “Layer 0, layer 1 e layer 2. Quali le differenze?” . L’argomento viene affrontato meglio in quest’ultimo, nel podcast in testa all’articolo.
In questi articoli ho anche introdotto il problema relativo al trilemma, che mette al centro delle problematiche di sviluppo di una rete blockchain tre fattori cardine: sicurezza, scalabilità e decentralizzazione.
Lightning Network si colloca in un preciso posto a risolvere uno specifico problema.

Peccato originale

Il peccato originale della blockchain di Bitcoin, che è un po’ l’ambiente “genitore” rispetto a tutte le tecnologie che sono venute a seguire, non è di certo la decentralizzazione o la sicurezza.

No, questa volta non stiamo parlando di mercato ed investimenti, ma di scalabilità tecnica. Il vero peccato originale di Bitcoin è la mancanza di scalabilità che non permette il suo utilizzo in maniera agevole per lo scambio di valore, questo è un enorme ostacolo verso l’adozione.

Sotto questi due punti di vista Bitcoin è, nonostante la sua “veneranda” età, uno dei migliori in assoluto. Può vantare una delle reti blockchain più decentralizzate al mondo e anche, grazie al suo algoritmo di consenso unito ad un alto hashrate dato dai nodi distribuiti (miners), altissimi livelli di sicurezza.
Fin dal primo blocco nel 2009, Bitcoin ha continuamente dimostrato di avere le caratteristiche di resilienza e durabilità. Ha un tempo di uptime del 99,98%, con zero interruzioni in quasi un decennio. Questo particolare, lo pone al di sopra dei giganti della tecnologia come Amazon, Google e Facebook, trattandosi per di più di un’affidabilità che, per la prima volta nella storia, non proviene da un’autorità centrale.
Il suo peccato originale è la scalabilità. In effetti nonostante la sicurezza, la stabilità e la decentralizzazione, la velocità delle transazioni è inchiodata da diverso tempo sulle 7 transazioni per secondo.
Nel corso del’ultimo decennio sono stati pensati diversi metodi per aumentarne la scalabilità, dagli hard fork, ai layer 2.
Lightning Network è la risposta a questa esigenza, un livello superiore in grado di tenere una parte delle transazioni off-chain.

Transazioni off-chain

Nel 2016, Dryja e Poon hanno fondato Lightning Labs, una società dedicata allo sviluppo di Lightning Network, un’infrastruttura di livello 2 che persegue l’obiettivo di rendere Bitcoin transitabile velocemente e con bassi costi di commissione al fine di accelerarne l’adozione.

Lightning Network non è una modifica all’originale blockchain di Bitcoin, ma semplicemente un livello aggiuntivo, una chain che crea un secondo strato, che non avrebbe motivo ne modo di esistere senza quella principale.
Le transazioni rimangono comunque tra due soggetti senza intermediario e vengono compilate in questa chain aggiuntiva, che nonostante non crei il sovraccarico della scrittura immediata sul layer 1, beneficia ugualmente della sua decentralizzazione sfruttandone l’enorme sicurezza.
Cerchiamo di approfondirne il funzionamento.
Se Marco e Luca devono effettuare uno scambio di valore tra di loro, apriranno un canale diretto su Lightning Network. Questo canale non scrive transazioni sul network principale di Bitcoin, ma sul secondo livello.
Marco invierà a Luca 0.01 BTC per 5 volte per un totale di 0.05 BTC, mentre Luca invierà a Marco 0.08 BTC.
A questo punto Luca e Marco decideranno di chiudere questo canale LN (Lightining Network) che non scriverà tutte le transazioni sulla blockchain principale, ma solo il passaggio finale di 0.03 BTC di Luca verso Marco. In questo modo tutte le transazioni effettuate nel mezzo non ricadranno sulla capacità della rete principale, andando a snellire il traffico.
Ma ovviamente non è tutto oro quello che luccica, questa architettura può avere dei risvolti negativi?

Svantaggi, rischi e criticità

Partiamo dal principale svantaggio dell’utilizzo della rete Lightning. Per utilizzare il layer 2 è necessario essere collegati ad un canale di pagamenti Lightning, questo preclude il suo utilizzo a tutti coloro che hanno come portafoglio un servizio che non integra questo layer 2. Quindi dato che LN non è integrato nel network principale, non rende possibile effettuare transazioni da un qualsiasi wallet verso il destinatario che desideriamo sul layer 2.
Trattandosi di un’infrastruttura aggiuntiva rispetto alla blockchain originale, questo primo svantaggio era qualcosa di immaginabile. Gli altri svantaggi derivano invece dal suo essere in stato di sviluppo. Gli stessi creatori e sviluppatori di LN si raccomandano di utilizzare il servizio solo per i micro-pagamenti piuttosto che per ingenti somme di denaro, che possono essere spostate con maggior sicurezza sulla rete originale.
Questa raccomandazione viene fatta a causa della gestione della liquidità di ogni canale di pagamento stabilito. La liquidità totale di ogni singolo account, è imposta dalla quantità di BTC che tu stesso inserisci nel tuo portafoglio Lightning.
Facciamo un esempio più chiaro. Marco apre un wallet sulla rete Lightning, non potrà ricevere nulla a causa del fatto che non ha inviato nulla, questo significa che se depositasse 0.1 BTC e ne utilizzasse 0.05 BTC, potrebbe ricevere pagamenti solo per l’equivalente della liquidità precedentemente uscita dal portafoglio, ovvero 0.05 BTC. Si tratta di un limite imposto a causa del non largo utilizzo e della fase di testing del layer 2.

Essendo ai massimi storici la liquidità su LN, si tratta di un problema che chiaramente andrà a risolversi col crescere della fiducia e con un maggiore sviluppo a fronte dei problemi che si verranno a creare quando un maggior numero di utenti e di liquidità entrerà in circolo.
L’altra funzione di LN che desta qualche perplessità è il routing dei pagamenti. Come abbiamo già detto, consiste in una rete di canali di pagamento. Ogni canale di pagamento esiste tra due utenti LN. Anche se due utenti non dispongono direttamente di un canale di pagamento tra di loro, possono inviarsi fondi a vicenda tramite uno o più utenti facenti parte della rete, che in tal caso inoltrano il pagamento dal pagatore al beneficiario. Questa dinamica crea non poche perplessità per problemi legati alla privacy.

La sfida riguarda il fatto che deve essere trovato un percorso di pagamento attraverso la rete e gli utenti, che consenta ai fondi di passare dal pagatore al beneficiario, e naturalmente sarebbe opportuno il percorso più economico, veloce e affidabile. Questo meccanismo va ad intersecarsi con il precedente problema della liquidità, innescando quindi fallimenti di transazione a causa della mancanza di quest’ultima sui nodi, che vengono sfruttati dal routing per raggiungere utenti che hanno già canali con altri utenti con cui siamo già connessi.

Nel networking formato dai vari devices informatici inseriti in una data rete, è possibile raggiungerne uno nello specifico grazie alle rotte indicate all’interno del router che può far comunicare una o più reti. Questo è quello che accadrebbe più o meno con LN tra gli utenti che sono collegati attraverso un canale, che a loro volta sono collegati ad altri. Questa interconnessione rende possibile raggiungere diversi utenti anche sena avere un canale diverso. Questa dinamica pone alcuni interrogativi sul rispetto della privacy.

I nodi LN attualmente costituiscono una mappa della rete, le informazioni riguardanti tutti i canali di pagamento sono incluse in quella mappa. Man mano che la rete crescerà saranno anche da valutare i criteri secondo i quali i nodi sceglieranno l’instradamento per far giungere i fondi al beneficiario.

Questi sono gli svantaggi funzionali di una tecnologia in fase di sviluppo che comunque possono essere migliorati nel tempo attraverso la ricerca e l’aggiornamento.
Criticità e rischi, sono invece qualcosa di più importante di cui discutere.
Uno dei primi punti su cui sono dubbiosi i detrattori di questo protocollo è la centralizzazione. Parlare di Bitcoin significa parlare di decentralizzazione, è la nemesi dell’accentramento del potere, per cui nei dibattiti di scalabilità relativa alla sua blockchain, sia che si parli di LN e layer 2, o che si parli di SegWit e di aumento della dimensione del blocco, i più integralisti hanno paura che si scivoli in una maggiore centralizzazione.

Per quanto riguarda invece la sicurezza, si mette in dubbio l’efficienza del metodo dei canali che trattano le transazioni off-chain, per andare a scriverli nella blockchain originale solo una volta chiuso il canale. Ci sono delle opinioni estremamente contrastanti in merito, ci sono diversi punti del protocollo che sono ancora da analizzare e che lo rendono inadatto o incompleto allo scopo fondamentale.
Per fare alcuni esempi, la mancanza di un registro distribuito persistente o di registrazioni, creerebbe un problema contabile per aziende o pagatori non occasionali.
Le operazioni off-chain sono ritenute trustless e in questo modo il concetto potrebbe sembrare contraddittorio.
Per mantenere la velocità della rete i tempi di timeout potrebbero essere mediamente elevati, questo potrebbe essere un buon spazio di manovra per una vulnerabilità da sfruttare per un utente malintenzionato.

Quando si parla di rete decentralizzata, sicura e trustless (senza fiducia), si intende che non è necessaria la fiducia nei confronti di un ente centrale, in quanto sarà la rete distribuita a validare le transazioni e quindi ad evitare le frodi. Come può essere trustless un’infrastruttura che svolge una transazione su canali privati? Non esiste un registro distribuito persisente, ma off-chain si intende rispetto alla chain di Bitcoin ma comunque on-chain sul layer 2? Rimarrà tutto registrato?

I miners della blockchain potrebbero causare la chiusura dei canali anticipando le scritture del layer 2 per ottenerne un vantaggio.

Queste sono solo alcune delle varie problematiche e perplessità che potrebbero esserci. Lo scopo di questo articolo è solo divulgativo, di approfondimento e di confronto con chi vorrà commentarlo, non sussiste un tentativo di dimostrare che il protocollo non funzioni correttamente.
Trattandosi di un ambiente in continuo sviluppo, alcune di queste perplessità potrebbero essere state risolte nel momento stesso in cui vengono scritte.

Considerazioni e obiettivi della tecnologia

Si è sempre discusso sullo scopo di Bitcoin, finendo per darsi diverse spiegazioni con una narrativa sempre nuova, basata su idee provenienti da filantropi, situazioni del momento, limiti della tecnologia, limiti legislativi e tanto altro.
In realtà Bitcoin nasce come una proposta di valuta, come ogni cosa che si diffonde a partire dal basso, viene adottata e regolamentata in base alla sua diffusione ed accettazione. Il suo peccato originale ne impedisce l’adozione vera, non è pensabile entrare in un negozio e pagare un caffè ad 1 euro pagandone 15 di commissione con un’attesa di 8 ore per verificarne l’avvenuta ricezione.
Per questo motivo chi spera per il futuro e crede nella democraticità di questa tecnologia, lo ha acquistato e lo detiene. Questi due fattori insieme lo hanno reso al momento qualcosa di diverso, una “riserva di valore”, come tanti lo definiscono. Definizione certamente dettata dal limite di spostamento con praticità e da una legiferazione resistente alla tecnologia per via del suo paradigma (quello della decentralizzazione) totalmente diverso da quelli conosciuti finora.
Lightning Network spinge sicuramente sull’adozione globale di Bitcoin come valuta anche in situazioni quotidiane, ed è al momento l’unica via percorribile e sufficientemente sviluppata per fare in modo che ciò avvenga.
Ciò che spero personalmente è che si crei una maggiore diffusione circa quella che è l’idea originaria e la visione del creatore di questo modello, un ecosistema democratico e non manipolabile, facilmente raggiungibile da tutti, soprattutto per la distribuzione della tecnologia come la conosciamo oggi.
Ancora oggi si diffida di queste tecnologie perché si è creata la falsa pubblica opinione tra i meno informati, che Bitcoin sia sinonimo di scommessa, un modo per fare soldi facilmente o peggio ancora un modo per frodare o delinquere godendo di una copertura.
L’argomento nasconde altri mille punti di vista e sfaccettature che non sarò probabilmente riuscito a cogliere o ad approfondire, trattandosi di un argomento estremamente complicato.
Come sempre, siamo qui a descrivere una tecnologia e una data situazione, a divulgarla e a renderla maggiormente conosciuta con le sue oggettività, i suoi pro e i suoi contro.
Sarà il futuro a svelarci i risvolti di questa storia.

Avatar photo
Daniele Contino è un sistemista reti e servizi informatici con esperienza ventennale nell'assistenza tecnica informatica. Ha lavorato sia in ambiti corporate multinazionali che come imprenditore, ricoprendo ruoli che spaziano dall'informatica, all'amministrazione, alla vendita e al commerciale. È autore, webmaster e fondatore di Superchio.it nato dalla passione per la lettura, soprattutto di saggi, e la scrittura, ma anche per la condivisione delle proprie passioni con gli altri. Missione principale del magazine è infatti quella di condividere le proprie conoscenze e tentare di divulgare le proprie competenze.