Lightning For Life — jak błyskawica może i będzie zintegrować się z siecią?

Węzeł źródłowy: 1332590

Lightning jest gotowy do bezproblemowej integracji z naszymi codziennymi operacjami w taki sam sposób, jak ma to miejsce w Internecie.

Roy Sheinfeld jest współzałożycielem i dyrektorem generalnym Breez, firmy Bitcoin zajmującej się płatnościami Lightning.

Za każdym razem, gdy coś wpisujesz w Google, za każdym razem, gdy robisz głupka, przeprowadź poważne badania na YouTube lub Instagramie, za każdym razem, gdy zamawiasz Ubera, za każdym razem, gdy sprawdzasz swoje portfolio lub czytasz wiadomości, korzystasz z sieci. Właściwie to właśnie teraz korzystasz z sieci i czytasz to. Sieć jest narzędziem, ale jest to narzędzie w taki sam sposób, w jaki narzędziami są płuca czy kciuki; stało się integralną częścią nas, z której stale korzystamy, nawet o tym nie myśląc.

Pieniądze są podobne pod tym względem, że używamy ich stale i nieświadomie. Tak długo, jak twoja lodówka działa, dopóki twoje fundusze gdzieś naliczają odsetki, dopóki zegar zadłużenia na twojej pożyczce tyka, jesteś zaangażowany w działalność finansową. Twoje finansowe ja nie śpi i utrzymuje swoją pozycję w globalnej sieci wartości, nawet gdy śpisz.

Bitcoinerzy wydają się być świadomi tego typu rzeczy. Jeśli używasz Lightninga, prawdopodobnie postrzegasz go jako łącznik między tobą a globalną siecią wartości. To nie tylko sposób na kup piwo w Helsinkach; Błyskawica łączy Cię z morzem Bitcoina.

Co dziwne, te dwie kluczowe sieci — sieć i Lightning — nadal działają równolegle przy niewielkiej integracji. Nie chcemy żyć bez żadnego z nich, ale szwy między nimi są namacalne, czasem niezręczne.

Jak dowiedziałem się w hackathon bolt.fun (pozdrowienia dla mojego człowieka Johns!), wielu programistów internetowych chciałoby tworzyć aplikacje z funkcjonalnością Lightning. Chęć integracji istnieje, ale wydaje się, że wielu nie zdaje sobie sprawy, że jest też sposób. W rzeczywistości istnieje kilka sposobów na wprowadzenie Lightninga do sieci i każdy z nich ewoluuje z własnymi mocnymi stronami i przypadkami użycia. Może świat po prostu o nich nie wie lub ich nie rozumie?

Więc zróbmy to. Przyjrzyjmy się, jak zintegrować sieć i Błyskawicę, wyciągnąć pasma, splatać je razem i tworzyć mocniejszą, połączoną, bezszwową siatkę.

Źródło zdjęcia

LNURL: Uproszczenie

Doświadczenie użytkownika Lightning (UX) przeszło długą drogę, odkąd pierwszy to okrył trzy lata temu. Ale luki pozostają. Jednym z przykładów są faktury. Z technicznego punktu widzenia tylko odbiorca może zainicjować płatność, co jest nieodpowiednie w wielu kontekstach. Wielu użytkowników może nie chcieć generować faktury z jakiegokolwiek powodu, a w scenariuszach takich jak dawanie napiwków może to wydawać się kłopotliwe i niegrzeczne.

LNURL to bardzo prosty zestaw specyfikacji, który wypełni niektóre z pozostałych luk UX, w tym generowanie faktur. Piękno LNURL polega na jego prostocie. Jak sama nazwa wskazuje, specyfikacje LNURL są oparte na linkach, albo w formie klikalnych adresów URL, albo skanowalnych kodów QR. Linki URL są częścią naszego zaplecza technologicznego. Widziałeś już cztery w tym poście, prawdopodobnie nawet ich nie zauważając. Kody QR to to samo, tylko inna reprezentacja wizualna:

Kody QR są łatwe i znajome. Nie widzę, żebyśmy w najbliższym czasie z nich zrezygnowali.

