Что такое Lightning Network?

Что такое Lightning Network?

Особые новости

Что такое Lightning Network?


Lightning Network — это протокол второго уровня, позволяющий выполнять биткойн-транзакции офчейн, то есть не записывая каждую из них в основной блокчейн Биткойна. Поскольку они не записываются в блокчейн и, следовательно, не требуют майнинга, lightning-платежи несравнимо быстрее и дешевле.


Как работает Lightning Network?


Подобно сети Биткойна, сеть Lightning состоит из нод, на которых работает специализированное ПО Lightning Network. Однако в отличие от сети Биткойна, lightning-транзакции не транслируются публично и не хранятся всеми участниками сети. Отдельные lightning-ноды взаимодействуют друг с другом приватно. Для выполнения транзакций между собой lightning-ноды используют каналы.


Что такое платежный канал Lightning?


Lightning-канал — это двунаправленный платежный канал, то есть обе стороны могут отправлять и получать по нему платежи. Lightning-каналы образуют сеть Lightning и обладают определенной емкостью — пропускной способностью — в биткойнах. Эта емкость распределяется между двумя сторонами канала, и биткойны перемещаются между ними в lightning-транзакциях.


Открытие lightning-канала


Для открытия lightning-канала две стороны вносят биткойны на multisig-адрес типа 2-из-2. Эта транзакция записывается в блокчейн Биткойна, и когда она получает подтверждение, lightning-канал открывается. Открытый lightning-канал позволяет обеим сторонам выполнять между собой любое количество транзакций дешево и мгновенно. Совершив между собой все желаемые транзакции, стороны могут закрыть канал с помощью еще одной транзакции, записываемой в основной блокчейн Биткойна. Эта ончейн-транзакция будет отражать чистое изменение балансов обеих сторон на момент закрытия канала.


Совершение транзакций через lightning-канал


Платежный канал представляет собой пул средств, разделенный между двумя сторонами. Эти средства всегда хранятся на multisig-адресе; Lightning Network не создает дополнительных токенов или иных представлений биткойнов. Lightning-транзакции по этому каналу производятся путем перераспределения средств на соответствующем multisig-адресе. Всякий раз, когда биткойны «перемещаются» по каналу — от стороны А к стороне Б — баланс канала обновляется. Но эти обновления не записываются в блокчейн Биткойна.

В примере ниже Элис и Боб открывают канал и вносят на multisig-адрес по 1 BTC каждый. Затем Боб переводит Элис 0,5 BTC по сети Lightning. Общий баланс канала после этого по-прежнему составляет 2 BTC, но теперь 1,5 BTC принадлежат Элис и 0,5 BTC – Бобу.


Закрытие lightning-канала


Окончательный расчет средств происходит, когда обе стороны решают закрыть канал. При закрытии канала в блокчейн Биткойна записывается транзакция, расходующая BTC с multisig-адреса. При этом происходит расчет между участниками канала согласно окончательному балансу на момент закрытия. В нашем примере у Элис теперь будет 1,5 BTC, а у Боба – 0,5 BTC.


Маршрутизация платежей в Lightning Network


Базовые конструкционные блоки Lightning Network — это ноды и платежные каналы, посредством которых ноды могут взаимодействовать друг с другом. Само собой, не каждая нода будет иметь прямой канал с той нодой, на которую она хочет отправить платеж. Маршрутизация платежей позволяет производить транзакции между двумя не связанными между собой напрямую сторонами по ряду уже существующих каналов.


Как работает маршрутизация в Lightning Network?


Представьте, что Элис хочет сделать перевод Кэрол по Lightning Network, но не имеет с ней прямого открытого канала. Однако и у Элис, и у Кэрол есть платежные каналы с Бобом. Криптографический процесс позволяет Элис отправлять платеж Бобу с гарантией того, что Боб перешлет платеж Кэрол. В обмен на такое посредничество Боб получит небольшое вознаграждение.

Такая маршрутизация возможна благодаря HTLC, хешированным контрактам с временной блокировкой. HTLC — это особый тип биткойн-транзакций, действующих как смарт-контракты.

В контексте Lightning Network HTLC используются, чтобы позволить Элис обещать выплату Бобу только в том случае, если он сможет представить подтверждение, что заплатил надлежащую сумму Кэрол.


Кто разработал Lightning Network?


Таддеус Дрия (Thaddeus Dryja) и Джозеф Пун (Joseph Poon) впервые представили Lightning Network в своей уайтпейпер «The Bitcoin Lightning Network: Scalable Off-Chain Instant Payments» (PDF, англ.) в 2015 году.


Различные реализации Lightning


Существует множество различных реализаций используемого кошельками ПО для нод Lightning Network. Наиболее популярные из них — Lightning Network Daemon от Lightning Labs, Eclair от ACINQ и c-lightning от Blockstream.

Хотя эти три реализации написаны на разных языках программирования, все они совместимы друг с другом. Все реализации Lightning следуют стандартам, прописанным в Basis of Lightning Technology (BOLT), своде правил, обеспечивающих консенсус и взаимную совместимость между различными реализациями Lightning. Благодаря спецификациям BOLT, существует только один протокол Lightning Network.

Report Page