Przewodnik dla początkujących po Lightning Network Bitcoina
Przewodnik dla początkujących po Lightning Network Bitcoina
Strona GłównaArtykuły

Przewodnik dla początkujących po Lightning Network Bitcoina

Początkujący
Published Nov 28, 2018Updated May 11, 2021
18m


Spis Treści


Wprowadzenie

Kryptowaluty mają pewne unikalne właściwości. Nie można ich łatwo zhakować ani zamknąć, a każdy może użyć ich do przekazania danej wartości na cały świat bez interwencji strony trzeciej.
Aby upewnić się, że funkcje te pozostaną nienaruszone, należy dokonać znacznych kompromisów. Ponieważ wiele węzłów odpowiada za utrzymywanie sieci kryptowalut, przepustowość jest ograniczona. W rezultacie liczba transakcji na sekundę (TPS), które może przetworzyć sieć blockchain, jest stosunkowo niska jak na technologię, która ma zostać przyjęta przez masy.
Aby pokonać nieodłączne ograniczenia technologii blockchain, zaproponowano szereg rozwiązań skalowalności w celu zwiększenia liczby transakcji, które sieć może obsłużyć. W tym artykule zagłębimy się w Lightning Network, jedno z takich rozszerzeń protokołu Bitcoin.


Co to jest Lightning Network?

Lightning Network to sieć "siedząca na" blockchainie, mająca na celu ułatwienie szybkich transakcji peer-to-peer. Nie dotyczy to wyłącznie Bitcoina - zintegrowały ją także inne kryptowaluty, takie jak Litecoin.
Być może zastanawiasz się, co rozumiemy przez „siedząca na blockchainie”. Lightning Network to tak zwane rozwiązanie off-chain lub warstwa druga. Umożliwia osobom przeprowadzanie transakcji bez konieczności rejestrowania każdej z nich w blockchainie.
Lightning Network jest niezależne od sieci Bitcoina - ma własne węzły i oprogramowanie, ale mimo to komunikuje się z głównym łańcuchem. Aby wejść lub wyjść z Lightning Network, musisz utworzyć specjalne transakcje w blockchainie.

To, co faktycznie robisz przy pierwszej transakcji, polega na zbudowaniu pewnego rodzaju smart kontraktu z innym użytkownikiem. Wkrótce zajmiemy się szczegółami - na razie pomyślmy o inteligentnej umowie prowadzącej prywatną księgę z drugim użytkownikiem. Do tej księgi możesz wpisać wiele transakcji. Są widoczne tylko dla Ciebie i twojego kontrahenta, ale żaden z was nie może oszukiwać z powodu pewnych specjalnych konfiguracji.

Ta mini-księga nazywa się kanałem. Powiedzmy, że Alice i Bob umieścili po 5 BTC w smart kontrakcie. Na tym kanale - oboje mieliby teraz saldo 5 BTC. Alice mogłaby wtedy wpisać do księgi płatność 1 BTC dla Boba. Teraz Bob ma 6 BTC po swojej stronie, a Alice ma 4. Wtedy Bob może wysłać 2 BTC z powrotem do Alice w późniejszym terminie, aktualizując salda do 6 BTC po stronie Alice i 4 BTC po stronie Boba.

W dowolnym momencie można opublikować bieżący stan kanału do blockchainu. W tym momencie salda po obu stronach kanału są przydzielane odpowiednim stronom w głównej sieci.

Zgodnie z nazwą, transakcje Lightning są błyskawiczne. Nie trzeba czekać na potwierdzenia blokowe - płatności można dokonywać tak szybko, jak pozwala na to połączenie internetowe.


Dlaczego Lightning Network jest potrzebne?

Jak dotąd Lightning Network (lub po prostu LN) wydaje się najbardziej sensownym podejściem do skalowania blockchaina Bitcoina. Koordynacja zmian w tak rozległym ekosystemie jest trudna - istnieje ryzyko hard forków i potencjalnie katastrofalnych błędów. Przy tak dużej wartości, eksperymentowanie jest niezwykle niebezpieczne.

