Principale » bancario » Lightning Network: cos'è e può risolvere il problema di ridimensionamento di Bitcoin?

Lightning Network: cos'è e può risolvere il problema di ridimensionamento di Bitcoin?

bancario : Lightning Network: cos'è e può risolvere il problema di ridimensionamento di Bitcoin?

Satashi Nakamoto ha inviato una proposta per "un nuovo sistema di cassa elettronico completamente peer-to-peer, senza terze parti di fiducia" a una mailing list di crittografia venerdì 31 ottobre 2008. La prima risposta - la prima volta che qualcuno pubblicamente ha commentato bitcoin - è arrivata la domenica seguente: "Abbiamo davvero, molto bisogno di un tale sistema", ha scritto James A. Donald, "ma il modo in cui capisco la tua proposta, non sembra adattarsi alle dimensioni richieste".

Proseguendo 10 anni dopo, quella critica suona ancora vera. Anche gli evangelisti più ardenti dei bitcoin ammettono che è inutile fare piccoli acquisti di tutti i giorni. Ma la Lightning Network, uno dei progetti di ridimensionamento bitcoin più promettenti attualmente in corso, potrebbe cambiarlo.

The Lightning Network

Parlando al Blockstack Summit di luglio 2017, l'amministratore delegato di Lightning Labs Elizabeth Stark ha citato quella prima critica alla moneta elettronica di Nakamoto, ma ha espresso la fiducia che il bitcoin può effettivamente ridimensionarsi. "Siamo praticamente di nuovo nel 1995 quando si tratta di blockchain e tecnologie decentralizzate", ha detto, riferendosi al tempo prima che Internet acquisisse HTTP e gli altri livelli di trasporto e applicazione di TCP / IP.

Tra le applicazioni "layer 2" più discusse per la blockchain bitcoin c'è la rete di fulmini. Proposto per la prima volta da Joseph Poon e Tadge, alias Thaddeus Dryja nel 2015 (la versione più recente del loro white paper è disponibile qui), il fulmine è stato elaborato in una specifica funzionale chiamata lightning-rfc o "BOLTS" da tre società, ognuna delle quali ha propria implementazione: Lightning Labs ha lnd, Blockstream ha c-lightning e ACINQ ha eclair. Ci sono anche implementazioni non BOTLS in fase di sviluppo, come il tuono.

La rete di fulmini è già attiva e funzionante, ma è nella sua infanzia estrema. Il vero bitcoin è stato inviato e quasi sempre ricevuto utilizzando le implementazioni di Lightning Labs, Blockstream e ACINQ e tutti e tre sono interoperabili. Il video qui sotto mostra un ingegnere ACINQ che invia 0, 000001 bitcoin (circa $ 0, 01) quasi istantaneamente da un nodo eclair a un nodo lnd attraverso un nodo c-lightning:

Per vedere quanto rappresenta un miglioramento, abbiamo provato una transazione simile sulla blockchain bitcoin usando GreenAddress, un'app di portafoglio mobile. L'app ha suggerito di pagare minatori 0, 00001907 BTC ($ 0, 19): una commissione del 1, 907%. Sebbene non sia chiaro quanti blocchi questa commissione avrebbe dovuto confermare entro (abbiamo contattato GreenAddress per scoprirlo), la risposta è probabilmente di sei blocchi o di circa un'ora.

Non scopriremo mai quanto tempo avrebbe effettivamente impiegato quella particolare transazione: un messaggio di errore ci informava che "gli output inferiori a 546 satoshi [$ 0, 05] sono considerati polvere antieconomica da Bitcoin. Per favore, aumenta il valore".

Lightning Labs ha anche testato swap atomici cross-chain usando la rete; questi sono trasferimenti di valore tra diverse blockchain, in questo caso bitcoin e litecoin, che potenzialmente segnano un primo passo verso la costruzione di scambi decentralizzati.

Lightning consente micropagamenti che bitcoin non può da solo, ma le implementazioni esistenti sono ancora difettose. Stark sta esortando gli utenti a conoscere i fulmini usando il "testnet" di bitcoin (cioè, per usare denaro falso), piuttosto che il "mainnet" live-fire. Circa $ 50.000 di transazioni sono state eseguite sulla mainnet al momento della stesura di questo documento e alcune persone hanno perso denaro a causa di un bug c-lightning. (Christian Decker, ingegnere tecnico principale di Blockstream, mi ha detto via e-mail che i fondi alla fine sono stati recuperati nella maggior parte dei casi.)

Come funziona il fulmine?

Come funziona il fulmine

