Lightning Network — мережа платежів біткоїном через платіжні канали. Її називають другим рівнем, бо вона спирається на правила основної мережі Біткоїна. Учасники оновлюють погоджений розподіл уже заблокованих біткоїнів замість окремого запису кожного платежу в основну мережу Біткоїна. Це не інша монета. Співпраця дає змогу платити швидко; якщо вона припиниться, заздалегідь підготовлені транзакції Bitcoin забезпечують шлях до розрахунку.
Звичайний платіж Bitcoin чекає включення до блоку й змагається з іншими за обмежене місце. Lightning працює інакше: учасники спочатку готують платіжний канал, а потім можуть змінювати розподіл коштів, обмінюючись підписаними даними. За нормальної співпраці не потрібно записувати кожен завершений платіж окремо в блок. Транзакції Bitcoin залишаються основою остаточного розрахунку. Цей додатковий рівень не скасовує правил Біткоїна й не випускає власного токена. [2] [1]
Канал — домовленість між двома учасниками, підкріплена справжніми біткоїнами. Під час відкриття створюється funding transaction, тобто фінансувальна транзакція в основній мережі. Її вихід, конкретна сума з умовами витрачання, є основою каналу. Учасники мають підготовлені й підписані commitment transactions, що дозволяють розподілити кошти під час закриття. Баланс змінюється через перерозподіл прав на вже заблоковані біткоїни, а не через створення нових. [2]
У гаманці із самостійним контролем потрібно керувати ключами й даними, необхідними для роботи каналів. Одні застосунки роблять це безпосередньо, інші залучають допоміжні сервіси. У кастодіальному сервісі, натомість, кошти й канали контролює оператор. Ваш баланс — його запис про те, скільки він дозволить вивести. Сама назва Lightning чи сума на екрані не розрізняють цих моделей. Важливо, хто може підписувати, що ви зберігаєте в резервній копії й від чиєї доступності залежите. [2]
Коли ви платите партнерові каналу, ви разом підписуєте новий розподіл коштів. У звичайній конструкції каналів попередні версії відкликаються: спроба нав’язати відкликаний стан може коштувати стороні, що шахраює, її коштів. Це не просто необов’язкова зміна числа в застосунку. Якщо партнер припиняє співпрацю, підготовлена commitment transaction дає змогу односторонньо закрити канал через Bitcoin. Проте захист потребує правильних даних про стан і своєчасної реакції. [3]
Спрощений канал має з вашого боку 1 000 000 sat, а з боку партнера — 0 sat. Satoshi, скорочено sat, — найменша одиниця BTC. Після прямого платежу 200 000 sat розподіл становитиме 800 000 sat для вас і 200 000 sat для партнера. Загальна сума не зміниться, а саме оновлення не потребуватиме нового блоку. Приклад не враховує комісій та обов’язкових резервів. Він не означає, що реальний канал може надіслати весь показаний баланс. [3]
Вам не обов’язково мати прямий канал з одержувачем. Платіж може пройти кілька з’єднаних каналів, але кожній ділянці потрібні доступні кошти в напрямку платежу. Це спрямована ліквідність: скільки насправді можна переказати в цей бік. Велика загальна місткість не допоможе, якщо гроші з іншого боку. На результат також впливають резерви, обмеження незавершених платежів, комісії за пересилання й доступність вузлів. [3]
Платежі через кілька каналів пов’язують HTLC, скорочення від Hashed Timelock Contract. Це умовні права на кошти: виплата залежить від розкриття того самого секрету, що відповідає погодженому криптографічному відбитку, і від часових умов. Цей секрет називається preimage. Розкривши його, одержувач може отримати останній платіж, а посередники — свої вхідні платежі. Ближче до одержувача строки коротші, щоб посередники мали час зреагувати. Якщо платіж не завершиться, кошти можна повернути за відповідних часових умов, але не обов’язково відразу. [3]
На маршруті може бракувати коштів у потрібному напрямку, вузол може бути недоступним або комісії перевищити вибраний ліміт. Інформація про канал також може застаріти. Гаманець тоді може спробувати інший шлях чи розділити платіж, якщо це підтримує. Невдала спроба не означає автоматично крадіжку чи зникнення біткоїнів. Водночас звичайна швидкість платежів не гарантує, що кожен запит на оплату відразу виконається з першого разу. [3]
Потрібно захищати актуальний стан каналу й стежити, чи партнер не опублікував відкликану версію. Допомогти може watchtower — сервіс, який відстежує такі спроби й може вчасно відреагувати. Але він не замінює всіх резервних копій і процедури відновлення вашого конкретного гаманця. Seed Phrase, резервна послідовність слів для відновлення ключів, сама може не відновити необхідних даних каналу. Тому перед використанням потрібно розуміти резервування, відновлення й залежність від допоміжних сервісів. [4] [5] [6]
Відкриття й закриття каналу використовують транзакції Bitcoin. Одностороннє закриття може додати періоди очікування, комісії та подальші транзакції для розв’язання незавершених HTLC. Кошти в незавершеному платежі можуть залишатися заблокованими до його вирішення за відповідними умовами. Невдача тому не обіцяє негайного чи безкоштовного повернення, а швидкий платіж не гарантує такого самого швидкого виведення в блокчейн. Саме ця можливість розрахунку на Bitcoin, однак, є опорою каналів під вашим контролем. [4]
Для повної картини прочитайте також Транзакція, SegWit, Taproot, Гаманець, Transaction Fees. На цю статтю також посилаються Гаманець, SegWit, Taproot, Біткоїн-адреса.