Kiedy odsuniesz to eksperymentowanie od blockchaina, zyskasz znacznie większą elastyczność. Jeśli coś pójdzie nie tak, nie będzie to miało wpływu na rzeczywistą sieć. Rozwiązania warstwy drugiej nie podważają żadnych założeń bezpieczeństwa, które utrzymywały protokół przez ponad 10 lat

Nie ma też przymusu zmiany starego sposobu działania. Transakcje sieciowe nadal działają normalnie dla użytkownika końcowego, ale teraz istnieje także opcja przeprowadzania transakcji poza łańcuchem.

Korzystanie z Lightning Network ma kilka zalet. Przyjrzymy się najważniejszym poniżej.


Skalowalność

Bloki Bitcoina są tworzone co około dziesięć minut i mogą pomieścić ograniczoną liczbę transakcji. Przestrzeń blokowa jest skończonym zasobem, więc musisz licytować przeciwko innym użytkownikom, aby w odpowiednim czasie uwzględniono Twoją transakcję. Górnicy dbają przede wszystkim o zarobek, dlatego najpierw uwzględniają transakcje z wyższymi opłatami.
Gdy niewielu użytkowników próbuje jednocześnie wysyłać środki, nie stanowi to problemu. Możesz ustawić niską opłatę i prawdopodobnie transakcja zostanie uwzględniona w następnym bloku. Natomiast gdy wszystkie transakcje nadawane są jednocześnie, średnia opłata może znacznie wzrosnąć. Kilkakrotnie przekroczyła 5 USD, a w szczytowym okresie hossy w 2017 r. przekroczyła nawet 50 USD.


Średnia opłata za transakcje Bitcoin (w USD)


Może to wydawać się nieistotne w przypadku transakcji przenoszących bitcoiny o wartości tysięcy dolarów, ale w przypadku mniejszych płatności ma to znaczenie. Kto chce zapłacić za kawę o wartości 3 USD z dołączoną opłatą w wysokości 5 USD?

W Lightning Network nadal płacisz dwie opłaty - jedną za otwarcie kanału, a drugą za jego zamknięcie. Ty i twój kontrahent możecie dokonywać tysięcy transakcji za darmo, gdy kanał będzie otwarty. Po zakończeniu wystarczy opublikować końcowy stan w blockchainie.

Na szerszą skalę, jeśli więcej użytkowników będzie polegać na rozwiązaniach off-chain, takich jak Lightning Network, przestrzeń blokowa zostanie efektywniej wykorzystana. Przelewy o niskiej wartości i wysokiej częstotliwości mogą być realizowane w kanałach płatniczych, natomiast przestrzeń blokowa jest wykorzystywana do większych transakcji i otwierania / zamykania kanałów. Dzięki temu system byłby dostępny dla znacznie szerszej bazy użytkowników, umożliwiając skalowanie na dłuższą metę.


Mikropłatności

Istnieje minimalna ilość Bitcoin, którą możesz wysłać w transakcji - około 0,00000546 BTC. W momencie pisania jest to około czterech centów. To niewielka ilość, ale Lightning Network pozwala Ci przesuwać limity, by przeprowadzać transakcje z najmniejszą dostępną obecnie jednostką - 0,00000001 BTC czyli jednym satoshi.

Lightning jest znacznie bardziej atrakcyjny w przypadku mikropłatności. Opłaty za regularne transakcje sprawiają, że wysyłanie niewielkich kwot do głównego łańcucha jest niepraktyczne. Jednak na osobnym kanale możesz bezpłatnie wysyłać ułamek ułamka bitcoina.

Mikropłatności są odpowiednie dla wielu przypadków. Niektórzy spekulują, że mogą one być realnym zamiennikiem modeli opartych na subskrypcji, w których użytkownicy płacą niewielkie kwoty za każdym razem, gdy korzystają z usługi.


Prywatność

Kolejny benefit z Lightning Network polega na tym, że może zaoferować użytkownikom wysoki stopień poufności. Strony nie muszą podawać swoich kanałów do wiadomości szerszej sieci. Chociaż możesz spojrzeć na blockchain i powiedzieć, że ta transakcja otworzyła kanał, niekoniecznie będziesz w stanie powiedzieć, co się w nim dzieje. Jeśli uczestnicy zdecydują się ustawić swój kanał jako prywatny, tylko oni będą wiedzieć, jakie transakcje mają miejsce.