La soluzione di Lightning si basa su canali di pagamento bidirezionali off-chain. Supponiamo che Alice e Bob effettuino spesso transazioni tra loro in piccole quantità. In questo caso i pagamenti on-chain non sono pratici a causa delle commissioni e dei lunghi tempi di conferma, quindi decidono di aprire un canale che consente loro di inviare bitcoin avanti e indietro, istantaneamente e gratuitamente.

Aprire un canale

Per aprire un canale, Alice, Bob o entrambi contribuiscono con una certa quantità di bitcoin a un indirizzo speciale attraverso quella che viene definita una transazione di finanziamento (la casella verde nel diagramma seguente). Di 'che Alice contribuisce con 1 BTC. Invia i fondi a quello che viene chiamato un indirizzo multisig 2-of-2, che richiede sia ad Alice che a Bob di "firmare" crittograficamente qualsiasi transazione di invio con le loro chiavi private. Una transazione normale richiede solo la firma della (singola) chiave privata corrispondente alla chiave pubblica dell'indirizzo di invio.

È importante sottolineare che la transazione di finanziamento non è ancora firmata o trasmessa alla rete.

Tutte le immagini provengono da Poon e Dryja.

Successivamente, Alice e Bob creano una "transazione di impegno" utilizzando la transazione di finanziamento come "genitore": utilizzano l'output non confermato di 1 BTC come input per una transazione "figlio" che invia 0, 5 BTC ad Alice (output 0) e 0, 5 Da BTC a Bob (uscita 1). Se stai protestando che il protocollo bitcoin non consente agli utenti di firmare una spesa senza conoscere le firme dell'input, quell'abilità è stata concessa attraverso un soft fork.

Alice quindi firma l'output inviando 0, 5 BTC a Bob; Bob firma l'output inviando 0, 5 BTC ad Alice. Entrambi quindi firmano e trasmettono la transazione di finanziamento, che è impegnata nella blockchain bitcoin (e soggetta a commissioni di rete e tempi di attesa).

Ora hanno un canale di pagamento aperto attraverso il quale possono trasferire bitcoin avanti e indietro istantaneamente e gratuitamente. Sia Alice che Bob possono chiuderlo in qualsiasi momento e richiedere 0, 5 BTC ciascuno, o qualunque sia il saldo aggiornato.

Apertura di un canale ... in inglese

A meno che tu non sappia già un bel po 'delle interiora della rete di fulmini, è probabilmente difficile digerire il "segno qui, iniziale qui, spendi questo, trasmetti quello - no non quello " .

Ecco una descrizione più concettuale. La transazione di finanziamento è quella che sembra: fornisce i fondi per il canale. Funge anche da limite per il canale: nessuna delle parti può finire con un importo superiore all'importo del finanziamento iniziale e i saldi di entrambe le parti devono sommarsi a tale importo. Il motivo per cui la transazione di finanziamento viene creata per prima, ma trasmessa per ultima, è che se fosse stata semplicemente registrata sulla blockchain in un solo passaggio, nulla sarebbe stato realizzato a parte una singola transazione semplice. Il lampo non li rende più veloci o più economici.

Lasciando aperta la transazione di finanziamento, inserendo una transazione di impegno - che, come descritto di seguito, funziona come una specie di contratto intelligente - e quindi chiudendo la transazione di finanziamento, i fulmini aprono una sorta di wormhole nella rete. Ti consente di spostare bitcoin avanti e indietro lungo un singolo percorso definito. Stai usando il protocollo bitcoin, ma bypassando i ritardi e le spese imposti dai minatori.

Mantenere Lightning senza fiducia

Di 'che Bob ora vuole pagare Alice 0.1 BTC usando il loro canale aperto. Le due parti semplicemente aggiornano la transazione di impegno - non è necessario fare appello ai minatori. Il saldo, precedentemente 0, 5 BTC ciascuno, ora è 0, 6 BTC per Alice, 0, 4 BTC per Bob.

L'unico problema è come farlo in modo sicuro ">

Trovare una soluzione crittografica a questo dilemma si riduce a un obiettivo: rendere impossibile firmare una vecchia transazione e chiudere il canale in un modo che rifletta uno stato precedente. Fintanto che farlo è un'opzione, i fulmini hanno un problema di doppia spesa.

Ricorda che Bob firma la metà della transazione di impegno (impegno Tx 1a di seguito), che solo Alice può trasmettere perché la sua è la firma mancante. Alice firma l'altro (Impegno Tx 1b), che solo Bob può quindi trasmettere. O uno può farlo e chiudere il canale, ma utilizzando le capacità di scrittura di contratti intelligenti (limitate) di bitcoin, i risultati delle due metà della transazione di impegno possono essere soggetti a restrizioni diverse. In particolare, un output può consentire al destinatario di spendere immediatamente i fondi, mentre l'altro può essere soggetto a cancellazione da entrambe le parti - tramite un Revocable Sequence Maturity Contract (RSMC) - per un periodo di tempo definito, ad esempio 1000 blocchi o circa una settimana.

