Lightning For Life: come Lightning può e si integrerà con il Web

Nodo di origine: 1332590

Lightning è pronto per integrarsi perfettamente nelle nostre operazioni quotidiane più o meno allo stesso modo di Internet.

Roy Sheinfeld è il co-fondatore e CEO di Breez, una società di Bitcoin focalizzata sui pagamenti Lightning.

Ogni volta che cerchi qualcosa su Google, ogni volta che scherzi fai ricerche serie su YouTube o Instagram, ogni volta che ordini un Uber, ogni volta che controlli il tuo portfolio o leggi le notizie, stai usando il web. In effetti, stai usando il web in questo momento leggendo questo. Il web è uno strumento, ma è uno strumento allo stesso modo in cui i polmoni o i pollici sono strumenti; è diventato parte integrante di noi che utilizziamo costantemente senza nemmeno pensarci.

Il denaro è simile in quanto lo usiamo costantemente e inconsciamente. Finché il tuo frigorifero è in funzione, finché i tuoi fondi stanno maturando interessi da qualche parte, finché l'orologio del debito sul tuo prestito sta ticchettando, sei coinvolto in attività finanziarie. Il tuo io finanziario è sveglio, mantenendo la sua posizione nella rete globale del valore, anche mentre dormi.

I bitcoiner tendono ad essere acutamente consapevoli di questo genere di cose. Se usi Lightning, probabilmente lo vedi come un condotto tra te e quella rete globale di valore. Non è solo un modo per farlo comprare una birra a Helsinki; Lightning ti connette al mare di Bitcoin.

Stranamente, queste due reti vitali - il Web e Lightning - funzionano ancora in parallelo con poca integrazione. Non vogliamo vivere senza nessuno dei due, ma le cuciture tra di loro sono palpabili, a volte imbarazzanti.

Come ho appreso al hackathon di bolt.fun (grido al mio amico Johns!), molti sviluppatori web vorrebbero creare app con funzionalità Lightning. La volontà di integrazione è là fuori, ma molti sembrano non rendersi conto che c'è anche un modo. In effetti, ci sono diversi modi per portare Lightning sul web e ognuno si sta evolvendo con i propri punti di forza e casi d'uso. Forse il mondo semplicemente non li conosce o non li capisce?

Facciamolo. Diamo un'occhiata a come integrare la rete e il fulmine, estraendo i fili, intrecciandoli insieme e creando una rete più forte, combinata e senza soluzione di continuità.

Fonte immagine

LNURL: Mantenerlo semplice

L'esperienza utente di Lightning (UX) ha fatto molta strada da quando I prima lo coprì tre anni fa. Ma le lacune rimangono. Le fatture sono un esempio. Tecnicamente, solo il beneficiario può avviare un pagamento, il che è inappropriato per molti contesti. Molti utenti potrebbero non voler generare una fattura per qualsiasi motivo e, in scenari come la mancia, potrebbe ragionevolmente sembrare ingombrante e scortese.

LNURL è un insieme molto semplice di specifiche per colmare alcune di queste lacune UX rimanenti, inclusa la generazione di fatture. La bellezza di LNURL è la sua semplicità. Come suggerisce il nome, le specifiche di LNURL si basano su collegamenti, sotto forma di URL cliccabili o codici QR scansionabili. I collegamenti URL fanno parte del nostro background tecnologico. Ne avete già visti quattro in questo post, probabilmente senza nemmeno notarli. I codici QR sono la stessa cosa, solo una rappresentazione visiva diversa:

I codici QR sono facili e familiari. Non vedo che ci arrenderemo presto.

Ci sono diversi LNURL specifiche là fuori, ma queste sono particolarmente rilevanti per l'integrazione web di Lightning:

  • LNURL-Paga: Diciamo che gestisci un blog Bitcoin. Vuoi raccogliere suggerimenti ma non vuoi generare e rendere una fattura per ogni suggerimento, né vuoi interagire con ciascun lettore individualmente per ogni suggerimento. LNURL-Pay ti consente di generare codici QR per pagamenti entro un intervallo specifico, ad esempio 2,500 – 10,000 sat. Un utente può semplicemente scansionare un codice, inserire l'importo preciso e pagare. L'utente rimane ignaro del linguaggio delle pre-immagini e delle fatture, invece si limita a scansionare un codice e rispondere a una richiesta.
  • LNURL-Ritiro: Questo è lo scenario inverso: vuoi pagare gli utenti per interagire con il tuo sito, ma vuoi risparmiare loro la fatica di generare una fattura. LNURL-Withdraw consente agli utenti di scansionare un codice o fare clic su un collegamento che richiederà ai loro portafogli di generare il tipo di fattura appropriato e di inviarlo al tuo nodo per il pagamento.
  • LNURL-Aut è un altro fantastico strumento LNURL. Genera un set di chiavi pubblico-privato basato sulle frasi iniziali nei portafogli degli utenti per consentire loro di accedere ai siti Web con uno pseudonimo. È privato come la frase iniziale stessa e più difficile da usare con la forza bruta di "password123" o "fixed_horse_battery_staple.” Soprattutto, utilizza i dati già contenuti nei portafogli degli utenti, pronti per l'uso con pochi input.