Jeśli Alice ma kanał z Bobem, a Bob ma kanał z Carol, Alice i Carol mogą przesyłać sobie płatności za pośrednictwem Boba. Jeśli Dan jest połączony z Carol, Alice może wysyłać mu płatności. Możesz sobie wyobrazić, jak rozwija się to w rozległą sieć połączonych kanałów płatności. W takiej konfiguracji nie można mieć pewności, do kogo Alice wysłała środki po zamknięciu kanału.


Jak działa Lightning Network?

Wyjaśniliśmy, w jaki sposób sieć Lightning Network opiera się na kanałach między węzłami na wysokim poziomie. Spójrzmy teraz głębiej.


Adresy multisignature

Adres multisignature (lub multisig) to taki, z którego środki może wydać wiele kluczy prywatnych. Tworząc takowy, określasz, ile kluczy prywatnych może wydać fundusze i ile z tych kluczy jest wymaganych do podpisania transakcji. Na przykład schemat 1 z 5 oznacza, że pięć kluczy może wygenerować prawidłowy podpis ale tylko jeden jest potrzebny do potwierdzenia transakcji. Schemat 2 na 3 wskazywałby, że spośród trzech możliwych kluczy, do wydania środków potrzebne są dwa dowolne klucze.
Aby zainicjować kanał Lightning, uczestnicy blokują fundusze w schemacie 2 z 2. Istnieją tylko dwa klucze prywatne zdolne do podpisania i oba są potrzebne do przenoszenia monet. Wróćmy w tym momencie do naszych przyjaciół Alice i Boba. W najbliższych miesiącach będą sobie nawzajem płacić, więc postanowili otworzyć kanał Lightning Network.

Zaczyna się to od złożenia przez nich obu, powiedzmy, 3 BTC na wspólny adres multisig. Warto powtórzyć, że Bob nie może przenieść środków z adresu bez zgody Alicji lub odwrotnie.

Teraz mogliby po prostu zapisywać wszystko na kartce papieru. Oboje mają saldo początkowe 3 BTC. Jeśli Alice chce zapłacić Bobowi 1 BTC, może po prostu zanotować, że Alice ma teraz 2 BTC, a Bob ma 4 BTC? Salda można śledzić w ten sposób, dopóki nie zdecydują się przenieść środków poza kanał.

To możliwe, ale gdzie jest w tym zabawa? Co ważniejsze, czy to nie sprawia, że ktoś może nie chcieć współpracować? Jeśli Alice skończy z 6 BTC, a Bob nie otrzyma żadnego, Bob nic nie traci, odmawiając uwolnienia funduszy (z wyjątkiem być może jego przyjaźni z Alice).


Kontrakty Hash Timelock (HTLC)

Powyższy system jest nudny i niewiele oferuje w porównaniu z dzisiejszymi znanymi konfiguracjami. Staje się o wiele bardziej interesujący, kiedy wprowadzamy mechanizm, który wymusza „kontrakt” między Alice i Bobem. Jeśli jedna ze stron zdecyduje się nie grać zgodnie z zasadami, wówczas druga strona nadal ma rozwiązanie, aby wyciągnąć fundusze z kanału.

Ten mechanizm jest kontraktem Hash Timelock (lub HTLC). Termin ten może wydawać się zniechęcający, ale w rzeczywistości jest to całkiem prosta koncepcja. Łączy dwie inne technologie (hashlocki i timelocki), aby zaradzić wszelkim niechcianym zachowaniom na kanałach płatności.
Hashlock to warunek nałożony na transakcję, który zastrzega, że możesz wydawać środki tylko poprzez udowodnienie, że znasz "tajemnicę". Nadawca hashuje dane i dołącza hash w transakcji do odbiorcy. Jedynym sposobem, w jaki odbiorca może wydać dane środki, jest dostarczenie oryginalnych danych (tajnych) pasujących do hashu. Jedynym sposobem na dostarczenie tych danych jest przekazanie ich przez nadawcę.
Timelock to stan, który uniemożliwia wydawanie środków przed upływem określonego czasu. Jest określony albo jako czas rzeczywisty, albo jako określona wysokość bloku.

