Image
lightning network

Що таке Lightning Network?

Lightning Network — це протокол другого рівня для Біткоїна, спеціально розроблений для дешевих, швидких і приватних платежів.
24 липня 2022

Оскільки це оверлейна мережа, що складається з платіжних каналів, платежі Lightning не записуються в блокчейні Біткоїна — записуються лише транзакції фінансування каналів і транзакції закриття каналів. Це фактично означає, що багато транзакцій Lightning можуть бути влаштовані за допомогою значно меншої кількості ончейн-транзакцій у мережі Біткоїна.

Влаштовуючи багато транзакцій Lightning в набагато меншій кількості транзакцій Біткоїна, користувачі та майнери в мережі Біткоїна звільняються від необхідності перевіряти та зберігати всі ці транзакції Lightning. Це означає зниження плати для користувачів Lightning, яким більше не потрібно чекати підтверджень на блокчейні Біткоїна: транзакції відбуваються миттєво.

Нарешті, як додатковий бонус, той факт, що транзакції не реєструються в блокчейні (у поєднанні з алгоритмом маршрутизації для платежів Lightning, подібним до Tor), означає, що користувачі Lightning зазвичай користуються додатковою конфіденційністю.

Хто створив мережу Lightning Network?

Вперше мережу Lightning Network було запропоновано у 2015 році в Білій книзі (проєктному документі) Lightning Network (повна назва: «Мережа Lightning Network для Біткоїна: масштабовані офчейнові миттєві платежі»), авторами якої були Джозеф Пун і Тадеус Драйя. Різні проєктні аспекти Lightning Network сягають навіть давніших пір, ніж сам проєктний документ.

Відтоді декілька команд розробили різні проєкти впровадження Lightning, включаючи c-lightning від Blockstream, lnd від Lightning Labs та Eclair від Acinq. Усі проєкти впровадження сумісні через специфікації протоколу BOLT.

Lightning Network усе ще вдосконалюється щодня; це незавершена робота.

Що таке сатоші (SATS)?

Сати (Sats), або «сатоші», є найменшим номіналом біткоїна, зареєстрованим у  блокчейні Біткоїна. Один сатоші становить 0,00000001 BTC, або 1 стомільйонну частку біткоїна. Назва походить від імені творця Біткоїна Сатоші Накамото.

Оскільки вартість біткоїна зросла так, що лише частки BTC достатньо для оплати багатьох товарів і послуг, регулярних інвестицій та платежів для мікрозавдань, BTC часто номінують у сатоші. Використання сатоші також дозволяє користувачам здійснювати транзакції на суму менше ніж 1 цент США.

Хештег #StackingSats використовується в соціальних мережах щодо звичного нарахування сатоші. А деякі платформи для заробітку виплачують винагороди в сатоші за виконання завдань.

Комісійна винагорода Lighting Network

У мережі Біткоїна майнерам сплачуються комісії за включення транзакцій у блок. Але сама Lightning Network не має ані майнерів, ні блоків. (Хоча, як технологічна розробка другого рівня вона у підсумку звичайно ж таки залежить від майнерів і блоків; без них не було б самого Біткоїна, а отже, і  Lightning Network).

Натомість комісія сплачується вузлам Lightning у мережі, які виконують роботу з надання ліквідності (фінансовані канали) та пересилання транзакцій. Деякі вузли стягують більше, ніж інші, але плата, як правило, низька, і оскільки будь-хто може створити вузла-конкурента, то це, ймовірно, збереже комісію на низькому рівні.

Сплата комісії, як правило, спрощується в гаманці, і вам не потрібно особливо про щось турбуватися. На відміну від ончейн-трансакцій, немає ризику включення занадто низької комісії — ваша транзакція або проходить негайно, або не проходить взагалі.

Якщо ви самі хочете отримувати комісію, то вам доведеться налаштувати вузол Lightning, в ідеалі такий, який добре пов’язаний з багатьма іншими вузлами в мережі Lightning Network і з великою ліквідністю у різних каналах. Це також допомагає, щоб такий вузол був у режимі онлайн якомога довше.

Як налаштувати вузол Lightning Network

Як і вузол Біткоїна, вузол Lightning Network — це програмне забезпечення, яке підключається до мережі, щоб надсилати та отримувати BTC через Lightning від інших вузлів. По суті, мережа Lightning Network складається з цих вузлів.