Indirizzi di fulmini

L'e-mail è forse così familiare che diamo per scontati i suoi vantaggi. Gli indirizzi e-mail sono rigorosamente univoci (a differenza di impronte digitali), e l'e-mail rende estremamente facile l'invio e la ricezione di informazioni alla persona giusta. Indirizzi di fulmini hanno lo stesso formato xxx@yyy.zzz dell'e-mail, ma consentono agli utenti di trasferire fondi senza dover pasticciare con un codice QR.

Attualmente, LNURL-Pay è il mezzo più diffuso per implementare gli indirizzi Lightning, ma il protocollo Lightning Address è aperto all'innovazione. Ad esempio, gli indirizzi Lightning possono essere estesi per utilizzare fatture statiche o BULLONE12 (Base della tecnologia Lightning; l'equivalente Lightning delle specifiche Bitcoin Improvement Proposal [BIP]), una volta adottate.

Anche nella sua forma attuale basata su LNURL, gli indirizzi Lightning sono molto popolari e facili da integrare. In effetti, diverse app includono indirizzi Lightning in modo nativo, ma sono disponibili anche server bridge non custoditi per chi ha i propri nodi a cui non importa un po' di configurazione e ci sono istruzioni per una configurazione completamente self-hosted con il tuo nome di dominio.

Per rendere davvero un successo Lightning Addresses, dobbiamo capire come abilitare i portafogli mobili non di custodia a ricevere offline.

WebLN

WebLN parte da una semplice premessa: la maggior parte delle volte quando interagiamo con il web, lo facciamo attraverso un browser web. I browser Web sono praticamente dei piccoli sistemi operativi a sé stanti, in grado di eseguire tutti i tipi di fantastici software nei propri ambienti.

Dato che Lightning è solo un software e che vogliamo integrarlo con il Web, l'aggiunta di Lightning ai browser Web farà molto.

Questa è esattamente l'idea alla base di WebLN, che è un semplice strumento JavaScript per creare estensioni del browser abilitate per Lightning utilizzando makePayment e sendInvoice, ancora una volta le due funzioni principali per qualsiasi tipo di denaro: invio e ricezione. In altre parole, WebLN consente alle app Web di interagire con i portafogli Lightning.

WebLN offre alcuni vantaggi. Innanzitutto, JavaScript è quasi universale e ha quasi trent'anni. Siamo abbastanza sicuri che funzioni. In secondo luogo, WebLN è semplice. Quanto è semplice? Michele Bumann da Alby può configurarlo e dimostrare come usarlo in cinque minuti e trentotto secondi.

Link al video di YouTube qui.

Terzo, WebLN offre un'esperienza utente molto migliore rispetto ai codici QR, a partire dal fatto che non è necessario utilizzare un secondo dispositivo. Sembra nativo, non come una soluzione alternativa. Hai anche accesso a tutti gli eventi del browser, quindi una pressione di un tasto, un clic del mouse, a posizione di scorrimento, ecc. possono tutti attivare un pagamento. La UX QR-free è particolarmente utile sui dispositivi mobili dove funziona anche WebLN.

Tuttavia, WebLN non è un'interfaccia web-to-Lightning universale. Richiede un ambiente abilitato per WebLN. Su un browser desktop una semplice estensione, come Alby, può creare quell'ambiente. Sui dispositivi mobili, gli sviluppatori possono elaborare la propria soluzione WebLN o trovare una casa in un'app Lightning che offre già un ambiente WebLN integrato, come breez ed BluePortafoglio. Forse il fatto che WebLN non sia nativo per i browser Web ne ha impedito o rallentato l'adozione diffusa. Posso vedere un futuro in cui gli host WebLN vengono implementati in modo nativo nei siti che utilizzano WebAssembly, rimuovendo le cuciture per gli utenti finali.