Tam są kilka LNURL specyfikacje są dostępne, ale są one szczególnie istotne w przypadku integracji internetowej Lightning:

  • LNURL-Zapłać: Załóżmy, że prowadzisz bloga Bitcoin. Chcesz zbierać napiwki, ale nie chcesz generować i renderować faktury za każdą napiwek, ani nie chcesz wchodzić w interakcje z każdym czytelnikiem osobno dla każdej napiwku. LNURL-Pay umożliwia generowanie kodów QR dla płatności w określonym zakresie, powiedzmy 2,500 – 10,000 XNUMX sat. Użytkownik może po prostu zeskanować kod, wpisać dokładną kwotę i zapłacić. Użytkownik pozostaje nieświadomy języka obrazów wstępnych i faktur, zamiast tego po prostu skanuje kod i odpowiada na monit.
  • LNURL-Wypłata: To jest odwrotny scenariusz: chcesz płacić użytkownikom za interakcję z Twoją witryną, ale chcesz oszczędzić im kłopotu z generowaniem faktury. LNURL-Withdraw pozwala użytkownikom zeskanować kod lub kliknąć łącze, które poprosi ich portfele o wygenerowanie odpowiedniego rodzaju faktury i przesłanie jej do węzła w celu zapłaty.
  • Autoryzacja LNURL to kolejne fajne narzędzie LNURL. Generuje zestaw kluczy publiczno-prywatnych na podstawie fraz źródłowych w portfelach użytkowników, aby umożliwić im logowanie się na stronach internetowych pod pseudonimem. Jest tak samo prywatne, jak sama fraza źródłowa i trudniejsze do brutalnej siły niż „hasło123” lub „Correct_horse_battery_staple”. Co najlepsze, wykorzystuje dane już zawarte w portfelach użytkowników, gotowe do użycia przy niewielkim nakładzie.

Adresy Błyskawicy

E-mail jest prawdopodobnie tak znajomy, że traktujemy jego zalety jako oczywiste. Adresy e-mail są całkowicie unikalne (w przeciwieństwie do odciski palców), a poczta e-mail sprawia, że ​​wysyłanie i odbieranie informacji do dokładnie odpowiedniej osoby jest niezwykle łatwe. Adresy Błyskawicy mają ten sam format xxx@yyy.zzz co e-mail, ale umożliwiają użytkownikom przelewanie środków bez konieczności bałaganu z kodem QR.

Obecnie LNURL-Pay jest najpopularniejszym sposobem implementacji adresów Lightning, ale protokół Lightning Address jest otwarty na innowacje. Na przykład adresy Lightning można rozszerzyć o faktury statyczne lub ŚRUBA12 (Podstawa technologii Lightning; Lightning odpowiednik specyfikacji Bitcoin Improvement Proposal [BIP]), po ich przyjęciu.

Nawet w obecnej formie opartej na LNURL, adresy Lightning są bardzo popularne i łatwe w integracji. Rzeczywiście, kilka aplikacji zawiera adresy Lightning natywnie, ale dostępne są również serwery mostów bez nadzoru dla tych, którzy mają własne węzły, którzy nie mają nic przeciwko niewielkiej konfiguracji i są instrukcje dla w pełni samodzielnej konfiguracji z własną nazwą domeny.

Aby adresy Lightning naprawdę odniosły sukces, musimy dowiedzieć się, jak umożliwić niechronionym portfelom mobilnym odbierać w trybie offline.

WebLN

WebLN zaczyna się od prostego założenia: przez większość czasu, gdy wchodzimy w interakcję z siecią, robimy to za pośrednictwem przeglądarki internetowej. Przeglądarki internetowe są praktycznie małymi systemami operacyjnymi, zdolnymi do uruchamiania wszelkiego rodzaju fajnego oprogramowania we własnych środowiskach.

Biorąc pod uwagę, że Lightning to tylko oprogramowanie i chcemy zintegrować go z Internetem, dodanie Lightninga do przeglądarek internetowych to długa droga.