Щоб по-справжньому брати участь у мережі Lightning Network, користувачам слід розглянути можливість запуску власних вузлів. Вам не обов'язково запускати вузол для відправлення BTC через канали Lightning Network, але запуск власного вузла допомагає мережі рости, збільшує ліквідність і може допомогти вам отримати прибуток (як пояснюється нижче).

Які є гаманці Lightning Network?

Біткоїн-гаманці — це програми або додатки, що дозволяють користувачам надсилати та отримувати BTC. Біткоїн-гаманці, які підтримують функцію Lightning Network, дозволяють користувачам здійснювати та отримувати платежі  Lightning.

Існують різні версії гаманців з підтримкою Lightning, кожен з яких має свої унікальні властивості та параметри для оптимального співвідношення. Наприклад, гаманці Lightning для настільних ПК можуть бути для когось кращим вибором, оскільки вони хочуть часто перевіряти свої канали. Але мережа Lightning Network, в першу чергу, створена для полегшення відносно невеликих транзакцій BTC, і багато користувачів не роблять акцент на повній безпечності вузлів. Хоча повний вузол важко розмістити на мобільному пристрої, багато хто обирає мобільні гаманці Lightning, оскільки вони найзручніші.

Як налаштувати канал Lightning?

Щоб налаштувати канал Lightning, потрібно запустити вузол Lightning або мати гаманець Lightning. Популярні варіанти — c-lightning і lnd (вузли) та Eclair, Zap і Lightning App (гаманці). Після такого налаштування можна налаштувати платіжний канал з іншим вузлом або гаманцем Lightning за допомогою унікального коду, що співвідноситься з таким вузлом. Те, як це робиться, дещо відрізняється залежно від того чи іншого рішення.

Після налаштування можна здійснювати транзакції через канал і з рештою мережі, доки дозволяють наявні на каналі кошти. Залежно від налаштувань, можна також забезпечувати транзакції для інших користувачів і, можливо, отримувати комісію.

Чи можна надсилати або отримувати платежі  Lightning, не відкриваючи власний канал?

Власне для надсилання або отримання платежів Lightning необхідно, щоб був відкритий принаймні один платіжний канал. Однак, якщо ви з якоїсь причини не хочете відкривати канал Lightning (поки що), є кілька способів обійти це.

Наприклад, деякі гаманці Lightning, як-от Blue Wallet, пропонують рішення з елементом відповідального зберігання. Це, по суті, означає, що коли користувачі отримують платежі, то фактично платіж від їхнього імені отримує експлуатаційна група, яка стоїть за гаманцем. Кошти можуть бути виведені користувачем гаманця, але до цього моменту вони дійсно контролюються командою Blue Wallet. Це має ту перевагу, що користувачі можуть почати приймати платежі негайно, але має й очевидний недолік: користувачі повинні довіряти, що команда гаманця дозволить їм зняти кошти, коли вони того захочуть.

Як альтернативний варіант, такий сервіс, як Submarine Swaps, дозволяє користувачам здійснювати платежі без відкритого каналу Lightning. Замість цього користувачі надсилають звичайну ончейн-транзакцію до цього сервісу, який потім пересилає монети як платіж Lightning цільовому одержувачу. Хоча ці типи платежів можуть бути такими, що не потребують довіри, — тобто постачальник послуг не може відмовитися від подальшого пересилання платежу — це означає, що користувачі повинні сплачувати мережеву комісію та додаткову плату за послугу.

Що таке WUMBO?

Wumbo — це проєкт із впровадження Lightning, розроблений для того, щоб зняти обмеження на кількість BTC, що може зберігатися в каналі Lightning (спочатку ліміт був до 0,16777215 BTC), а також обмеження на розмір окремих платежів. Ці обмеження вперше були встановлені через ризик, пов’язаний з мережею Lightning Network, коли це була абсолютно нова і відносно неперевірена технологія. Щоб платіжний канал міг обійти обмеження через wumbo, користувачі з обох сторін повинні повідомити про своє бажання.

Розробку назвали на честь слова зі спеціальним значенням, придуманого в епізоді мультфільму «Губка Боб Квадратні Штани», в якому персонаж Патрік Стар визначає слово «wumbo (вамбо)», використовуючи його в низці прикладів: «Я wumbo, ти wumbo, він, вона, мене wumbo», – каже він.

