La SegWit di Bitcoin ha creato Lighting Network

La Blockchain è la raccolta di tutte le transazioni di Bitcoin, sostenuta da una rete di computer sparsi in tutto il mondo appartenenti ai miners, che lasciano acceso il proprio PC per validare e mettere al sicuro tutte le transazioni che gli utilizzatori dei Bitcoin stanno effettuando in quel momento. Ogni volta che un miner riesce a validare un blocco di transazione (che attualmente pesa 1 MB) vince un premio in denaro costituito da Bitcoin nuovi e da tutte le commissioni associate alla transazioni. Il blocco però dovrà essere scaricato anche da tutti gli altri miners in modo tale che tutti abbiano una versione aggiornata della Blockchain. Il sistema ha una sicurezza tale da rendere la rete dei Bitcoin praticamente impenetrabile per qualunque Hacker. Il problema più evidente è però la lentezza di questo processo: la Blockchain riesce a validare solo 7 transazioni al secondo, a causa del fatto che un singolo blocco della Blockchain “pesa” 1MB, calcolato ogni 10 minuti. Il circuito Visa invece è in grado di gestire circa 2000 transazioni al secondo, e può arrivare fino a 56.000 transazioni al secondo. E’ chiaro quindi che attualmente Bitcoin non può assolutamente soppiantare un sistema monetario attuale, a causa della estrema lentezza dovuta alla dimensione del blocco di 1MB. Ci si potrebbe domandare perché la dimensione del blocco non venga aumentata, ma questo andrebbe a gravare su tutta la Blockchain dove ogni miner deve scaricare lo storico di tutte le transazioni sul proprio PC che dal 2009 ad oggi sono pari a più di 120 gigabyte che costituiscono l’archivio degli spostamenti di denaro.

Tutto questo perché la rete è decentralizzata e non esiste nessuna entità centrale  in grado di controllare tutte le transazioni  dato che solo “tutti” i miners che hanno più potenza di calcolo di qualsiasi altro ognuno dei quali deve avere tutto il database di Bitcoin per partecipare alla Blockchain. Se il peso del blocco calcolato ogni 10 minuti aumenta, la Blockchain aumenterebbe in modo spropositato. Già oggi il suo peso aumenta di più di 4GB ogni mese, ovvero circa 50GB all’anno. Se raddoppiassimo la dimensione del blocco ciò implicherebbe un aumento di 100GB annui. Se la rete dovesse gestire 2.000 transazioni come il circuito Visa, il peso totale aumenterebbe di diversi terabyte l’anno, con la conseguenza di rendere inaccessibile la Blockchain alla maggior parte degli operatori. Bitcoin è nato come sistema decentrato e deve garantire la possibilità a più utenti di entrare a farne parte. Per questo Bitcoin ha introdotto l’aggiornamento SegWit che porta la Lightning Network alla realtà e permette di avere un sistema di transazioni che non va più a gravare sul peso della Blockchain.

La Lightning Network è la soluzione che alleggerisce il peso delle transazioni sulla Blockchain

Lightning Network è stata introdotta all’inizio del 2018, con la creazione di SegWit e funziona con transazioni off-chain, ovvero al di fuori della Blockchain, ed ha l’obiettivo di ridurre le transazioni da calcolare da parte dei miners. Il vero funzionamento di questo scambio di Bitcoin off-chain è molto complesso, e può essere meglio analizzato su portali specializzati , ma qui cerchiamo di spiegarne gli elementi basilari.

Prendiamo come esempio due persone che si chiamano Bob e Tom (nomi ‘a caso’) che vogliono creare un canale di scambio di Bitcoin tra di loro: Bob è uno scienziato che vende molte cianfrusaglie tecnologiche mentre Tom è un suo fedele acquirente, quindi è chiaro il suo interesse nell’aprire un canale di pagamento che non passi per la Blockchain, così da essere rapido ed evitare le commissioni (anche se questo non è proprio vero, ma ci arriveremo alla fine). Dunque Bob e Tom aprono un canale nel quale mettono una cifra ciascuno, per esempio 2 Bitcoin a testa per un totale di 4 Bitcoin. In questo modo creano una opening transaction che deve passare per la Blockchain perché chiaramente deve essere tracciato che Bob e Tom hanno messo ognuno 2 Bitcoin a testa su un fondo comune che non è più gestito on-chain (nella cantena) ma off-chain (fuori dalla catena). Il realtà la Blockchain non saprà nulla di quello che accade in quel canale se non l’esito finale quando viene chiuso (potenzialmente può rimanere aperto per sempre).