Ecco perché è utile. Se Bob risulta essere subdolo e senza principi, può solo firmare e trasmettere Impegno Tx 1b (sopra), che paga immediatamente Alice (Consegna 1b) e tiene i suoi fondi in un limbo revocabile per una settimana (Consegna revocabile 1b). Alice, vedendo che Bob ha tentato di cambiarla, può innescare la revoca e rivendicare non solo lo 0, 1 BTC che Bob ha cercato di rubare, ma lo 0, 4 BTC a cui altrimenti avrebbe avuto diritto.

In altre parole, l'intero canale va ad Alice se vede Bob imbrogliare. Ciò è possibile perché quando le parti creano una nuova transazione di impegno (C2a e C2b di seguito), promettendo in effetti di non trasmettere una vecchia transazione di impegno (C1a o C1b), mettono i loro soldi in bocca. Insieme alla nuova transazione di impegno, creano una transazione di riparazione della violazione con due risultati (BR1a e BR1b) che si applicano all'impegno precedente. Alice fornisce a Bob la sua chiave privata per la sua metà della transazione per porre rimedio alla violazione, e viceversa. Ora, se uno dei due tenta di trasmettere la vecchia transazione, la controparte può sfruttare il periodo di attesa di 1000 blocchi e lanciarsi in anticipo rispetto a quella transazione, prendendo l'intero saldo della parte colpevole.

Il problema è che Alice deve prestare un'attenzione semi-costante ai suoi canali, per paura che Bob la prenda alla sprovvista per 1000 blocchi. Poon e Dryja suggeriscono di designare una terza parte il cui compito è innescare transazioni di riparazione della violazione - quelle che premiano tutti i fondi del canale per la parte lesa - quando una controparte cerca di imbrogliare. Questi potrebbero essere pagati con una penale.

Olaoluwa Osuntokun, co-fondatore e CTO di Lightning Labs, sta sviluppando "torri di guardia" per fungere da esecutori di terze parti. Sebbene siano state espresse preoccupazioni sul fatto che questi nodi possano agire come parti fidate e introdurre insicurezza nella rete, Osuntokun dice a CoinDesk che per un determinato canale sarebbe necessaria una sola torre di guardia onesta.

Inoltre, come sottolinea Christian Decker, ingegnere tecnico centrale di Blockstream, in una e-mail, la frode è rischiosa. È una scommessa significativa presumere che la parte che stai cercando di derubare non effettuerà il check-in almeno una volta alla settimana e il rischio di perdere tutti i soldi nel tuo canale potrebbe essere un deterrente.

Collegamento dei canali

Nel mondo reale, Alice non vuole effettuare transazioni esclusivamente con Bob, né Bob esclusivamente con Alice. Entrambi hanno un numero qualsiasi di controparti di cui hanno bisogno per pagare e ricevere pagamenti. Aprire i canali con ognuna di queste parti non sarebbe pratico. Anche se l'interfaccia utente fosse semplificata alla perfezione, pochi utenti avrebbero la liquidità necessaria per legare bitcoin in una dozzina o più canali aperti.

Fortunatamente non devono. Come mostra il video sopra, gli utenti possono instradare i pagamenti attraverso i canali degli utenti intermedi, in modo che il pagamento di chiunque abbia uno o due canali aperti dovrebbe essere possibile attraverso il principio dei sei gradi di separazione. A differenza delle transazioni all'interno di un singolo canale, queste transazioni multicanale comporteranno probabilmente piccole commissioni per incentivare i nodi a finanziare i canali e tenerli aperti. Il routing delle cipolle, la tecnica utilizzata per mascherare gli utenti del browser TOR, impedisce ai nodi intermedi di vedere l'intero percorso intrapreso da una transazione, mitigando i problemi di privacy.

Resta da vedere quanto bene funzioni questa rete di canali ed è ipotizzabile che se i pagamenti dovessero prendere un percorso troppo contorto - con troppi "salti" attraverso i canali intermedi, si potrebbero sommare le commissioni addebitate da quegli utenti.

Il fulmine può rimanere decentralizzato ">

Queste preoccupazioni sono legate a quella che, per i critici, rappresenta un difetto insormontabile nella rete dei fulmini. Nelle implementazioni odierne, un canale ha un limite: la quantità di bitcoin nella transazione di finanziamento iniziale limita la quantità totale di denaro nel canale.