Це слово було застосовано до розробки Lightning на саміті в листопаді 2018 року, мабуть, тому, що ця цитата має на увазі тип взаємної згоди, що вимагається угодою для виходу за максимальні межі первісного каналу та платежу. Однак, згідно з правилами саміту, прямі цитати та ідеї з цього саміту не можна було прив’язувати до конкретних осіб, щоб заохочувати вільний обмін ідеями.

«Якщо обидві сторони нового каналу погодяться на wumbo один з одним, встановивши опцію «_я wumbo_ти_wumbo», вони можуть створювати канали з місткістю більше ніж 167,77216 mBTC», – пояснив розробник Lightning ZmnSCPxj для списку розсилки Lightning Dev. «Вузол, що рекламує «опцію wumborama», дозволяє будь-якому вузлу створювати канали з пропускною здатністю понад встановлений ліміт. Будь ласка, звинувачуйте когось з учасників [другого саміту з розвитку Lightning] за цей термін».

Клієнти Eclair і c-lightning запровадили підтримку wumbo на початку 2020 року, а LND почала підтримувати канали wumbo в серпні 2020 року.

Як Lightning масштабує Біткоїн?

Спочатку мережу Lightning Network було запропоновано як спосіб вирішення «проблеми масштабованості блокчейну Біткоїна», як було сформульовано в Білій книзі (проєктному документі) мережі. Як описали автори, Біткоїн не може ефективно служити світовою платіжною платформою, оскільки транслює усі транзакції всім учасникам мережі.

«Якщо кожен вузол у мережі Біткоїна повинен знати про кожну транзакцію, що відбувається в усьому світі, це може спричинити значне перешкоджання здатності мережі охоплювати всі глобальні фінансові транзакції», – йдеться у Білій книзі. «Натомість було б бажано охоплювати всі транзакції таким чином, щоб не пожертвувати децентралізацією та безпекою, що забезпечує мережа».

Як далі зазначили автори, традиційна платіжна мережа, наприклад Visa, може обробляти 47 000 транзакцій в секунду, тоді як Біткоїн підтримував менш ніж сім транзакцій на секунду з лімітом блоку в 1 МБ. Запропонованим ними розв'язанням цієї проблеми масштабування стала мережа Lighting Network, протокол другого рівня, що дозволяє користувачам здійснювати транзакції з BTC, одночасно записуючи ці транзакції у блокчейні Біткоїна під час переведення коштів в управління цих каналів або під час закриття каналів.

Які ризики пов’язані з мережею Lightning Network?

Хоча Lightning Network має величезний потенціал масштабування для Біткоїна і є альтернативою традиційним світовим платіжним системам, це все ще відносно нова технологія з незначним впровадженням. Цілком можливо, що всі ризики, які можуть виникнути в результаті масового впровадження Lightning, ще не виявлені. І навіть на теперішньому етапі формування важливо визнати деякі недоліки технології.

Оскільки Lightning Network має відносно небагато робочих вузлів, кошти можуть зосередитися на певних вузлах — реальність, яка створює централізований ризик, що не повинен мати місця для мережі Біткоїна. Якщо вузол з високою концентрацією коштів намагатиметься обдурити багатьох користувачів одночасно, це може призвести до значних збоїв у роботі мережі.

Крім того, як зазначено вище, ці транзакції є відносно повільними, оскільки вони транслюються через всю мережу як функція загальнодоступного та децентралізованого реєстру Біткоїна. По суті, Lightning Network покращує швидкість, дозволяючи здійснювати транзакції у каналах, які не транслюються на всю мережу, що само по собі є компромісом у питанні безпеки. Це відкриває потенційні можливості для зловмисників у рамках цих каналів.

«Скажімо, у Моллі є канал з Анжелою, і кожна з них вкладає в нього 10 000 сатоші, що разом становить 20 000 сатоші», – за сценарієм, описаним журналом Bitcoin Magazine у 2019 році. «Протягом існування каналу Анджела платить Моллі 5000 сатоші, в результаті чого підсумок становить 15 000 сатоші для Моллі й 5000 для Анжели. Але раптом, з якоїсь причини, Моллі не може отримати доступ до свого гаманця Lightning (можливо, її вузол перебуває офлайн, її комп’ютер несправний або вона у відпустці), тому Анжела вирішує трохи попустувати — коли приходить час транслювати підсумковий стан каналу в блокчейн, вона вирішує транслювати перший стан каналу (первісні 10 000 сатоші, які вони обидві внесли), щоб обдурити Моллі у тому, що їй було заплачено. Оскільки Моллі перебуває на віддаленому острові в Мексиканській затоці, а не за своїм комп’ютером, вона не може проконтролювати зловмисні дії Анджели та перевірити фактичний стан каналу, тому вона втрачає 5000 сатоші».