HTLC są tworzone przez połączenie hashlocków i timelocków. W praktyce HTLC mogą być wykorzystywane do tworzenia płatności warunkowych - odbiorca musi podać tajemnicę przed określonym czasem, lub nadawca może odzyskać środki. Prawdopodobnie łatwiej będzie to zrozumieć na przykładzie, więc wróćmy do Alice i Boba.


Otwieranie i zamykanie kanałów

Podaliśmy przykład Alice i Boba, którzy właśnie utworzyli transakcje, którą obsługuje adres multisignature, który będą dzielić. Te transakcje nie zostały jeszcze opublikowane w blockchainie! Najpierw musimy zrobić jeszcze jedną rzecz.


Trzy monety od Boba i trzy monety od Alice.


Pamiętaj, że jedynym sposobem, aby te monety mogły wyjść z multisiga, jest podpisanie transakcji przez Alice i Boba. Gdyby Alice chciała wysłać wszystkie sześć monet na zewnętrzny adres, potrzebowałaby zgody Boba. Najpierw przygotowała transakcję (sześć bitcoinów na ten adres) i dodała własny podpis. 

Mogła od razu spróbować wyemitować transakcję, ale byłaby ona nieważna, ponieważ Bob nie dał swojego podpisu. Alice musi najpierw przekazać mu niekompletną transakcję. Po dodaniu podpisu staje się ona ważna.

Nadal nie wprowadziliśmy mechanizmu, który zapewni wszystkim uczciwość. Jak powiedzieliśmy wcześniej, jeśli twój kontrahent odmówi współpracy, twoje fundusze zostaną skutecznie uwięzione. Przejdźmy do mechanizmu, który temu zapobiega. Istnieje kilka zmiennych.

Każda ze stron musi wymyślić sekret - nazwijmy je As i Bs. Wiadomo, że nie byłyby sekretami, gdyby Alice i Bob je ujawnili, więc na razie będą je ukrywać. Para wygeneruje hashe odpowiednich sekretów - h(As) i h(Bs). Zamiast więc dzielić się swoimi sekretami, dzielą się tymi hashami.


Alice i Bob dzielą się ze sobą hashami swoich sekretów.


Alice i Bob muszą również utworzyć zestaw transakcji zobowiązanych (commitment transactions), zanim opublikują swoje pierwsze transakcje na adres multisignature. To da im bezpieczeństwo na wypadek, gdyby kontrahent postanowił odmówić współpracy.

Jeśli myślisz o kanale jako o mini-księdze, o której wspominaliśmy wcześniej, transakcje zobowiązane to aktualizacje, które wprowadzasz do księgi. Za każdym razem, gdy tworzysz nową parę transakcji zobowiązanych, przywracasz równowagę między dwoma uczestnikami.

Ta należąca do Alice będzie miała dwa wyjścia - jedno, które płaci za adres, którego jest właścicielem, a drugie, które jest zablokowane na nowym adresie multisig. Podpisuje ją i daje Bobowi.


Transakcja Alice z dwoma wyjściami - jednym na jej własny adres, a drugim na nowy multisig. Nadal potrzebuje podpisu Boba, aby transakcja była ważna.


Bob robi to samo - jedno wyjście płaci sobie, drugie opłaca inny adres multisig. Podpisuje i daje Alice.


Mamy dwie niekompletne transakcje, które są bardzo podobne.


Zwykle Alice może dodać podpis do transakcji Boba, aby była ważna. Pamiętaj jednak, że fundusze te są wydawane z multisiga 2-z-2, których jeszcze nie sfinansowaliśmy. To trochę jak próba wydania czeku z konta, które na razie nie ma salda. Dlatego te częściowo podpisane transakcje będą użyteczne dopiero po uruchomieniu multisiga. 

Nowe adresy multisignature (do których przypisane są 3 wyjścia BTC) mają pewne szczególne właściwości. Rzućmy okiem na niekompletną transakcję, którą Alice podpisała i podarowała Bobowi. Wyjście multisiga można wydać w następujących warunkach:

  1. Obie strony mogą je wspólnie podpisać.
  2. Bob może wydać je samodzielnie po pewnym czasie (w związku z timelockiem).
  3. Alice może je wydać jeśli zna sekret Boba, Bs.