To jest właśnie idea WebLN, która jest prostym narzędziem JavaScript do tworzenia rozszerzeń przeglądarki obsługujących Lightning za pomocą makePayment i sendInvoice — ponownie, dwie podstawowe funkcje dla każdego rodzaju pieniędzy: wysyłanie i odbieranie. Innymi słowy, WebLN umożliwia aplikacjom internetowym interakcję z portfelami Lightning.

WebLN ma kilka zalet. Po pierwsze, JavaScript jest prawie uniwersalny i ma prawie trzydzieści lat. Jesteśmy prawie pewni, że to działa. Po drugie, WebLN jest prosty. Jak proste? Michał Bumann od Alby może go skonfigurować i zademonstrować, jak go używać w pięć minut i trzydzieści osiem sekund.

Link do filmu na YouTube tutaj.

Po trzecie, WebLN zapewnia znacznie lepszy UX niż kody QR, zaczynając od tego, że nie musisz używać drugiego urządzenia. Czuje się natywnie, a nie jak obejście. Masz również dostęp do wszystkich zdarzeń przeglądarki, więc naciśnięcie klawisza, kliknięcie myszą, a pozycja przewijaniaitp. mogą wywołać płatność. UX bez QR jest szczególnie przydatny na urządzeniach mobilnych, gdzie działa również WebLN.

Mimo to WebLN nie jest uniwersalnym interfejsem web-to-Lightning. Wymaga środowiska obsługującego WebLN. W przeglądarce komputerowej proste rozszerzenie, takie jak Alby, może stworzyć to środowisko. Na urządzeniach mobilnych programiści mogą wypracować własne rozwiązanie WebLN lub znaleźć dom w aplikacji Lightning, która już oferuje wbudowane środowisko WebLN, takie jak Breez i Niebieski portfel. Być może fakt, że WebLN nie jest natywny dla przeglądarek internetowych, uniemożliwił lub spowolnił jego rozpowszechnienie. Widzę przyszłość, w której hosty WebLN są implementowane natywnie w witrynach przy użyciu WebAssembly, usuwając szwy dla użytkowników końcowych.

W przypadku wielu prostych transakcji w przeglądarce, takich jak napiwki i jednorazowe zakupy, wystarczy zintegrować WebLN nasze dwie ulubione sieci. Działa tak dobrze, że wiele czołowych usług Lightning korzysta z niego z powodzeniem od lat. To obejmuje Bitrefill, LNRynki, Kolider.

Pszczoła

Jeśli chodzi o bezproblemową integrację usługi sieciowej i usługi Lightning, trudno jest pobić interfejs programowania aplikacji (API) przeznaczony właśnie do tego. Integracja API daje programistom największą kontrolę nad doświadczeniem użytkownika i interfejsem.

Choć brzmi to dobrze, interfejsy API mają również kompromisy. Po pierwsze, wybór API to dość poważne zobowiązanie. Nie ma nadrzędnego standardu integracji, więc każda usługa Lightning definiuje swoją stronę API tak, jak chce, a usługa sieciowa będzie musiała zbudować swój UX wokół API. Przejście na inny interfejs API może być bardzo kosztowne i pociągać za sobą istotne zmiany w UX i ogólnej architekturze.

Główną kwestią przy wyborze usługi Lightning i odpowiedniego interfejsu API dla danej aplikacji internetowej lub mobilnej jest wybór rozwiązania z własnym hostingiem, takiego jak Serwer BTCPay, LNPay or LNbitylub rozwiązanie zabezpieczające, takie jak ZEBEDEUSZ or Uderzać. Ponownie obowiązują kompromisy.

  • Rozwiązania z własnym hostingiem zapewniają pełną kontrolę nad środkami, ale wymagają konserwacji w postaci kanałów zarządzania, sald, łączności, zgodności z przepisami, czasu pracy serwera itp.
  • Rozwiązania powiernicze zabierają ci dużo czasu na konserwację, ale będziesz musiał zaufać powiernikowi, że przechowa twoje pieniądze (a jeśli chcesz to zrobić, tak naprawdę nie potrzebujesz Lightninga). Ponadto usługi powiernicze działają tylko w niektórych jurysdykcjach ze względu na ich własną zgodność, a te ograniczenia geograficzne mają oczywiście zastosowanie również do usług, które z nich korzystają na dalszych etapach.