Per molte semplici transazioni basate su browser, come mance e acquisti una tantum, WebLN è tutto ciò che devi integrare le nostre due reti preferite. Funziona così bene che molti dei migliori servizi Lightning lo utilizzano con successo da anni. Quello include Bitrefill, LNMarketse Collider.

API

Quando si tratta di integrare senza problemi un servizio Web e un servizio Lightning, è difficile battere un'API (Application Programming Interface) progettata proprio per questo. L'integrazione delle API offre agli sviluppatori il massimo controllo sull'esperienza utente e sull'interfaccia.

Per quanto possa sembrare bello, le API hanno anche dei compromessi. Il primo è che la scelta di un'API è un impegno abbastanza serio. Non esiste uno standard di integrazione generale, quindi ogni servizio Lightning definisce il proprio lato dell'API a proprio piacimento e il servizio Web dovrà costruire la propria UX attorno all'API. Il passaggio a un'altra API potrebbe essere molto costoso e comportare modifiche significative all'UX e all'architettura generale.

Una considerazione importante quando si sceglie quale servizio Lightning e quale API è adatta per quale app Web o mobile è se selezionare una soluzione self-hosted come BTCPay Server, LNPaga or LNbit, o una soluzione di custodia come ZEBEDE or Strike. Ancora una volta, si applicano dei compromessi.

  • Le soluzioni self-hosted ti danno il pieno controllo sui tuoi fondi, ma richiedono manutenzione sotto forma di gestione di canali, saldi, connettività, conformità normativa, tempo di attività del server, ecc.
  • Le soluzioni di custodia ti tolgono gran parte della manutenzione, ma dovrai fidarti del custode per trattenere i tuoi soldi (e se sei disposto a farlo, non hai davvero bisogno di Lightning in primo luogo). Inoltre, i servizi di custodia operano solo in determinate giurisdizioni per la propria conformità e tali limitazioni geografiche si applicano naturalmente anche ai servizi che li utilizzano a valle.

Ma qualunque siano le loro virtù nella filosofia di Bitcoiner, entrambi gli approcci funzionano. Fontana consente agli utenti di trasmettere in streaming i sat ai loro podcaster preferiti durante l'ascolto e ospitano il proprio nodo con LNPay. Allo stesso modo, il lato fulmine di La funzione di ribaltamento di Twitter funziona sull'API di Strike, quindi suppongo che una grande azienda pubblica (o è solo Elon?) Si trovi a proprio agio con il proprio servizio di custodia.

Scegli quello che fa per te.

LNC

La gestione dei nodi coinvolta in una soluzione self-hosted potrebbe sembrare un ostacolo. Ma immagina di poterlo fare in una comoda interfaccia del browser, gestendo i canali e i saldi del tuo nodo Lightning proprio come faresti con le bollette e i conti su un sito web di internet banking. Ora immagina di offrire quel tipo di funzionalità ai tuoi utenti. Il mondo diventa la tua ostrica fintech abilitata a Lightning. E Collegamento del nodo fulmine (LNC) è la perla.

Come ho detto sopra, i browser sono fondamentalmente sistemi operativi sandbox. LNC applica WebAssembly per sfruttare tale attributo per Lightning. LNC sostanzialmente consente la gestione completa e remota dei nodi tramite un browser. Consentire agli utenti di accedere e controllare i loro nodi tramite il loro browser offre agli sviluppatori web una fantastica flessibilità nel modo in cui creano l'esperienza utente dei loro siti e apre le porte a una gamma di applicazioni potenzialmente redditizie.

LNC consente l'accesso all'interfaccia gRPC (grpc remote procedure call) del nodo, in modo che gli operatori possano aprire, chiudere e ribilanciare i canali oltre ad altre funzioni avanzate. Terminale Web Lightning è un buon esempio di come può apparire in pratica. Questo terminale è fondamentalmente un telecomando per i nodi degli utenti esperti a cui possono accedere ovunque.

Sai quel fumetto "Poi accade un miracolo". Bene, LNC è il miracolo. 

Fonte immagine

Qual è il trucco? Ci sono due. Innanzitutto, LNC nasce da un'idea di Lightning Labs e per ora funziona solo con LND. In secondo luogo, maggiore è il controllo che hai sul tuo nodo dall'esterno, più autorizzazioni dovrai concedere a quell'interfaccia esterna; e più autorizzazioni concedi, maggiore potrebbe essere la tua superficie di attacco. Lightning Labs ne elenca un certo numero potenziali minacce stessi, inclusi gli esseri umani con accesso al demone, tentativi di phishing, vulnerabilità del browser ed estensioni di terze parti. Mentre i tecnici di Lightning Labs sono ingegneri seri, qualsiasi app con autorizzazioni così ampie può essere un invito a essere "pwned".