Dla transakcji Boba przekazanej Alice:

  1. Obie strony mogą ją wspólnie podpisać.
  2. Alice może wydać je samodzielnie po pewnym czasie (w związku z timelockiem).
  3. Bob może je wydać jeśli zna sekret Alice, As.

Pamiętaj, że żadna ze stron nie zna tajemnicy drugiej strony, więc 3) odpada. Kolejną rzeczą do odnotowania jest to, że jeśli podpiszesz transakcję, twój kontrahent może natychmiast wydać środki, ponieważ nie ma specjalnych warunków dla jej wyniku. Możesz także poczekać, aż wygaśnie blokada czasowa, aby samodzielnie wydać fundusze, lub możesz współpracować z drugą stroną, aby wydać je od razu.

W porządku! Teraz możesz opublikować transakcje na oryginalny adres multisignature 2-z-2. Jest to w końcu bezpieczne, ponieważ możesz odzyskać środki, jeśli Twój kontrahent nie będzie współpracował.

Po potwierdzeniu transakcji kanał jest gotowy do działania. Ta pierwsza para transakcji pokazuje nam aktualny stan mini-księgi. Obecnie wypłaci 3 BTC Bobowi, a 3 BTC Alice.

Kiedy Alice chce dokonać nowej płatności na rzecz Boba, para tworzy dwie nowe transakcje, aby zastąpić pierwszy zestaw. Zasada jest taka sama - są tylko w połowie podpisane. Jednak Alice i Bob najpierw porzucają swoje stare sekrety i tworzą nowe hashe na następną transakcję.


 Na przykład, gdyby Alice chciała zapłacić 1 BTC Bobowi, dwie nowe transakcje przypisałyby 2 BTC Alice i 4 BTC Bobowi. W ten sposób saldo jest aktualizowane.


Każda ze stron może w dowolnym momencie podpisać i wyemitować jedną z najnowszych transakcji, aby „rozliczyć” ją w blockchainie. Ale którakolwiek ze stron to zrobi, będzie musiała poczekać, aż upłynie blokada czasowa, natomiast druga strona może wydać natychmiast. Pamiętaj, że jeśli Bob podpisze i wyemituje transakcję Alice, będzie miał wynik bez żadnych dodatkowych warunków.

Obie strony mogą uzgodnić wspólne zamknięcie kanału (zamknięcie kooperacyjne). Jest to prawdopodobnie najłatwiejszy i najszybszy sposób na powrót funduszy do łańcucha. Jednak nawet jeśli jedna ze stron przestanie odpowiadać lub odmówi współpracy, druga strona może nadal odzyskać środki, po upływie timelocka.



Szukasz sposobu na rozpoczęcie swojej przygody z kryptowalutami? Kup Bitcoina na Binance!



Jak Lightning Network zapobiega oszustwom?

Możliwe, że zauważyłeś tutaj możliwość ataku. Jeśli Bob ma obecnie saldo 1 BTC, co powstrzyma go przed nadaniem starszej transakcji, w której miał więcej? Ma już podpisaną do połowy transakcję od Alice, musi tylko dodać swój podpis i nadać go, prawda?
Nic nie powstrzymuje go przed zrobieniem tego - z wyjątkiem faktu, że może stracić cały obecny balans. Powiedzmy, że zrobi i transmituje starą transakcję, w której jedna moneta wypłacana jest Alice, a pięć - na adres multisig, o którym wspominaliśmy wcześniej.

Alice natychmiast otrzymuje monetę. Z drugiej strony Bob musi poczekać, aż wygaśnie blokada czasowa, aby wydawać z adresu multisig. Pamiętasz inny wspomniany przez nas warunek, który pozwoliłby Alicji natychmiast wydać te same fundusze? Ona potrzebuje sekretu, którego wtedy nie miała. Teraz ma - gdy tylko powstała druga runda transakcji, Bob zdradził ten sekret.

Podczas gdy Bob siedzi i nie może nic zrobić, czekając na upływ timelocka, Alice może przenieść te fundusze. Ten mechanizm oparty na karach oznacza, że uczestnicy prawdopodobnie nawet nie będą chcieli oszukiwać, ponieważ kontrahenci uzyskają dostęp do swoich monet.


Płatności za Routing

