Author: Giacomo Zucco | Original Date: 27/07/22 | Translated by: Davide Coltro | Link: LNP/BP: a gentle introduction
LNP/BP: una dolce introduzione
(Pubblicato originariamente su AlzaShop)
Lightning Network è un sistema relativamente nuovo e in rapido sviluppo che promette pagamenti economici, veloci e privati sopra il protocollo Bitcoin. Funziona già in produzione e molte persone lo usano quotidianamente. Ma è tutto qui? E se fosse solo la punta di un iceberg tecnologico? E se ciò che si nasconde sotto la superficie avesse la possibilità di influenzare in modo significativo alcune parti di Internet per come lo conosciamo? Vi sembra assurdo? Forse lo è, ma portate un po’ di pazienza.
Introduzione
Iniziamo affrontando il misterioso acronimo “LNP/BP”. Nell’ultimo anno è diventato abbastanza comune vedere alcuni appassionati di Bitcoin sbandierarlo in giro: io ce l’ho nella mia biografia su Twitter e così fanno altri bitcoiner (per alcuni esempi vedere qui, qui, qui, qui, qui, qui, qui o qui). Ho anche iniziato una lunga e chiassosa disputa su Twitter con il mio amico Vortex sull’uso di questo meme “LNP/BP” rispetto a quello meno accurato “BTC/LN” (che lui preferiva per esprimere lo stesso concetto di base… prima di cedere di fronte alla mia fastidiosa insistenza).
Cercate l’acronimo LNP/BP su Twitter per selezionare i nobili utenti che meritano di diventare i vostri nuovi migliori amici (bloccate e segnalate tutti gli altri).
Per me non si ferma a Twitter: insieme a Maxim Orlovsky ho deciso di utilizzarlo anche come nome di una piccola associazione no-profit, creata per sponsorizzare lo sviluppo di progetti di ricerca e sviluppo legati a Bitcoin (tra cui RGB, Magical, Proofmarshall, Storm, Lightspeed e altri).
Il repository GitHub dell’organizzazione no-profit LNP/BP.
Ma cosa intendiamo veramente con questo acronimo? È banale vedere un tentativo di sfruttare il parallelismo tra Bitcoin e Internet: più precisamente la suite di protocolli Internet, nota come “TCP/IP” . È chiaro che ha a che fare con una “architettura a layer”, in contrapposizione a una “monolitica”… ma quali sono, esattamente, i “layer” di Bitcoin? Sembra esserci molta confusione (per lo meno terminologica, ma forse anche concettuale) intorno ad essi. L’intera rete Lightning Network è davvero il “layer 2” di Bitcoin? Che cos’è, allora, un singolo canale Lightning? La federazione Liquid è davvero un “layer 1.5”, come a volte si sostiene, o forse è più un “layer i immaginario”, come ho criticato scherzosamente? Se le federazioni forti sono “layer”, lo sono anche i cold wallet multi-sig degli exchange custodial? E che dire delle state-chains, o dei channel factories, degli asset RGB, dei sistemi di scrittura basati sull’op-return? Tutto questo hype sui sistemi di “layer 3” è solo rumore senza senso, come il “web 3”?
Cercare di tenere il passo con ciò che effettivamente è, o non è, un “second layer” comincia a diventare un po’ confuso.
L’obiettivo di questo articolo è cercare di riassumere, chiarire e sistematizzare la discussione sul meme “LNP/BP”, sperando di ridurre il livello di confusione.
I layer prima di Bitcoin
Il concetto di “abstraction layer” è ovviamente più antico di Bitcoin. In generale, pensare ai “layer” come modello mentale è utile per etichettare tutti quei sistemi complessi che possono essere significativamente suddivisi in una serie ordinata di sottosistemi, ognuno dei quali dipende strettamente da quelli che lo precedono: è per questo che si fa l’analogia con una struttura verticale, in cui le cose che stanno “sopra” sono sulle spalle di altre cose che stanno “sotto”, le quali sono di solito più difficili da toccare, spostare o modificare in modo sicuro rispetto alle prime (come nel caso dei diversi piani di una torre di Jenga).
È una stratificazione continua (i layer sono le nuove tartarughe)
Un ottimo esempio di questa analogia, più antico di Internet stesso, si trova in architettura, dove i diversi “shearing layers” di un singolo edificio rappresentano aspetti indipendenti di esso, ognuno dei quali si evolve in tempi diversi, con diversa longevità.
Gli “shearing layers” in un edificio
In informatica possiamo notare un esempio evidente del concetto nella dualità hardware/software (a volte con ulteriori layer intermedi noti come middleware, firmware, ecc.), dove una configurazione fisica sottostante e complessa di componenti elettronici può essere descritta anche in modo più astratto e semplice, come una “configurazione informativa” funzionalmente interessante.
Triangolo casuale con layer che ricordano la scienza informatica
Il modello TCP/IP a 4 layer è probabilmente l’esempio più noto di architettura a layer, insieme al suo concorrente “accademico/burocratico”, il modello OSI a 7 layer. All’interno del modello OSI abbiamo un “layer 1”, detto anche “fisico”, che trasmette i flussi di bit grezzi; un “layer 2”, detto “collegamento”, che definisce il formato di serializzazione dei dati; un “layer 3”, detto “rete”, che decide il percorso di instradamento dei dati; un “layer 4”, detto “trasporto”, che gestisce i protocolli di trasmissione; un “layer 5”, detto “sessione”, che mantiene le connessioni e controlla le porte e le sessioni; un “layer 6”, detto “presentazione”, che gestisce il formato e la crittografia dei dati; un “layer 7”, detto “applicazione”, che gestisce le interazioni finali tra uomo e computer.
Confronto tra i layer del modello ISO/OSI e del modello TCP/IP.
Lo stesso modello mentale viene riutilizzato in modo piuttosto consistente in molti sottocampi, dal rendering OpenGL alla programmazione orientata agli oggetti, sempre in relazione ai concetti di information hiding, incapsulamento, tunneling, modularità, standardizzazione, riutilizzo, dipendenza temporale disomogenea, sicurezza attraverso l’isolamento, ecc.
”Reinterpretation Layers” in Bitcoin
Nel contesto di Bitcoin, il termine “layer” è stato inizialmente menzionato nell’accezione usuale legata a Internet, in relazione alle sovrapposizioni di informazioni per comunicare blocchi e transazioni tra nodi e minatori (vedi esempi qui e qui).
Il primo accenno che ho trovato su Bitcointalk riguardo ai “nuovi layer sopra Bitcoin”.
Un nuovo significato per l’espressione “layer sopra Bitcoin” ha iniziato a emergere intorno all’annuncio, nel 2013, del protocollo “Mastercoin” (oggi chiamato “Omni-layer” dopo un rebranding reso necessario dai tipici problemi di consegna, governance e trasparenza che seguono sempre le “ICO” delle “Fondazioni” centralizzate).
Mi dispiace, amici di Mastercoin… ma sapete che è vero.
Mastercoin era un protocollo che permetteva di reinterpretare alcune transazioni Bitcoin (valide) da una prospettiva diversa, che consentiva l’emissione di beni digitali personalizzati (che rappresentavano ad esempio IOU, azioni, opzioni, royalties, diritti di voto, oggetti da collezione, certificati, ecc.) e la creazione di contratti complessi (che consentivano ad esempio lo scambio atomico p2p, il gioco d’azzardo, i derivati finanziari, la distribuzione di dividendi, ecc.). J.R. Willett, il suo principale sviluppatore, lo ha spiegato con queste parole: “Siamo un livello di protocollo sopra Bitcoin, aggiungendo funzionalità extra. Utilizziamo Bitcoin come la posta elettronica utilizza il layer sottostante del TCP/IP”.
MasterDoge: un second layer sopra lo standard Dogecoin (questo banner è stato sponsorizzato da Elon Musk)
Altri progetti che rafforzavano questa definizione di “second layer” seguirono immediatamente: da Counterparty (molto simile a Mastercoin, ma senza il sospetto modello ICO) a molte idee Colored Coin (che segregava la rappresentazione degli asset emessi sul layer di astrazione superiore dalla dinamica dei contratti, delegata “sotto” al sistema di scripting nativo di Bitcoin). Il nome generico di questi esperimenti, allora, era tipicamente “protocolli Bitcoin 2.0”. In un blog-post ben scritto, il giovane giornalista Vitalik Buterin, futuro lanciatore di ICO, li etichettò come “metaprotocolli” (scelta probabilmente non molto elegante, dato che l’espressione indica già qualcosa di completamente diverso: un protocollo usato per definire altri protocolli). Ma anche l’espressione “protocolli di layer 2” era piuttosto comune.
Lol, ricordate tutte quelle conferenze su “Bitcoin 2.0”?
Dal momento che, di solito sfruttano l’opcode dello script “OP_RETURN” all’interno delle transazioni Bitcoin, questi protocolli potrebbero essere considerati come “layer 3”, mentre il loro layer 2 sarebbe l’interpretazione del payload informativo nell’opcode stesso, che potrebbe essere utilizzato anche per qualcosa di più semplice degli schemi di asset digitali. Un esempio storico potrebbe essere l’applicazione mobile Eternity Wall (dismessa da quando il creatore ha onestamente riconosciuto l’assoluta non scalabilità del metodo, passando invece alla notarizzazione OpenTimestamps) in cui si poteva anche rispondere e mettere “mi piace” ai messaggi altrui, in un semplice ma efficace “Social Network su Blockchain” (non diverso dai pochi esempi che gli shitcoiners stanno ancora oggi spacciando per un’idea scalabile, cosa che ovviamente non è).
Eternity Wall non era scalabile, ma era bello.
Potremmo chiamare questa particolare concettualizzazione “layer di reinterpretazione” o “riutilizzo dell’infrastruttura”. Ogni “avvenimento” del second layer è una transazione Bitcoin valida e confermata all’interno del primo layer, reinterpretata in una semantica di ordine superiore per significare qualcosa di più di un semplice trasferimento di bitcoin. Il bene economico bitcoin (con la “b”) non viene necessariamente riutilizzato, mentre l’infrastruttura tecnologica Bitcoin (con la “B”) viene sfruttata per spostare più beni.
“Omission layers” in Bitcoin
Un secondo utilizzo, completamente distinto, dell’espressione “second layer sopra Bitcoin” è emerso nel dibattito sui diversi problemi creati dal fatto che Bitcoin è stato originariamente concepito come un protocollo di “consenso globale”. Sebbene sia indiscutibilmente brillante, la soluzione decentralizzata di Bitcoin al problema della doppia spesa, la “Timechain”, è intrinsecamente impossibile da scalare. Presuppone che ogni nodo della rete debba tenere traccia di tutto per sempre: ogni singola transazione sulla catena deve essere scaricata e verificata da ogni attore che utilizzerà il sistema per tutta la sua storia, anche molto lontano nel futuro. Questo implica anche gravi limitazioni alla privacy e alla fungibilità, rendendo possibili qualsiasi tipo di analisi forense e tentativo di deanonimizzazione.
Ho ripreso questo meme dalla serie Discovering Bitcoin, ma bisogna ammettere che è troppo perfetto per non riutilizzarlo.
Non ci sono soluzioni banali: se si limitano rigorosamente le dimensioni e la frequenza dei blocchi nella Timechain, allora l’onere di convalida per tutti i nodi può rimanere gestibile, ma l’offerta di “spazio-blocco” lascerà una domanda talmente insoddisfatta che le commissioni di transazione e i tempi di attesa aumenteranno notevolmente. Se invece si lascia crescere la dimensione e la frequenza, allora il prezzo del “blocco-spazio” diminuirà, ma l’aumento dei costi di gestione dei nodi accentrerà la topologia dell’intero sistema.
Compromessi difficili (e meme verbosi difficili da leggere).
C’è un modo intelligente e non banale per mitigare i limiti fondamentali dei sistemi di consenso globale, senza sacrificarne la decentralizzazione: migrare parte dell’attività su un “secondo layer” senza fiducia e senza permesso. La maggior parte degli utenti può semplicemente astenersi dal registrare ogni transazione in un blocco fino a quando non è strettamente necessario, mantenendo la maggior parte del traffico fuori dalla Timechain pubblica, utilizzando quest’ultima solo per la risoluzione dei conflitti o la liquidazione periodica. L’esempio più famoso di questo tipo di approccio è senza dubbio Lightning Network: un sistema in cui le transazioni Bitcoin valide possono essere trasmesse localmente tra coppie di peer e concatenate in “percorsi di routing”, invece di essere trasmesse e registrate nella Timechain, al fine di instradare il valore tra pagatori e beneficiari, agli estremi dei percorsi.
Meme autoesplicativo.
L’idea è in qualche modo simile al modo in cui le persone usano i tribunali e i contratti nei sistemi di common-law: i tribunali possono creare precedenti pubblicamente vincolanti, raggiungendo una sorta di “consenso legale globale”, ma sono relativamente lenti, costosi e dannosi per la privacy, quindi la maggior parte delle parti commerciali di solito firma solo contratti privati, chiedendo ai tribunali di verificarli e farli rispettare solo quando sorgono conflitti o quando è prevista una revisione pubblica periodica. È possibile utilizzare script Bitcoin avanzati per ridurre al minimo la fiducia nell’operazione: a differenza dei processi legali veri e propri, il processo di risoluzione della Timechain può evitare pregiudizi umani e corruzione, affidandosi principalmente alla crittografia, agli incentivi e al codice.
Incentivi e crittografia sono sempre meglio di avvocati e giudici, anche quando si tratta di decidere chi invitare a una festa.
Lightning Network non è l’unico esempio di questo tipo: anche le interazioni fuori banda tra i peer necessarie per preparare contratti avanzati come CoinJoin, PayJoin o CoinSwap (e in futuro anche, si spera, diversi tipi di Signature Aggregation) potrebbero essere considerate come se avvenissero su un secondo layer, con solo alcune parti che effettivamente finiscono sulla Timechain, a seconda dello scenario.
Bella illustrazione dell’aggregazione delle firme (intra-input), (quella cross-input sarà ancora più bella).
Potremmo chiamare questa particolare concettualizzazione “layer di omissione” o “riutilizzo degli asset”. Ogni “avvenimento” del secondo layer è un trasferimento effettivo di bitcoin che può essere regolato sul primo layer, realizzato in modo da garantire livelli di sicurezza accettabili, anche se la maggior parte delle transazioni Bitcoin utilizzate per raggiungere questo obiettivo non vengono effettivamente trasmesse all’intera rete e confermate sulla Timechain. L’infrastruttura tecnologica Bitcoin (con la “B”) non viene necessariamente riutilizzata, mentre l’asset economico bitcoin (con la “b”) viene sfruttato per mediare più trasferimenti di valore.
Differenza con il credito
È interessante notare come queste soluzioni “off-chain” possano in qualche modo assomigliare all’istituzione di sistemi di credito nel contesto della moneta-merce. L’uso dell’oro fisico, ad esempio, era molto difficile da scalare (anche se per motivi completamente diversi rispetto a Bitcoin): le monete di metallo prezioso erano molto costose da conservare, trasferire e verificare. Ecco perché, a partire dal Medioevo, si iniziò a conservare, trasferire e verificare, al posto dell’oro fisico, certificati di “oro cartaceo” emessi da terze parti fidate, da riscattare solo quando necessario. All’apice dell’era del Gold Standard, era possibile suddividere il sistema monetario globale in almeno tre diversi “layer”: l’oro fisico, talvolta scambiato direttamente da alcuni utenti finali, ma più spesso tenuto come riserva dalle banche centrali; le banconote delle banche centrali, per lo più detenute dalle banche commerciali; le banconote delle banche commerciali, scambiate direttamente dalla maggior parte degli utenti finali.
Certificati d’oro su carta… non male, se non si ha niente di meglio.
Ironia della sorte, mentre il “layer 1” fondamentale è scomparso dal moderno sistema fiat (i certificati delle banche centrali non sono più riscattabili in nulla), c’è stata una proliferazione di nuovi “layer” nella parte superiore della torre. Ad esempio, quando oggi gli utenti finali pagano tramite qualche applicazione “FinTech” come PayPal, Venmo, GPay, AliPay o ApplePay, operano su un “layer 6” tecnico, che si basa per lo più su relazioni bancarie tradizionali sotto il cofano, che a loro volta rappresentano un “layer 5” in cima a una rete di banche corrispondenti internazionali, che sono un “layer 4” in cima alle banche centrali locali che agiscono in regime di monopolio legale all’interno delle loro giurisdizioni, che non sono altro che un “layer 3” in cima al più fondamentale “layer 2” della Federal Reserve degli Stati Uniti d’America (di nuovo: il “layer 1” è tristemente assente: non è più possibile riscattare l’oro fisico).
Il Fiat standard in un’immagine.
Nonostante questa somiglianza superficiale, è importante chiarire che l’idea attualmente dominante di “secondo layer” in Bitcoin è in realtà qualcosa di molto diverso dalla “stratificazione del credito” dei sistemi monetari precedenti! Le transazioni Lightning, ad esempio, non sono in alcun modo promesse di transazioni future o “crediti” creati da una terza parte fidata. Sono transazioni Bitcoin effettive e completamente valide, che possono essere effettivamente trasmesse e registrate nella Timechain quando e se necessario, con forti garanzie di sicurezza e correttezza basate sulla teoria dei giochi e sulla crittografia, al contrario della reputazione sociale, della responsabilità legale o della fiducia diretta!
I bitcoin su Lightning Network non sono crediti denominati in bitcoin, sono bitcoin.
Che potesse esistere un secondo layer così trustless non è qualcosa che i primi bitcoiner potevano dare per scontato! Un esempio tipico è il modo in cui il leggendario bitcoiner Hal Finney immaginava il futuro della scalabilità di Bitcoin, dopo quasi due anni dalla nascita del sistema: un mix del layer 1, privo di fiducia ma non scalabile, con una rete competitiva di “banche Bitcoin” scalabili ma basate sulla fiducia. È stato qualcosa di inaspettato quando Satoshi Nakamoto stesso ha proposto l’idea embrionale di quello che oggi è noto come “canale di pagamento off-chain”: un secondo layer che non si basava su una terza parte fidata, ma su meccanismi di auto-applicazione. La struttura originale ideata da Satoshi era difettosa, quindi ci sono voluti altri anni a sviluppatori come Jeremy Spillman, Christian Decker e Joseph Poon per correggere il concetto e fonderlo con quello complementare di “routing atomico del credito” (che era addirittura preesistente al Bitcoin stesso, si veda ad esempio il progetto originale Ripple) per creare l’attuale Lightning Network. E questo processo evolutivo non si è ancora concluso: si veda ad esempio la proposta di Eltoo.
Le argomentazioni delle autorità sono sempre sbagliate… tranne che per Hal Finney… se lo dice Hal, allora dimostra la mia tesi.
I “layer” basati sulla fiducia per custodire e transare l’asset bitcoin possono ancora esistere (e di fatto lo fanno: è ciò che la maggior parte degli exchange online sono oggi), ma si tratta di un tipo di “stratificazione” completamente distinto da quello che incarna Lightning Network. Nel primo caso, l’asset non è esattamente il bitcoin, ma un credito denominato in bitcoin. Nel secondo caso, i bitcoin veri e propri vengono spostati all’interno di transazioni valide, che si dà il caso seguano una strategia diversa per evitare la doppia spesa rispetto alla pubblicazione immediata del consenso globale.
Idee ibride
Naturalmente, la distinzione tra “layer” sociali basati sulla fiducia e “layer” tecnici dove la fiducia è ridotta al minimo non è sempre netta e inequivocabile. Da un lato, ad esempio, un nodo all’interno della rete Lightning potrebbe decidere di stabilire un canale di pagamento con garanzie crittografiche o di teoria dei giochi ridotte, se la controparte (ad esempio un grande hub di liquidità nella rete, collegato a un servizio finanziario famoso e rispettabile) è sufficientemente conosciuta e rispettabile. D’altro canto, un exchange tradizionale e full-custodial potrebbe decidere di aumentare in qualche modo le ragioni per cui i suoi clienti si fidano di lui, rendendo pubblici i dettagli tecnici delle sue procedure di cold-storage (possibilmente multi-sig e basate su HSM) e implementando sofisticate strategie di “prova o riserva”, “prova di solvibilità” e “prova di proprietà”, basate su garanzie crittografiche che chiunque potrebbe verificare in modo indipendente. Tra questi estremi sono possibili diversi compromessi, che sfumano la linea di demarcazione tra i layer sociali basati sulla fiducia e i layer tecnici dove la fiducia è ridotta: le Statechain potrebbero sostituire i tipici canali Dryja-Poon all’interno di alcune particolari topologie di Lighting Network, mentre alcuni exchange custodial potrebbero evolvere le loro procedure di sicurezza e crittograficamente verificabili in vere e proprie dinamiche federazioni forti.
“Omissione” vs layer di credito (più ibridi).
È possibile anche un’ibridazione tra i “Reinterpretation-layers” e gli “Omission-layers” discussi in precedenza: ad esempio, il progetto RGB può essere visto, da un lato, come un tentativo di sfruttare l’infrastruttura Bitcoin per gestire diversi asset emessi sopra, ma anche come una tecnologia strettamente legata a Lightning Network e un esperimento intorno al concetto di “client-side-validation”, originariamente inteso per gestire l’asset bitcoin su un diverso tipo di infrastruttura. Un discorso analogo può essere fatto per gli Issued Assets su Liquid, o per la proposta di Proofmarshal per gli asset.
“Reinterpretation” vs “Omission-layers” (più ibridi).
L’interazione tra questi layer di astrazione può essere non banale: in teoria, è possibile instradare un token RGB, che rappresenta un IOU basato sulla fiducia e denominato in bitcoin, su un canale Lightning aperto sulla catena federata Liquid. Sì, lo so. Ora potete sedervi un attimo per elaborare il tutto.
Ok… questo comincia a sembrare un po’ disordinato… inoltre, cos’è quel riquadro viola lì “???”?
LNP/BP come TCP/IP: come?
Quindi, quanto bene il meme “LNP/BP” rappresenta i vari modi in cui lo sviluppo di Bitcoin viene “stratificato” e mantiene un’analogia significativa e coerente con l’esempio più noto di “stratificazione”, ovvero la suite di protocolli Internet, nota anche come “TCP/IP”?
Mettiamo alla prova la nostra analogia.
Prima di tutto, qualche parola sull’espressione “TCP/IP”: si usa per rappresentare una ricchissima suite di protocolli aperti, insieme noti collettivamente come “Internet”, nominando esplicitamente gli acronimi del protocollo che costituisce il layer base (se si esclude il “layer 0” fisico) per l’intero stack (ovvero il “Protocollo Internet”, abbreviato “IP”, che condivide anche lo stesso nome dell’intera suite), a destra, insieme al più utilizzato tra i pochi protocolli di secondo layer costruiti direttamente sopra (ovvero il “Transmission Control Protocol”, abbreviato “TCP”), a sinistra. È importante ricordare che la suite TCP/IP non si limita ai due protocolli IP e TCP! Esistono alcuni importanti protocolli di secondo layer alternativi al TCP, che sono parte integrante della suite, come ad esempio UDP, SCTP e ICMP. Esistono tanti protocolli molto importanti sopra il TCP, che sono parte integrante della suite, come ad esempio HTTP (noto anche come “Web”), SMPT, FTP e SFTP (esistono anche protocolli sopra UDP, come RTP).
Layer superiori: aumento della “concorrenza”.
In questo senso, l’analogia implicita nell’espressione “LNP/BP” sembra piuttosto elegante: è destinata a essere utilizzata per rappresentare una ricchissima suite di protocolli aperti, collettivamente noti come “Bitcoin”, nominando esplicitamente gli acronimi del protocollo che costituisce il layer base dell’intero stack (o “Bitcoin Protocol”, abbreviato “BP”, che condivide anche lo stesso nome dell’intera suite), a destra, insieme al più utilizzato tra i pochi protocolli di secondo layer costruiti direttamente sopra (o “Lightning Network Protocol”, abbreviato “LNP”), a sinistra. Pulito! Molta simmetria! Naturalmente, la suite LNP/BP non si limiterebbe ai due protocolli BP e LNP! Si sta discutendo di alcuni importanti protocolli di secondo layer alternativi a LNP, che sarebbero parte integrante della suite, come ad esempio il “Protocollo di Rete Eltoo”, o il “Protocollo di Federazione Elements”, o il “Protocollo di Entità Statechain”, o il “Protocollo Notarile Proofmarshal”. Potrebbero esserci anche tanti protocolli molto importanti in cima a LNP, che sono parte integrante della suite, come ad esempio protocolli per escrow avanzati come i contratti Discrete Log, gestione avanzata dei servizi LN come Watchtowers, o anche protocolli di backup più complessi e protocolli di messaggistica in cima a LNP (le proposte Storm e Lightspeed menzionate nell’introduzione di questo articolo sono anche esperimenti su questa linea). Alcuni protocolli di layer 3 in cima a LNP potrebbero anche fare da ponte tra i vari sistemi di layer 2 (le parti HTLC-routing e Sphinx di LNP potrebbero essere facilmente separate e interpretate in questo senso).
Lightning Network stessa non è necessariamente un unico “secondo” layer: potrebbe essere proficuamente separata.
Se confrontata con alcuni tentativi alternativi, meno sofisticati, di sottolineare l’analogia, come “BTC/LN” (dove l’ordine dei layer è invertito, e la descrizione “Protocollo” è omessa, e l’indicatore di prezzo dell’asset è usato al posto del nome del protocollo, e l’omonimia tra il primo layer e l’intera suite è persa), penso che sia chiaro fino a che punto l’espressione “LNP/BP” funzioni davvero bene.
Scusa Vortex… so che la guerra è finita e che hai ceduto… ma non riesco a smettere di pensare a quanto “BTC/LN” sia brutto.
Ora una domanda interessante: il TCP è un “layer di omissione” sopra l’IP? O piuttosto un “layer di reinterpretazione”? Sebbene quest’ultimo sia forse un parallelo più letterale, c’è una forte argomentazione anche per il primo: ogni comunicazione TCP è anche una comunicazione IP valida con qualche significato aggiuntivo, ma invece di essere trasmessa a enormi sezioni della rete globale in stile multi-cast (come tipico del sottoprotocollo IGMP di IP), è solo unicast attraverso un percorso di rete specifico, finché dura la connessione TCP. È già stato sottolineato che l’analogia è solida e abbastanza acuta in questo senso: ogni transazione LNP è anche una transazione BP valida con qualche significato aggiuntivo, ma invece di essere trasmessa al consenso globale, è solo unicast attraverso uno specifico percorso di rete, finché durano i canali LNP.
LNP/BP come TCP/IP: perché?
Ma perché è importante questa analogia con il TCP/IP, innanzitutto? Oltre a confermare e rafforzare il meme di grande successo “Bitcoin è l’Internet del denaro”, credo che ci siano ottime ragioni per sottolineare questo specifico paragone con la suite di protocolli Internet multi-layer.
Ma tutto questo ha senso?
Il primo motivo è quello di sottolineare l’importanza di questa “stratificazione”, soprattutto nel contesto di progetti critici per la sicurezza e politicamente controversi come Bitcoin. Da un lato, la possibilità di cambiare troppo spesso il layer base di Bitcoin, senza molta resistenza e inerzia, aprirebbe seri vettori di attacco sociale e politico. Ma dall’altro lato, nessun cambiamento all’intero sistema significherebbe stagnazione tecnologica e obsolescenza futura. La stratificazione ci permette di godere del meglio di entrambi i mondi: innovazione rapida nei layer superiori, affidabilità a lungo termine nei layer inferiori. Lo stesso concetto si estende al di là del tempo, nel regno della diversità di persone, approcci e idee. Da un lato, un’enorme proliferazione di implementazioni alternative dei livelli di base, senza molta convergenza e standardizzazione, aprirebbe seri rischi di fallimento del consenso. D’altro canto, l’assenza di concorrenza significherebbe monocultura e concentrazione del rischio in un unico approccio. Anche in questo caso, la stratificazione ci permette di godere del meglio di entrambi i mondi: concorrenza diversificata ai layer superiori, convergenza coerente ai layer inferiori. Ho espresso questa idea di LNP/BP come modello mentale multistrato, in cui i layer inferiori dovrebbero rimanere altamente conservativi, affidabili, convergenti e standard, mentre i layer superiori possono essere altamente evolutivi e competitivi, in uno dei miei interventi (in cui esploro anche altri peculiari compromessi tra layer, come quello tra fungibilità on-chain e deniability della rete, o tra divisibilità del blockspace e portabilità del routing, o tra conferma-finalità e affidabilità del canale, ecc.), e penso davvero che abbia senso.
Lo so: i colori stile “Matrix” sono terribili per le presentazioni… non mi interessa… mi piacciono.
Un secondo motivo per sottolineare il confronto è quello di trarre ispirazione dalle analogie tra alcuni eventi storici che hanno riguardato la suite TCP/IP e alcune importanti pietre miliari dei primi 10 anni di Bitcoin. In particolare, la storia delle cosiddette “guerre dei protocolli” mostra sorprendenti somiglianze con il più recente dibattito sul “massimalismo Bitcoin”, mentre la storia del tentativo di acquisizione di “IPv7” riecheggia da vicino quanto accaduto intorno all’attacco NYA contro Bitcoin nel 2017. In entrambi i casi, la storia del TCP/IP può essere utilizzata come lezione sulla superiorità di standard aperti, indipendenti e convergenti. Sebbene la storia non si ripeta mai esattamente, alcune dinamiche sociali e tecniche sono spesso ricorrenti, rendendo i due episodi un’importante fonte di ispirazione.
Dovete leggere questo grande tweetstorm di Alex B, davvero..
Una terza ragione per sottolineare il confronto sarebbe quella di evidenziare ulteriormente il fatto che i trasferimenti di valore attraverso le “tecnologie di secondo layer” correttamente intese in Bitcoin non rappresentano “crediti”, “pagherò” o beni separati (come sembra suggerire una narrazione distorta intorno a Lightning Network), ma trasferimenti letterali di bitcoin. Come discusso in precedenza, ci sono alcune importanti somiglianze tra i sistemi di credito e le strategie off-chain, ma anche differenze fondamentali. Il meme LNP/BP aiuta a chiarire questo aspetto: proprio come una connessione TCP è parte integrante della suite Internet, un canale LNP è parte integrante della suite Bitcoin.
L’uso della violenza fisica è solo metaforico… Voglio solo schiaffeggiarti intellettualmente.
L’ultima ragione che vedo riguarda un annoso problema terminologico e didattico: l’omonimia tra Bitcoin (inteso come protocollo, software e rete) e bitcoin (inteso come unità arbitraria della limitata fornitura di “oro digitale” creata all’interno del protocollo), che genera sempre una certa confusione tra i neofiti. Sebbene sia impossibile eliminarla del tutto, questa fonte di potenziale incomprensione è già mitigata dall’uso sempre più comune dell’unità “satoshi” al posto di quella storica “bitcoin” (questo passaggio non nasce solo naturalmente dalla necessità di contrastare lo ”unit bias” di cui soffre un numero sorprendentemente alto di neofiti “nocoiner”, e di ridurre il numero di zeri decimali davanti all’importo con il progressivo aumento del valore di un “bitcoin”, ma è anche, per inciso, più vicino al modo in cui il software Bitcoin codifica gli importi sotto il cofano). Riferirsi alla suite di protocolli come “LNP/BP” invece che come “Bitcoin”, almeno quando si possono creare delle ambiguità, è un altro strumento didattico che può essere utilizzato per chiarire e distinguere.
Ora conoscete finalmente il segreto di “LNP/BP”. Sapete cosa sono i layer nel contesto di Bitcoin e non solo. Sapete perché nessuno dovrebbe cercare di cambiare il layer base di Bitcoin troppo, o in troppi modi, mentre una rapida evoluzione e una concorrenza diversificata sono ancora necessarie nei layer superiori. Sapete perché Bitcoin è ancora più “simile a Internet” di quanto pensavate. Sapete perché dovete inserire questo acronimo nella vostra biografia di Twitter se volete essere cool. Usate questa conoscenza in modo responsabile.
Related Posts
Lightning Network to Wspólny Język Ekonomii Bitcoina
Oct 25, 2024
Pay for What You Want & How You Deserve
Jan 24, 2024
Nick Szabo was wrong: with Bitcoin, micropayments work
Nov 23, 2023