LSAT

Token di autenticazione del servizio Lightning (LSAT) sono il mezzo finale per integrare Lightning con il Web di cui parleremo. No, non sono un modo per controllare chi è abbastanza fastidioso da diventare un avvocato. L'idea di base alla base degli LSAT è quella di utilizzare un'accurata definizione amaretti per autenticare l'utente e definire le sue capacità di pagamento sul sito.

Abilmente, il protocollo LSAT utilizza il codice HTTP 402 che è un codice di errore lato client che significa "Pagamento richiesto" o "Riservato per uso futuro", a seconda di chi chiedi (le specifiche LSAT di Lightning Labs in modo impressionante, ma paradossale, affermano "questo documento presuppone che il futuro sia arrivato"). Quel codice 402 viene utilizzato per invocare un "ticket", un amaretto che identifica simultaneamente l'utente e definisce come quell'utente può interagire con il servizio.

Il primo vantaggio derivante dagli LSAT è che l'autenticazione e le autorizzazioni di pagamento avvengono in un unico passaggio. Il servizio riconosce l'utente e come dovrebbero funzionare i pagamenti da e verso quell'utente non appena vengono visualizzati. Nessun nome utente, password o impostazione di importi ad ogni visita. A volte lo è è solo bello essere familiare.

La più deliziosa di tutte le tecnologie di integrazione Lightning.

Fonte immagine

In secondo luogo, queste API possono specificare pagamenti misurati, proprio come i sat di streaming nel Lettore di podcast Breez (anche se usiamo invio chiavi invece). Questo è un altro modo per farlo sopprimere gli abbonamenti. Gli utenti possono pagare per ciò che utilizzano, che si tratti di podcast audio, video in streaming, giochi, contenuti multimediali basati su testo, in base a qualsiasi unità o intervallo, fino al secondo.

Gli LSAT hanno un grande potenziale e potrebbero forse anche bandire i bot dai social media addebitando micropagamenti per microinterazioni che sarebbero banali per gli utenti ma proibitive per i bot.

Sembra fantastico! Tecnologia rivoluzionaria che vieta i bot e integra Lightning e il web! Hallelujah! Qual è il trucco? Non lo so, ma non riesco a capire come gli LSAT siano in circolazione da alcuni anni e tuttavia non riesco a nominare un singolo servizio importante che li abbia implementati. È solo una questione di effetti di rete e tutti aspettano che tutti gli altri facciano il grande passo? O c'è qualche inibizione più profonda e sostanziale? Forse tu, caro lettore, puoi educarmi su questo.

Il futuro è un'estensione del presente

Alcuni dicono che il web3 sia il futuro, e sembra avere qualcosa a che fare con le criptovalute... e una rete... e probabilmente c'è anche qualche buffoneria DeFi da qualche parte. Non lo so e non sono sicuro che lo sappia anche qualcun altro. Quello che so è che il futuro appartiene a Bitcoin, che Lightning è la tecnologia che liquefa bitcoin e che abbiamo un World Wide Web funzionante che tutti amano e vogliono mantenere.

Non è ovvio che Lightning è destinato a penetrare nel web e che il web è destinato a utilizzare Lightning come tecnologia di pagamento leader? o sono solo io?

L'integrazione di Lightning e il web una volta era una prospettiva intimidatoria, ma non più. Abbiamo una gamma di tecnologie per una vasta gamma di casi d'uso, una fiorente comunità di sviluppatori che innovano e perfezionano la tecnologia e un mondo che ama già il web e sta diventando sempre più appassionato di bitcoin.

Forse la cosa migliore è che non abbiamo bisogno di alcuno standard centrale che ci dica come integrare Lightning e il web. Ognuno può scegliere la tecnologia più adatta alle proprie esigenze locali e collaborare con la comunità di sviluppo per aiutarla a migliorarla. Il nuovo web abilitato per Lightning crescerà organicamente da zero, come dovrebbe.

Questo è un guest post di Roy Sheinfeld. Le opinioni espresse sono interamente proprie e non riflettono necessariamente quelle di BTC Inc. o Bitcoin Magazine.

Timestamp:

Di più da Bitcoin Magazine