Wspomnieliśmy o tym wcześniej - kanały można połączyć. W innym wypadku, sieć Lightning nie byłaby tak przydatna do dokonywania płatności. Czy naprawdę zamierzasz zamknąć 500 USD na kanale z kawiarnią, aby pokryć codzienne opłaty na następne kilka miesięcy?

Nie musisz tego robić. Jeśli Alice otworzy kanał z Bobem, a Bob ma już kanał z Carol, Bob może przekierowywać płatności między nimi. Może to działać na wielu „przeskokach”, co oznacza, że Alice może skutecznie zapłacić każdemu, do kogo ma pośrednio dostęp.


W tym scenariuszu Alice może wybrać różne "drogi", aby dostać się do Franka. W praktyce zawsze wybierze tą najłatwiejszą.


Za rolę w routingu pośrednicy mogą pobierać niewielką opłatę (choć nie ma takiego obowiązku). Sieć Lightning jest wciąż bardzo nowa, więc rynek opłat jeszcze się nie ustabilizował. Wiele osób spodziewa się zobaczyć opłaty oparte na zapewnionej płynności.

W łańcuchu podstawowym opłata zależy wyłącznie od miejsca, które transakcja zajmuje w bloku - przekazywana wartość nie ma znaczenia - płatności 1 USD i 10 000 000 USD kosztują tyle samo. Natomiast w Lightning Network nie ma czegoś takiego jak przestrzeń blokowa.

Zamiast tego istnieje koncepcja sald lokalnych i zdalnych. Saldo lokalne to kwota, którą Ty możesz „przepchnąć” na drugi koniec kanału, natomiast saldo zdalne to kwota, którą kontrahent może przepchnąć do Ciebie.
Czas na inny przykład. Przyjrzyjmy się bliżej jednej z powyższych ścieżek: Alice <> Carol <> Frank.


Saldo użytkowników przed i po przeniesieniu 0,3 BTC od Alice do Franka.


Alice <> Carol i Carol <> Frank mają całkowitą pojemność 1 BTC. Saldo lokalne Alice wynosi 0,7 BTC. Gdyby teraz dokonali rozliczenia, Alice otrzyma 0,7 BTC, a Carol otrzyma zdalne saldo (tj. 0,3 BTC).  

Jeśli Alice chce wysłać 0,3 BTC do Franka, przesuwa 0,3 BTC na stronę Carol. Następnie Carol wypycha 0,3 BTC ze swojego salda lokalnego na kanale z Frankiem. W rezultacie saldo Carol pozostaje takie samo: +0,3 BTC od Alice i -0,3 BTC dla Franka się niwelują.

Carol nic nie traci, działając jako pośrednik między Frankiem, ale staje się mniej elastyczna. Widzisz, teraz może wydać 0,6 BTC na swoim kanale z Alice, ale tylko 0,1 BTC na kanale z Frankiem.

Możesz sobie wyobrazić sytuację, w której Alice jest podłączona tylko do Carol, podczas gdy Frank jest podłączony do znacznie szerszej sieci. Carol mogła wcześniej wysłać w sumie 0,4 BTC za pośrednictwem Franka, ale teraz może przepchnąć tylko 0,1 BTC, ponieważ to wszystko, co ma na końcu swojego kanału.

W tym scenariuszu Alice skutecznie pochłania płynność Carol. Bez żadnej zachęty Carol może nie chcieć osłabić swojej pozycji. Zamiast tego mogłaby po prostu powiedzieć będę routowała 0,01 BTC za opłatą dziesięciu satoshi. W ten sposób, im więcej bilansu lokalnego Carol poświęca na „silniejszych” ścieżkach, tym więcej zyskuje.

Jak wspomniano wcześniej, nie ma de facto wymogu pobierania opłaty. Niektórzy mogą nie martwić się zmniejszeniem płynności. Inni mogą po prostu otworzyć kanały bezpośrednio do odbiorców.


Ograniczenia Lightning Network

Byłoby fantastycznie, gdyby Lightning Network okazał się rozwiązaniem wszystkich problemów ze skalowalnością Bitcoina. Niestety ma swoje wady, które mogą przeszkadzać.


Użyteczność