In questo caso il canale è bidirezionale, dato che infatti entrambi partecipano alla opening transaction. Ora Tom vuole spendere 1 Bitcoin per comprare un collare elettronico per il suo cane e crea una transazione detta commitment transaction nella quale indica che invia 1 Bitcoin a sé stesso (dal canale creato) e 3 Bitcoin a Bob e dà questa commitment transaction a Bob, in modo che se vorrà chiudere il canale gli basterà inviare questa transazione (firmata da Tom, ovvero approvata). Allo stesso modo Bob crea una commitment transaction speculare e la invia a Tom firmata. Le commitment transactionnon non vengono inviate alla Blockchain perché devono rimanere off-chain, e quindi viene inviato solo lo stato finale del canale ai miners, quando cioè sia Bob che Tom decideranno di chiudere il canale. Diciamo che è una garanzia per entrambi affinché nessuno dei due pensi di truffare l’altro. Se nessuno fa il furbo, non c’è alcun interesse nel terminare il canale. Supponiamo che Tom si accorga che il collare è rotto e voglia farsi rimborsare da Bob: a questo punto è chiaro che Bob dovrà ridare 1 Bitcoin a Tom, quindi serviranno altre due commitment transaction che assegnano 2 Bitcoin a testa e che aggiornano lo stato finale della transazioni sostituendo le precedenti commitment transaction.

Se una delle due parti cerca di inviare le vecchie commitment transaction alla Blockchain per derubare l’altro dovrà aspettare un certo lasso di tempo prima di vedersi riconosciuta la transazione: quel tempo viene fissato per far sì che l’altra persona se ne possa accorgere e possa reclamare tutti i Bitcoin di tutto il canale per via del furto. Perché? Perché la commitment transaction è fatta in modo che se Bob invia la prima commitment transaction che attesta che spettano 3 Bitcoin a lui e 1 a Tom (nonostante gli avesse promesso il rimborso di 1 Bitcoin firmando la seconda commitment transaction), allora non farà altro che inviare subito 1 Bitcoin a Tom ma dovrebbe aspettare 1000 Blocchi validati dai miners prima di poter ricevere i restanti 3 Bitcoin. Nel frattempo Tom, avendo la commitment transaction più recente firmata da Bob che attesta che spettano 2 Bitcoin ad ognuno, potrebbe identificare il tentativo di furto e reclamare tutti i Bitcoin del canale. Il fatto che il potenziale ladro possa perdere tutti i Bitcoin disincentiva il tentativo di furto. Comunque vadano le cose, l’ultima transazione che sancisce la chiusura del canale è lo stato finale di come sono distribuiti i Bitcoin tra le due parti e devranno essere notificati alla Blockchain.

Conseguenze delle transazioni off-chain

Chiaramente il procedimento è stato semplificato (per quanto possibile) nel precedente paragrafo ma il meccanismo teorico è quello descritto. Nei canali a più persone il discorso si complica maggiormente tanto che potrebbero essere necessari degli intermediari finanziari o comunque la presenza di banche che possano garantire un flusso regolare dei Bitcoin senza che ci siano problemi dovuti alla mancanza di fondi in un nodo della Lightning network o ad eventuali attese eccessivamente lunghe. Quindi in questo caso, nonostante la Blockchain rimanga a tutti gli effetti decentralizzata, tutte le operazioni off-chain potrebbero comunque richiedere delle piccoli commissioni dovute alla presenza di un intermediario.

Questo punto in particolare ha generato la nascita del Bitcoin Cash, basata proprio dal fatto che la Blockchain non avrebbe più avuto il controllo dei canali tra gli utenti, dunque nessuna commissione per i miners nonché l’introduzione di intermediari finanziari. Il 21 agosto scorso tutti i software Bitcoin sono stati aggiornati per riconoscere la SegWit e quindi la Lightning Network, e da lì si è assistito ad un banco di prova importante prima del futuro  SegWit2x, cioè il raddoppio del blocco da 1 MB a 2MB richiesto a gran voce da alcuni miners che dovrebbe entrare in attività prima della fine dell’anno. L’ obiettivo è chiaro: Bitcoin vuole evitare qualsiasi pericolo di scissione per diventare una rete di scambio monetario che possa arrivare a quantità di transazioni per secondo paragonabili a quelle del circuito Visa.

2 risposte a “La SegWit di Bitcoin ha creato Lighting Network”

  1. We stumbled over here from a different web address and thought I should check things out. I like what I see so now i’m following you. Look forward to looking at your web page for a second time.

  2. My brother recommended I might like this blog. He was entirely right. This post truly made my day. You cann’t imagine just how much time I had spent for this information! Thanks!

Lascia un commento

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.