Wprowadzenie do sieci Lightning Network

Wprowadzenie do sieci Lightning Network
Photo by Johannes Plenio / Unsplash

Bitcoin to niezwykle bezpieczna technologia, jednak początkowo miało to swoją konsekwencję: był powolny. W warstwie podstawowej nie da się obejść ogromnej mocy obliczeniowej i 10-minutowego czasu tworzenia nowego bloku — i o to właśnie chodzi. Maksymalna liczba transakcji na sekundę (TPS) Bitcoina wynosi około pięciu, co natychmiast budzi obawy o jego skalowalność.

Lightning Network został zaproponowany w białej księdze przez Josepha Poona i Thaddeusa Dryję w 2016 roku. 59 stron czyni ją poważną lektura, lecz po przeczytaniu nie można zaprzeczyć jej geniuszu. LN pokonuje problem skalowalności bez poświęcania bezpieczeństwa lub braku zaufania, jednocześnie zwiększając anonimowość.

Często toczy się dyskusja na temat protokołów zbudowanych na Bitcoinie i tego, czy ich użytkownicy wchodzą w interakcję z „prawdziwym” Bitcoinem. W kontekście LN jest to uczciwe pytanie, ponieważ nie od razu oczywiste jest, w jaki sposób jej użytkownicy wchodzą w interakcję z „prawdziwym” Bitcoinem, mając niemal natychmiastowy czas transakcji i prawie zerowe opłaty.

Sama sieć Lightning Network składa się z dwóch rzeczy: węzłów, i kanałów między nimi. Węzły te muszą również służyć jako węzły dla warstwy bazowej Bitcoin, ponieważ w ten sposób otwierają i zamykają kanały.

Bitcoin można dodać do sieci Lightning tylko poprzez utworzenie kanału między dwoma węzłami. Jest on umieszczany w niejawnej transakcji, którą oba węzły weryfikują i podpisują. Kanał ten może być sfinansowany przez jeden lub oba węzły. To znaczy, że:

  1. Dany Bitcoin nie może być użyty do niczego innego, dopóki transakcja nie zostanie wyemitowana do sieci.
  2. Oba węzły mają możliwość „odkupienia” transakcji w dowolnym momencie, aby odzyskać początkowe środki finansujące kanał.

Obsługa węzła Lightning to wiele wysiłku i niuansów. Operatorzy węzłów są motywowani do ustanawiania wielu kanałów poprzez naliczanie opłat za routing. Opłaty muszą być jednak konkurencyjne cenowo, aby transakcje były kierowane przez ich węzeł. Sugeruje się również, aby operatorzy mieli wiele kanałów, co ułatwia ich równoważenie i zwiększa łączność sieciową.

Naturalnym efektem ubocznym działania Lightning Network jest łączenie środków w jednym lub drugim kanale. Ogranicza to płynność w niektórych miejscach, a zatem wymaga „zrównoważenia” kanałów w celu uzyskania bardziej równomiernego gradientu płynności w całej sieci. Maksymalna wielkość transakcji — przynajmniej kiedyś — ograniczona była przez najmniejsze saldo kanałów. Co ciekawe, pracują nad tym Rene Pickhardt i Stefan Richter. Operatorów zachęca się również do otwierania dużych kanałów – zwykle co najmniej milion satoshi – w celu umożliwienia większych transakcji za pośrednictwem ich kanału (kanałów). Operatorzy są też motywowani do utrzymywania otwartych kanałów tak długo, jak to możliwe, ponieważ ich zamknięcie wymaga powrotu do warstwy podstawowej, ponosząc potencjalnie wysokie opłaty transakcyjne.

Właściciele kanałów mają zachętę by współpracować między sobą. Największym problemem jest zamykanie kanału przez jedną ze stron i rozgłaszanie nieprawidłowej transakcji na pierwszej warstwie sieci (z nieprawidłowymi saldami stron). Przez określony czas tak czy inaczej nie mają dostępu do uwolnionych środków i jeżeli w tym czasie druga strona wykaże inny stan kanału, chytra strona transakcji traci za karę swoje Bitcoiny. W tym również pomagają węzły wież strażniczych (Watchtower).  Sprawne operowanie węzłami Lightning może być czasochłonne, na szczęście można uzyskać wsparcie od społeczności w tym zakresie, ale posługiwanie się klienckim portfelem LN nie jest tak złożone i każdy bez specjalnej wiedzy może korzystać z takich portfeli.

Udoskonalenia sieci są obecnie tworzone przez kilka organizacji, w tym Lightning Labs, Blockstream i ACINQ. Pomimo tego, że są indywidualnymi grupami, zachowują interoperacyjność swoich produktów, wykorzystując wspólnie uzgodnione zasady rozwoju.

Ponieważ Lightning wciąż jest dopracowywany, na pewno pojawiać się będą luki i problemy w zakresie bezpieczeństwa. Jednak w ciągu zaledwie kilku lat sieć przeszła niezwykle długą drogę. W chwili pisania tego tekstu ma ponad 20,000 publicznych węzłów, 60,000 kanałów i 2,000 Bitcoinów pojemności.

Ponieważ Lightning sprawia, że nie jest konieczne potwierdzanie każdej transakcji na blockchainie warstwy podstawowej, możliwa górna granica TPS stale zmierza w kierunku nieskończoności. To również powoduje, że opłaty transakcyjne coraz bardziej zbliżają się do zera.

Interakcja z Lightningiem nie różni się zbytnio od interakcji z warstwą podstawową. Nadal możesz korzystać z własnego lub cudzego węzła za pośrednictwem portfela powierniczego lub niepowierniczego. Zamiast adresami, wymienia się fakturami, które kodują m.in. dokąd idzie Bitcoin i ile. Transakcje te są wysyłane za pośrednictwem trasowania cebulowego, co oznacza, że żaden węzeł między nadawcą a odbiorcą nie wie, kto wysyła, a kto odbiera środki. Wraz z wprowadzeniem aktualizacji Taproot trudno będzie nawet ustalić, czy transakcji dokonano w sieci Lightning.

Aby usunąć Bitcoin z Lightninga z powrotem do warstwy bazowej, kanał musi zostać zamknięty, można wykonać loop out lub tzw. "submarine swap". Możesz to zrobić samodzielnie, jeśli korzystasz z własnego węzła Lightning, lub pozwolić zrobić to komuś innemu.

Na szczęście ruch związany z wdrażaniem i rozwojem Lightninga jest bardzo aktywny. Światowa adopcja jest w zasięgu wzroku, i będzie wymagała wszystkich rąk na pokładzie.