Úvod do technológie Lightning Networku
Bitcoin ako vôbec prvá a najpopulárnejšia kryptomena ponúka v porovnaní s alternatívnymi blockchainmi jednoznačne najsilnejšie záruky v oblasti bezpečnosti a decentralizácie. Keď však príde na tému jeho škálovateľnosti, na základnej vrstve nie je možné obísť maximálny blokový priestor či priemerný 10-minútový interval produkcie blokov, ktorý obmedzuje jeho priepustnosť na približne 7 transakcií za sekundu. V mnohých používateľoch to vytvára obavy, či s postupnou globálnou adopciou a rastom používateľskej základne dokáže byť Bitcoin dostatočne škálovateľný a či dokáže uspokojiť potreby miliónov používateľov po celom svete.
Postupom času s rozvojom Bitcoinového ekosystému začali vznikať rôzne technologické inovácie, ktoré sa zamerali práve na vyriešenie problému škálovateľnosti Bitcoinu. Jednou z nich je aj veľmi populárny Lightning Network, škálovacie riešenie druhej vrstvy vytvorené nad sieťou Bitcoin. Ako Lightning Network vznikol a ako funguje?
Vznik Lightning Networku
Koncept vzniku Lightning Networku navrhli ešte v roku 2015 Thaddeus Dryja a Joseph Poon, ktorí publikovali spoločný whitepaper s názvom “The Bitcoin Lightning Network: Scalable Off-Chain Instant Payments”. Dokument popisuje decentralizovaný protokol postavený nad Bitcoinom, ktorý je vytvorený na princípe platobných kanálov a dokáže spracovávať mimo reťazcové (off-chain) transakcie medzi používateľmi v sieti.
V roku 2016 Dryja a Poon založili spoločnosť Lightning Labs, ktorá sa venuje rozvoju Lightning Networku. Napriek fluktuácii v rámci členov tímu v priebehu času vývojári nepretržite pracovali na tom, aby bol protokol kompatibilný s Bitcoinovým blockchainom. Najväčší prelom v rámci vývoja Lightning Networku nastal pri implementácii SegWitu v roku 2017, ktorý zaviedol zvýšenie limitu veľkosti bloku odstránením podpisových údajov a zároveň vylúčil dlhotrvajúcu chybu na Bitcoine, známu ako tvárnosť transakcií (transaction malleability).
Po aktivácii soft forku SegWit v lete 2017 sa po dlhom boji otvorili dvere pre Lightning Network aj na Bitcoine. Je však potrebné dodať, že Bitcoin nebol prvou sieťou, na ktorej bol uvedený Lightning Network. Ešte v máji 2017 bola uskutočnená vôbec prvá transakcia v rámci Lightning Networku na blockchaine Litecoinu.
V januári 2019 vznikla iniciatíva na sociálnej sieti Twitter, v ktorej neznámy používateľ s prezývkou hodlonaut začal propagačné testovanie siete Lightning network tým, že odoslal 10 000 satoshi (0,00010000 BTC) inému príjemcovi, pričom príjemca k transakcii pripojil ďalších 10 000 satoshi (v tom čase zhruba 0,35 dolárov) a odoslal to ďalšiemu dôveryhodnému príjemcovi. Iniciatíva s oficiálnym názvom “Lightning Torch” sa postupom času dostala až k významným osobnostiam ako je zakladateľ Twitteru Jack Dorsey, zakladateľ Binance Changpeng Zhao či k zakladateľovi Litecoinu Charliemu Lee.
Podľa dostupných informácií prešla táto pochodeň až cez 292 používateľov vo viac než 40 krajinách po celom svete, až kým nedosiahla pevne zakódovaný limit 4 390 000 satoshi (0,0439 BTC). Posledná platba v rámci výzvy smerovala ako dar neziskovej organizácií Bitcoin Venezuela, ktorá sa zameriava na popularizáciu Bitcoinu v krajine.
Čo je Lightning Network?
Lightning je škálovacie riešenie druhej vrstvy vytvorené nad sieťou Bitcoin, ale aj nad inými sieťami, ako je napríklad Litecoin. Lightning Network je v praxi oddelený od blockchainu, nad ktorým je postavený – má vlastné uzly, vlastný softvér, ale napriek tomu stále komunikuje s hlavným blockchainom.
Model Lightningu je postavený na princípe peer-to-peer platobných kanálov vytvorených medzi rôznymi protistranami. Podstata Lightning Networku spočíva v tom, že len otvorenie a zatvorenie kanála si vyžaduje uskutočnenie on-chain transakcie, pričom počas obdobia medzi otvorením a zatvorením kanála sú všetky transakcie vykonávané off-chain, teda mimo hlavného blockchainu. Prostredníctvom platobných kanálov je možné uskutočniť neobmedzené množstvo transakcií, ktoré sú rýchle, lacné a bezpečné.
Pre otvorenie platobného kanála musí používateľ zamknúť určité množstvo bitcoinov do protokolu. V praxi ide o vytvorenie akejsi inteligentnej zmluvy s iným používateľom, ktorú je možné predstaviť si ako vzájomne zdieľanú účtovnú knihu, do ktorej je možné zapisovať neobmedzené množstvo transakcií. Tieto transakcie sú viditeľné len pre vás a vašu protistranu, pričom žiadna zo zúčastnených strán nemôže do tejto knihy zapisovať neoprávnené transakcie, a teda nemôže podvádzať.
Zdroj: Bitpay
Obe strany môžu po otvorení kanála medzi sebou prevádzať finančné prostriedky bez toho, aby boli tieto transakcie reflektované na hlavnom blockchaine. Keďže v rámci Lightning Networku nemusia byť transakcie schválené všetkými uzlami v sieti, využitie Lightningu výrazným spôsobom redukuje čas vyrovnania transakcií. Okrem toho, uzly v rámci siete sú schopné presmerovávať, routovať (sprostredkovať) transakcie aj medzi používateľmi, ktorí medzi sebou nemajú vzájomne otvorené kanály. Vďaka tomu je Lightning výsledkom veľmi kvalitného a rýchleho platobného systému.
V prípade, že sa protistrany rozhodnú, že už medzi sebou nebudú viac vykonávať transakcie, môžu sa rozhodnúť platobný kanál uzavrieť. Všetky informácie súvisiace s daným kanálom sa následne zlúčia do jednej transakcie, ktorá sa odošle na hlavnú sieť (napríklad Bitcoinu), kde následne prebehne vyrovnanie. Uskutočňovanie transakcií cez Lightning mimo hlavnej siete zabezpečuje, že vyrovnanie medzi protistranami sa združuje len do jednej transakcie a nie je potrebné vykonávať desiatky alebo stovky malých transakcií na hlavnej sieti, ktoré by boli drahšie, pomalšie a zaberali by obmedzený blokový priestor.
Príklad z praxe
Predstavme si, že programátor a začínajúci podnikateľ z Bratislavy Marek, ktorý je veľkým fanúšikom nových technológií, chodí každý deň na obedy do reštaurácie vedľa jeho súkromnej kancelárie, ktorá akceptuje platby prostredníctvom Bitcoinu. Marek sa dohodol s prevádzkovateľmi reštaurácie otvoriť platobný kanál v rámci siete Lightning, v rámci ktorého bude reštaurácii uhrádzať platby za svoje obedy. Platobný kanál v tomto prípade predstavuje multi signature (viacpodpisovú) adresu so schémou 2-2, čo znamená, že pri tejto adrese existujú dva súkromné kľúče na podpísanie transakcie, a oba sú potrebné na presun prostriedkov. Pre otvorenie kanála s reštauráciou Marek odošle časť svojich bitcoinov na túto adresu vysielaním transakcie financovania priamo na Bitcoinovom blockchaine.
Po otvorení platobného kanála s reštauráciou môže Marek uskutočňovať každodenné platby za obedy, pričom platby prebiehaju prakticky okamžite a za zlomok transakčných poplatkov, ktoré by zaplatil pri tradičnej platbe prostredníctvom Bitcoinu. Otvorený platobný kanál má akúsi svoju vlastnú “účtovnú knihu”, do ktorej sa zaznamenávajú všetky uskutočnené transakcie, ktoré sú mimo hlavného Bitcoinového blockchainu. Žiadna z týchto transakcií nikdy neinteraguje s Bitcoinovým blockchainom, ale stále čerpajú z jeho bezpečnosti.
S expanziou Marekovho podnikania a prijatí niekoľkých zamestnancov sa Marek po roku a pol musel presťahovať do nových kancelárií, ktoré sú však od reštaurácie vzdialené viac než dva kilometre. Marek sa teda dohodol s reštauráciou na uzavretí platobného kanála. Keď na Lightning Networku dôjde k uzavretiu kanálu, všetky transakcie, ktoré boli uskutočnené v rámci siete Lightning, sa skonsolidujú do jednej transakcie a odošlú do hlavnej siete Bitcoinu.
Samozrejme, ak by Marek chcel, počas celej doby návštevnosti reštaurácie by si mohol kupovať obedy prostredníctvom bežných bitcoinových transakcií. Pri každej z nich by však musel platiť sieťové poplatky, ktoré by v niektorých prípadoch mohli dosiahnuť hodnoty niekoľkých dolárov, čo by nebolo vôbec efektívne. Marek je však chytrý podnikateľ a vie, že vďaka Lightningu za rok a pol ušetril množstvo peňazí na transakčných poplatkoch. Namiesto toho zaplatil poplatok len pri otvorení a zatvorení platobného kanála.
PRIHLÁSIŤ SA DO PROFILUHlavné výhody Lightningu
Lightning je škálovateľný
Bitcoin sám o sebe je schopný spracovať len približne 7 transakcií za sekundu. Cieľom Lightning Networku je vyriešiť toto obmedzenie poskytovaním rýchlych a lacných transakcií, pričom priepustnosť siete môže dosiahnuť až 1 000 000 transakcií za sekundu.
Lightning je lacný
Poplatky za bežné bitcoinové transakcie môžu byť najmä v obdobiach vysokého dopytu naozaj drahé. Priemerný transakčný poplatok v sieti Bitcoin sa v súčasnosti pohybuje okolo 1,5 $, čo môže byť v niektorých prípadoch vyššie, než hodnota tovaru, za ktorý platíte (napríklad nákup kávy prostredníctvom bitcoinu). Lightning poskytuje ekonomicky výhodný spôsob uskutočňovania platieb akejkoľvek veľkosti. Priemerný transakčný poplatok na Lightningu je 1 satoshi, čo je približne 0,00022$. To otvára dvere pre uskutočňovanie každodenných mikroplatieb prostredníctvom Bitcoinu, či už za kávu, obed alebo čokoľvek iné.
Lightning je vzájomne prepojený
Lightning Network umožňuje používateľom interagovať aj s používateľmi, s ktorými nemajú otvorené platobné kanály. Ak má subjekt A otvorený kanál so subjektom B a subjekt B má otvorený kanál so subjektom C, potom subjekt A môže vykonávať transakcie so subjektom C bez nutnosti otvorenia nového platobného kanála.
Lightning je rýchly a súkromný
Zatiaľ čo na Bitcoine bloky s transakciami pribúdajú približne raz za desať minút, pričom transakcia sa považuje za platnú po 2 – 4 blokových potvrdeniach (20-40 minút), transakcie v rámci Lightning Networku sú vysporiadané okamžite. Transakcie uskutočňované v rámci Lightningu zároveň prebiehajú namiesto verejného blockchainu Bitcoinu v takzvaných kanáloch, ktoré nie sú úplne transparentné. Lightning tak napomáha v oblasti zlepšenia súkromia transakcií.
Presmerovanie transakcií – vzájomná prepojenosť
Predstavme si modelovú situáciu číslo dva, v ktorej má Adam otvorený platobný kanál s Beátou a Beáta ma otvorený kanál s Charliem.
Na spoločnom firemnom posedení sa v reštaurácii stretli všetky tri vyššie spomenuté subjekty. Adam sa však s Charliem takmer nepozná, pretože Charlie síce pracuje v tej istej firme, no na večierok pricestoval ako zástupca pobočky z iného mesta. Charlie sa rozhodol, že účet za celé posedenie zaplatí spolu prostredníctvom Bitcoinu.
Adam sa však chce s Charliem za svoju večeru a drinky vyrovnať. Keďže Adam neprichádza takmer vôbec do kontaktu s Charliem, nemá s ním otvorený platobný kanál. Zároveň, keďže nepredpokladajú vzájomné interakcie v budúcnosti, vytvorenie spoločného kanála im nedáva žiaden zmysel.
To, že Adam a Charlie nie sú spoločne prepojení, nevylučuje možnosť použitia Lightningu na vzájomné vysporiadanie účtu za večeru. Keďže Adam má otvorený kanál s Beátou a Beáta zas s Charliem, existuje medzi nimi možnosť vzájomného vyrovnania.
Zdroj: ResearchGate
Beáta súhlasí, že sprostredkuje Adamovu platbu vo výške 0,001 BTC Charliemu výmenou za malý smerovací poplatok vo výške 100 satoshi. Platba, ktorá prebehne cez sprostredkovateľa sa v praxi označuje ako “hop”. V praxi môže jedna platba prejsť maximálne 20 hopmi, ale čím je hopov menej, tým lepšie – každý ďalší hop je štandardne spojený s dodatočnými nákladmi za presmerovanie transakcie.
Potenciálne riziká
Likvidita
Jedným z najčastejšie kritizovaných faktov týkajúcich sa siete Lightning je obmedzenosť vykonávania väčších transakcií. Používatelia v praxi v rámci Lightningu môžu utrácať len tie prostriedky, ktoré majú uzamknuté v platobnom kanáli. Ak napríklad vložíte do kanála 0,2 BTC a tie postupom času miniete, vaša protistrana bude mať všetky prostriedky a vám zostane len možnosť kanál uzavrieť, poprípade počkať, kým vám niekto zaplatí, čo nie je ideálne.
Jedným z problémov je aj obmedzená kapacita kanálov. Ak si predstavíme, že Adam a Beáta majú na svojom kanáli kapacitu 5 BTC (Adam 3 BTC a Beáta 2 BTC), ale Beáta a Charlie majú kapacitu len 1 BTC (Beáta 0,5 BTC a Charlie 0,5 BTC), Adam nikdy nebude môcť poslať Charliemu viac než 0,5 BTC kvôli tomu, že Beáta je sprostredkovateľom medzi Adamom a Charliem.
Centralizácia uzlov
V rámci komunity existujú obavy, že postupom času budú do Lightning Networku vstupovať veľkí hráči s množstvom kapitálu, ktorí sa môžu stať “centralizovanými sprostredkovateľmi”. Akékoľvek platby vyššej sumy by museli smerovať cez nich, a to kvôli tomu, že majú dostatočnú kapacitu a likviditu na presmerovanie transakcií.
Asi každému je jasné, že to nie je optimálny scenár. Oslabilo by to systém ako celok, pretože napríklad prechod týchto uzlov do režimu offline by mohol výrazným spôsobom skomplikovať alebo znemožniť uskutočňovanie platieb v rámci LN siete.
Stav Lightning siete
Podľa webového portálu bitcoinvisuals.com je v Lightning Networku v súčasnosti aktívnych viac než 16 000 uzlov. Celkovo je vytvorených až 76-tisíc platobných kanálov s celkovou kapacitou 5390 BTC (120 miliónov dolárov). Priemerná kapacita na kanál sa pohybuje okolo 6 713 000 satoshi (0,06713 BTC – asi 1500 dolárov) a priemerná kapacita na uzol sa pohybuje okolo 60 940 000 satoshi (0,6094 BTC – zhruba 13 000 dolárov). Každý uzol má otvorených v priemere 9 platobných kanálov.
INVESTOVAŤ VO FUMBI