Ale niezależnie od ich zalet w filozofii Bitcoinera, oba podejścia działają. Fontanna pozwala użytkownikom przesyłać strumieniowo swoje ulubione podcasty podczas słuchania i hostować własny węzeł za pomocą LNPay. Z tego samego powodu strona Błyskawicy Funkcja napiwków na Twitterze działa na API Strike, więc myślę, że duża spółka publiczna (a może to tylko Elon?) jest zadowolona ze swojej usługi powierniczej.

Wybierz to, co jest dla Ciebie najlepsze.

LNC

Zarządzanie węzłami związane z rozwiązaniem samoobsługowym może wydawać się uciążliwe. Ale wyobraź sobie, że możesz to zrobić w poręcznym interfejsie przeglądarki, zarządzając kanałami i saldami swojego węzła Lightning tak, jakbyś zarządzał rachunkami i kontami w witrynie bankowości internetowej. A teraz wyobraź sobie oferowanie tego rodzaju funkcjonalności swoim użytkownikom. Świat staje się twoją fintechową ostrygą z obsługą błyskawicy. I Połączenie z węzłem błyskawicy (LNC) to perła.

Jak powiedziałem powyżej, przeglądarki są w zasadzie systemami operacyjnymi w piaskownicy. LNC stosuje WebAssembly, aby wykorzystać ten atrybut dla Lightning. LNC w zasadzie pozwala na pełne, zdalne zarządzanie węzłami przez przeglądarkę. Umożliwienie użytkownikom dostępu do węzłów i kontrolowania ich za pośrednictwem przeglądarki daje twórcom stron internetowych fantastyczną elastyczność w tworzeniu UX swoich witryn i otwiera drzwi do szeregu potencjalnie lukratywnych aplikacji.

LNC umożliwia dostęp do interfejsu gRPC (zdalne wywołanie procedury grpc) węzła, dzięki czemu operatorzy mogą otwierać, zamykać i ponownie równoważyć kanały oprócz innych zaawansowanych funkcji. Terminal internetowy Lightning jest dobrym przykładem tego, jak to może wyglądać w praktyce. Ten terminal jest w zasadzie zdalnym sterowaniem dla węzłów zaawansowanych użytkowników, do których mogą uzyskać dostęp z dowolnego miejsca.

Znasz ten komiks „Wtedy następuje cud”. Cóż, LNC to cud. 

Źródło zdjęcia

Jaki jest haczyk? Istnieją dwa. Po pierwsze, LNC jest pomysłem Lightning Labs i na razie działa tylko z LND. Po drugie, im większą kontrolę masz nad swoim węzłem z zewnątrz, tym więcej uprawnień będziesz musiał przyznać temu zewnętrznemu interfejsowi; a im więcej uprawnień przyznasz, tym większa może być powierzchnia ataku. Lightning Labs wymienia kilka potencjalne zagrożenia samych siebie, w tym ludzi z dostępem do demona, prób phishingu, luk w zabezpieczeniach przeglądarki i rozszerzeń stron trzecich. Podczas gdy specjaliści ds. technologii w Lightning Labs są poważnymi inżynierami, każda aplikacja z tak szerokimi uprawnieniami może być zaproszeniem do „pwned”.

LSAT

Tokeny uwierzytelniania usługi Lightning (LSAT) to ostateczny sposób na zintegrowanie Lightning z siecią, o którym będziemy rozmawiać. Nie, nie są sposobem na sprawdzenie, kto jest na tyle denerwujący, żeby się stać prawnik. Podstawową ideą LSATs jest użycie dokładnie określonych makaroniki w celu uwierzytelnienia użytkownika i zdefiniowania jego możliwości płatniczych w serwisie.