Questa situazione impone un compromesso agli utenti con risorse ragionevolmente limitate. Possono finanziare canali con grandi quantità di bitcoin al fine di garantire di disporre dei fondi per effettuare qualsiasi pagamento necessario, oppure possono finanziare canali più piccoli e avere bitcoin disponibile per altri usi. (Poiché i pagamenti possono essere instradati attraverso canali collegati, un determinato utente probabilmente non ha bisogno di aprire più di una manciata di canali, e forse solo un paio.)

La scelta si riduce ad avere liquidità all'interno dei canali del lampo o liquidità al di fuori di esse, sulla catena. La scelta di finanziare canali di pagamento liquidi potrebbe essere rischiosa se le torri di guardia o qualche altra soluzione non impediscono la perdita di fondi a causa della disattenzione. D'altra parte, se i canali di pagamento vengono resi sicuri e i fulmini diventano il metodo principale per utilizzare bitcoin quotidianamente, ci sarebbero pochi problemi a lasciare fondi nei canali. Servirebbero come "una carta di debito ricaricabile o contanti", come dice Decker, mentre la catena principale funge da conto di risparmio.

Stark fa un argomento simile: finanziare un canale fulmine ti impedisce di usare quel bitcoin per qualsiasi altra cosa, tranne "una rete di potenzialmente molti nodi che attraverso multihop accetteranno bitcoin istantaneamente", ha scritto via e-mail. "prevediamo che i fondi sui canali Lightning siano più utili dei bitcoin on-chain per le transazioni a causa della velocità istantanea e delle commissioni basse", ha aggiunto.

Mozzi?

Ma con chi vorresti impostare questi canali? Scegliere Bob per la tua Alice è una decisione economica, non crittografica, e per i critici della rete di fulmini, la risposta ovvia sarebbe una sorta di "hub", un nodo con molto capitale, che gli dà la possibilità di mantenere canali aperti ben finanziati con più parti contemporaneamente.

L'idea che ciò che equivale a un settore bancario bitcoin fuori catena potrebbe svilupparsi disturba gli appassionati di bitcoin, che lo vedono come centralizzare la rete.

Stark contesta questa argomentazione. "Migliaia di utenti eseguono nodi completi per bitcoin", scrive, "e crediamo che quelli e altri eseguiranno anche nodi su Lightning (è più facile perché non hai bisogno di un nodo completo bitcoin insieme a esso, e diversamente dai bit completi bitcoin che può fare piccole commissioni dal routing) ". Sottolinea inoltre che il suo team sta lavorando allo "splicing", che consentirebbe di riempire i canali usando bitcoin dalla catena principale. Tale capacità potrebbe alleviare il compromesso tra l'immissione di bitcoin in un canale o il suo rilascio sulla catena principale, che a sua volta potrebbe ridurre la tendenza alla formazione di hub.

Decker ritiene che si formerà una "rete a due livelli, con un gran numero di nodi che sono affidabili e fungono da spina dorsale della rete". Si aspetta che questi siano commercianti, piuttosto che hub che esistono esclusivamente per fornire canali liquidi. Fornire questi canali a più utenti, sostiene, sarebbe costoso, richiedere agli hub di addebitare commissioni elevate e renderli non competitivi rispetto ad altri nodi.

Il CEO di ACINQ Pierre-Marie Padiou non professa di sapere come potrebbe svilupparsi la rete di fulmini. "È molto difficile prevedere quale sarà l'equilibrio tra centralizzazione e decentralizzazione", ha scritto via e-mail. "Naturalmente ci saranno nodi più grandi e nodi più piccoli, ma fino a che punto è difficile dirlo in anticipo."

Il modo giusto di ridimensionare?

Poon e Dryja affermano che "utilizzando una rete di questi canali di micropagamento, Bitcoin può scalare a miliardi di transazioni al giorno con la potenza di calcolo disponibile oggi su un moderno computer desktop". Forse, ma questo non è certamente il caso oggi. Meno di 1.000 nodi di fulmini mainnet sono aperti al momento della scrittura.

Né il fulmine è l'unica proposta di ridimensionamento là fuori. Un importante concorrente è il bitcoin cash, una controversa fork di bitcoin che consente blocchi più grandi. Il dibattito tra sostenitori del contante bitcoin, sostenitori di fulmini e sostenitori di varie terze vie - anche l'occasionale anticalcare - è vivace, seppur acre. Può darsi che l'uno o l'altro esca in cima, che continuino a coesistere o che tutto fallirà.

In ogni caso, la rete di fulmini è un promettente tentativo di superare il dilemma della scalabilità che ha ossessionato il bitcoin dal primo fine settimana del bitcoin nel 2008.

Confronta i conti di investimento Nome del fornitore Descrizione Descrizione dell'inserzionista × Le offerte che compaiono in questa tabella provengono da società di persone da cui Investopedia riceve un compenso.
Raccomandato
Lascia Il Tuo Commento