Bitcoin nie jest najbardziej intuicyjnym systemem dla początkujących - adresy, opłaty itp. mogą być mylące dla kogoś nowego. Portfele mogą pokryć te skomplikowane rzeczy, aby dać użytkownikom coś, co niejako przypomina istniejące systemy płatności. Możesz poprosić kogoś o pobranie portfela na smartfona, wysłać mu monety i gotowe.

Na razie nie jest to możliwe dla Lightning Network. Opcje są ograniczone, jeśli chodzi o aplikacje na smartfony - ogólnie, węzły Lightning wymagają dostępu do węzła Bitcoina, aby były w pełni użyteczne.

Po skonfigurowaniu klienta użytkownicy muszą również zacząć otwierać kanały, zanim będą mogli dokonywać płatności. Może to być czasochłonny proces i przytłaczający, gdy nowicjusz zostanie wprowadzony do koncepcji takich jak pojemność wejściowa / wyjściowa.

To powiedziawszy, ciągle wprowadzane są ulepszenia, aby zmniejszyć bariery wejścia i zapewnić użytkownikom bardziej usprawnioną obsługę.


Płynność

Jednym z największych zarzutów Lightning Network jest to, że twoja zdolność do dokonywania transakcji jest ograniczona. Nie możesz wydać więcej niż zablokowałeś na kanale. Jeśli wydasz wszystkie swoje środki tak, że zdalne saldo będzie zawierało wszystkie środki kanału, musisz zamknąć kanał. Możesz też poczekać, aż ktoś ci to zapłaci, ale nie jest to idealne rozwiązanie.

Twoje ścieżki mogą być również ograniczone przez całkowitą pojemność kanału. Weźmy wcześniej przykład Alice <> Carol <> Frank. Jeśli Alice i Carol mają pojemność 5 BTC na swoim kanale, ale Carol i Frank mają pojemność tylko 1 BTC, Alice nigdy nie może wysłać więcej niż 1 BTC. Nawet wtedy cały balans musiałaby być po stronie Carol kanału Carol <> Frank, aby to zadziałało. Może to poważnie ograniczyć ilość funduszy, które można przekazać kanałami LN, a tym samym ma wpływ na użyteczność.


Scentralizowane huby

Ze względu na problem wspomniany w poprzedniej sekcji, istnieje obawa, że sieć ułatwi tworzenie masowych „hubów”. To znaczy duże, silnie powiązane podmioty o dużej płynności. Wszelkie znaczące płatności musiałyby być kierowane przez niektóre z tych podmiotów.

Oczywiście nie byłaby to dobra sytuacja. Osłabiłoby to system, ponieważ podmioty te, przechodząc w tryb offline, poważnie zakłócałyby relacje między peerami. Istnieje również zwiększone ryzyko cenzury, ponieważ istniałoby tylko kilka punktów, przez które przepływają transakcje.


Obecny stan Lightning Network

Na stan z kwietnia 2020 r. Lightning Network wygląda zdrowo. Oferuje ponad 12 000 węzłów online, ponad 30 000 aktywnych kanałów i nieco ponad 920 BTC pojemności.


Globalna dystrybucja węzłów Lightning Network. Źródło: explorer.acinq.co


Istnieje kilka różnych implementacji węzłów - c-lightning od Blockstream, Lightning Networks Daemon Lightning Labs i Eclair ACINQ są jednymi z najbardziej popularnych. Użytkownikom mniej biegłym technicznie wiele firm oferuje węzły typu plug-and-play. Jedyne, co musisz z tym zrobić, to włączyć urządzenie i możesz zacząć korzystać z Lightning Network.


Przemyślenia końcowe

Od momentu uruchomienia w mainnecie w 2018 r., Lightning Network odnotował imponujący wzrost, mimo że wielu uważa, że wciąż jest w fazie beta.

Nadal istnieją pewne przeszkody do pokonania jeśli chodzi o kwestie użyteczności, ponieważ obecnie wymagany jest pewien poziom wiedzy technicznej i umiejętności obsługi węzła Lightning. Z uwagi na rozwój, z czasem prawdopodobnie zobaczymy zmniejszenie barier wejścia.

Jeśli uda się rozwiązać te problemy, Lightning Network może stać się integralną częścią ekosystemu Bitcoin, znacznie zwiększając skalowalność i szybkość transakcji.