Zręcznie, protokół LSAT używa kodu HTTP 402, który jest kodem błędu po stronie klienta i oznacza albo „Płatność wymagana"Lub"zarezerwowane do wykorzystania w przyszłości”, w zależności od tego, kogo zapytasz (specyfikacja Lightning Labs LSAT jest niesamowita, ale paradoksalnie stwierdza, że ​​„ten dokument zakłada, że ​​nadeszła przyszłość”). Ten kod 402 służy do wywołania „biletu” — makaronika, który jednocześnie identyfikuje użytkownika i określa, w jaki sposób ten użytkownik może wchodzić w interakcję z usługą.

Pierwszą korzyścią wynikającą z LSAT jest to, że uwierzytelnianie i uprawnienia do płatności są realizowane w jednym kroku. Usługa rozpoznaje użytkownika oraz sposób, w jaki płatności do i od tego użytkownika mają działać, gdy tylko się pojawią. Żadnych nazw użytkowników, haseł ani ustalania kwot przy każdej wizycie. Czasami jest po prostu miło być znajomym.

Najsmaczniejsza ze wszystkich technologii integracji Lightning.

Źródło zdjęcia

Po drugie, te interfejsy API mogą określać płatności mierzone, podobnie jak satelity strumieniowe w Odtwarzacz podcastów Breez (chociaż używamy Keyend zamiast). To kolejny sposób na odrzucaj subskrypcje. Użytkownicy mogą płacić za to, z czego korzystają — niezależnie od tego, czy jest to podcast audio, strumieniowe wideo, gra, multimedia tekstowe — w dowolnej jednostce lub interwale, z dokładnością do sekundy.

LSAT mają ogromny potencjał i może nawet usunąć boty z mediów społecznościowych poprzez pobieranie mikropłatności za mikrointerakcje, które byłyby trywialne dla użytkowników, ale zaporowe dla botów.

Brzmi wspaniale! Rewolucyjna technologia, która blokuje boty i integruje Lightning z siecią! Alleluja! Jaki jest haczyk? Nie wiem, ale nie potrafię rozgryźć, jak LSATs istnieją od kilku lat, a mimo to nie mogę wymienić ani jednej głównej usługi, która je zaimplementowała. Czy to tylko kwestia efektów sieciowych i wszyscy czekają, aż wszyscy inni się zanurzą? A może jest jakieś głębsze, bardziej znaczące zahamowanie? Może ty, drogi czytelniku, możesz mnie na tym pouczyć.

Przyszłość jest przedłużeniem teraźniejszości

Niektórzy twierdzą, że web3 to przyszłość i wydaje się, że ma coś wspólnego z kryptowalutą… i siecią… i prawdopodobnie gdzieś tam jest też trochę wygłupów DeFi. Nie wiem i nie jestem pewien, czy ktokolwiek inny też. Wiem tylko, że przyszłość należy do Bitcoina, że ​​Lightning to technologia, która upłynnia bitcoiny i że mamy działającą sieć WWW, którą wszyscy kochają i chcą zachować.

Czy nie jest oczywiste, że przeznaczeniem Lightninga jest penetracja sieci i że sieć ma wykorzystywać Lightning jako wiodącą technologię płatności? Czy to tylko ja?

Integracja Lightninga i sieci była kiedyś zastraszającą perspektywą, ale już nie. Mamy szereg technologii do różnych zastosowań, kwitnącą społeczność programistów wprowadzających innowacje i udoskonalających technologię oraz świat, który już kocha sieć i coraz bardziej lubi bitcoin.

Być może najlepsze jest to, że nie potrzebujemy żadnego centralnego standardu, aby powiedzieć nam, jak zintegrować Lightning i sieć. Każdy może wybrać technologię, która najlepiej odpowiada jego lokalnym potrzebom, i współpracować ze społecznością programistyczną, aby ją ulepszyć. Nowa sieć z obsługą Lightning będzie rosła organicznie od podstaw, tak jak powinna.

To jest gościnny post Roya Sheinfelda. Wyrażone opinie są całkowicie ich własnymi i niekoniecznie odzwierciedlają opinie BTC Inc. lub Magazyn Bitcoin.

Znak czasu:

Więcej z Magazyn Bitcoin