Що таке сторожеві вежі Lightning Network?

Щоб зменшити цей ризик, розробники Lightning Network запровадили технічну функцію під назвою «сторожові вежі», що контролює канали.

Коли канали оновлюються, на сторожову вежу надсилається зашифрований «блоб» (набір даних у бінарному вигляді), який містить секретний підпис, що відповідає відкритому ключу користувача. Одночасно сторожова вежа отримує половину ідентифікатора транзакції для попереднього стану каналу, який служить ключем дешифрування для блоба. Сторожова вежа зберігає ці блоби та ключі дешифрування. Якщо зловмисник спробує передати в мемпул старіший стан каналу, вона може розпізнати, що ідентифікатор транзакції відповідає половині іншого ідентифікатора транзакції, який у неї зберігається. Використовуючи обидві половини ідентифікатора транзакції, сторожова вежа може розшифрувати відповідний блоб, а потім відхилити дії зловмисника та надіслати кошти на гаманець чесного користувача каналу.

Яка кількість біткоїнів є на Lightning?

Точну кількість BTC, яка зберігається в каналах Lightning Network у певний момент часу, оцінити важко. Як пояснило інтернет-видання BitMEX Research  у випуску за 2020 рік щодо Lightning Network, існують різні типи транзакцій, які можна ідентифікувати  за допомогою даних блокчейну по-різному, і не всі вони з усією очевидністю припадають на канали Lightning.

Підсумовуючи одну частину його доповіді, можна виділити три типи транзакцій Lightning Network, що можна проаналізувати за допомогою публічних даних блокчейну: відкриття каналу, «скоординоване» закриття каналу та «нескоординоване» закриття каналу. «Нескоординоване» закриття каналу Lightning відбувається, коли вузол Lightning Network ініціює закриття платіжного каналу без безпосереднього зв’язку з вузлом, з яким пов’язаний канал. Між тим, «спільне» закриття каналу означає, що обидва учасники каналу погодилися закрити канал і встановити остаточний стан каналу на блокчейні.

Відкриття каналу

Для публічних каналів Lightning можна ідентифікувати транзакції відкриття за даними, отриманими з публічного вузла Lightning Network. Крім того, транзакції відкриття можуть бути ідентифіковані пізніше, коли вихідний результат транзакції буде виправлено під час закриття каналу, якщо це закриття є «нескоординованим». Але, згідно з BitMEX Research, може бути неможливим надійно ідентифікувати всі транзакції відкриття каналу лише на основі даних блокчейну.

Нескоординоване закриття

Згідно зі звітом BitMEX Research, під час аналізу даних блокчейну важко з упевненістю сказати, що нескоординоване закриття каналів Lightning пов’язане з Lightning. Однак у звіті зазначається, що ці закриття можуть бути безпосередньо ідентифіковані в блокчейні з достатньою впевненістю, і що ці транзакції можна схарактеризувати точніше, коли вихідний результат транзакції буде виправлено після закриття каналу.

Скоординоване закриття

BitMEX Research зазначило, що можна проглянути блокчейн Біткоїна на предмет усіх трат, погашених за допомогою сценарію мультипідпису «2 з 2», що припускає, що це транзакція Lightning, але це не дасть упевненості. Через це на цей час здається неможливим точно ідентифікувати скоординовані закриття каналів на блокчейні та отримати точний облік активності Lightning.

В іншій доповіді BitMEX Research за 2020 рік підраховано, що 72,2% каналів Lightning, ідентифікованих за допомогою методології аналізу «транзакцій очищення», є публічними, тоді як 27,8% є приватними.

Однак загальний показник продуктивності Lightning Network є загальнодоступним через Bitcoin Visuals та інші агрегатори даних. Це міра сукупного обсягу біткоїнів у всіх публічних каналах Lightning Network, і на момент написання цієї статті кількість BTC, що може бути підтверджена як предмет транзакцій на каналах Lightning, досить стабільно зростала з моменту впровадження мережі.

Крім того, ймовірно, що в Lightning Network набагато більше біткоїнів, які не можна публічно ідентифікувати як такі, що розміщені в каналах Lightning.