Не»-простой гайд по настройке и использованию полного узла Lightning Network

«Не»-простой гайд по настройке и использованию полного узла Lightning Network

Ne-Standart

07.12.2019

гайд по настройке и использованию полного узла Lightning Network

История создания этого гайда началась с квеста, объявленного БитНовостями на десятилетие дня Генезиса. По условиям конкурса, первые двадцать участников, установивших свой персональный Lightning–узел, открывших Lightning–канал для приёма BTC и сгенерировших лайтнинг-инвойс на получение 0,002019 ВТС, получали 0,002019 ВТС в качестве приза. Среди читателей задание смогли осилить два человека. Такое слабое принятие технологии и отсутствие какой-либо дружественности по отношению к пользователям послужило толчком для написания статьи, призванной популяризовать использование Lightning.

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

На мой взгляд, обилие технических терминов – это основная проблема многих статей о Lightning Network, авторы которых забывают, что у читателей может несколько иной уровень подготовки, нежели у них самих. В то же время, я не стану приводить вам полу-адекватные примеры с бусами, счётами и прочими погремушками.

Теория

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

Ведь, чтобы пользоваться обычными деньгами, не нужно досконально знать, как их печатают, и как устроена банковская система по своей сути, верно? Хотя это было бы отнюдь не лишним.

Сегодня банки явно злоупотребляют данными свыше привилегиями, и вынуждают обращаться граждан к альтернативным финансовым системам. Стоит признать, что технологии Bitcoin и Lightning Network пока не стали полноценной заменой традиционному банкингу, и, возможно, никогда не станут, но, ведь, это всего лишь альтернатива, возможность, при необходимости, использовать более удобный метод передачи ценности. К тому же, не исключено, что со временем ситуация изменится кардинальным образом. Банки сложат с себя обязанности главного валютного эмитента, и над зданием Федеральной Резервной Системы взметнётся чёрный флаг криптоанархии. А пока жадные банкиры этого не допускают всеми силами – мы подготовим, так сказать, почву для мировой революции.

***

Что такое Lightning Network?

В общем, вникнуть в работу Lightning Network между ужином и просмотром сериала не выйдет, поэтому тем, кому недостаточно поверхностных разъяснений – рекомендуется данная статья:

Lightning Network: все технические детали

Она сложная, честно. Поэтому, для общего понимания будет вполне достаточно относительно краткого описания и минимального практического опыта, которым я сам обзавёлся волею судеб и крайне увлекательного квеста, проведённого зимой 2019 года на Bitnovosti.com. Чтобы получать и отправлять переводы в Lightning Network – большего и не потребовалось. Итак, начнём с основного.

Lightning Network представляет собой надстройку над основным блокчейном Биткойна. Чисто в теории безопасность сего новшества базируется на безопасности самого Bitcoin. Хотя, по факту, всё не так просто. Но, главное, что в будущем планируется прикрутить такую «приблуду» и к другим не менее интересным и, несомненно, нужным блокчейнам. Правда, пока основное внимание сосредоточено на самом родном и близком – Биткойне.

«Надстройка позволяет осуществлять быстрые, недорогие и сравнительно анонимные переводы в биткойнах, практически не затрагивая основного блокчейна».

Здесь следует уточнить детали:

  • Быстрые – да, в теории, мгновенные. Но, в силу особенностей технологии – может произойти непредвиденная задержка/сбой. По каким причинам – опишу ниже.
  • Недорогие – да, буквально центы и копейки. Но, в теории, комиссии могут быть любого произвольного размера.
  • Практически не затрагивая основного блокчейна – да, в реестр записываются только две транзакции, первая и последняя, без учёта любого количества промежуточных переводов в сети LN.
  • Сравнительно анонимные – LN не имеет публичного реестра, а узлы не видят все детали проходящих по ним транзакций, что делает платежи в этой сети более приватными нежели в основном блокчейне.

История Lightning Network

За создание данного чуда, впервые представленного на биткойн-семинаре в Сан-Франциско в феврале 2015 года, основную ответственность перед обществом, несут разработчики Тадеуш Драйджа [Tadge Dryja] и Джозеф Пун [Joseph Poon].

В конце 2015 года на конференциях Scaling Bitcoin Montreal и Scaling Bitcoin Hong Kong была проведена более обстоятельная презентация идеи, которая получила одобрение от ведущих разработчиков Bitcoin Core и стала частью его дорожной карты развития.

The Bitcoin Lightning Network Whitepaper

Между прочим, идею платёжных каналов высказывал ещё сам Сатоши Накомото. В дальнейшем, инициативу поддержали такие известные компании, как Lightning Labs, Blockstream, BitFury и ACINQ.

История развития Lightning Network

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

В Lightning Network пользователи открывают между собой платёжные каналы, которые ранее представляли собой типичные биткойн-адреса с мультиподписью (P2SH). Подобные адреса [multisignature adress] в Биткойне неизменно начинаются с тройки – обычные [legacy adress] начинаются с единицы.

Факт: с определённого времени в клиенте Bitcoin Core по умолчанию генерируются только multisignature adress (P2SH), совместимые с технологией SegWit, а сама Lightning Network работает с адресами в родном формате SegWit (bech32). Также в Bitcoin Core можно сразу генерировать segwit-адреса вида bech32.

Вышла версия Bitcoin Core 0.19.0

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

Кому мало краткой информации о работе «многоподписных» адресов – может обратиться к этим материалам на крайне замечательных ресурсах:

Мультиподпись. Википедия

Как работает мультиподпись в Биткойне. Хабр

Lightning Network и SegWit

Как я уже упомянул – адреса в Lightning Network являются реализацией технологии SegWit. И это не просто совпадение. Адрес в SegWit (в формате P2SH) совместим со стандартными биткойн-адресами – на него спокойно можно получать и отправлять BTC. Следовательно, технология SegWit использует два вида адресов: P2SH и bech32.

Именно внедрение Segregated Witness отлично дополнило не только Bitcoin, но, и Lightning Network. Это решило многие проблемы в «молниеносной сети»: обеспечило необходимый уровень совместимости с Биткойном, значительно улучшило безопасность, сняло ограничения на время жизни канала и т.д.

Что такое SegWit?

Пример взаимодействия двух технологий в клиенте Lightning Network Daemon (LND)

Поэтому, неудивительно, что SegWit и Lightning Network прочно ассоциируются друг с другом.

Lightning Network и атомарные свопы

Важной частью Lightning Network являются хэш-контракты: «Hash time lock contracts (HTLC) или хэш-контракты временной блокировки». Они не только отвечают за работоспособность и безопасность сети, но, и позволяют задать условия выполнения, например, срок жизни для платёжного канала.

Также, именно эти контракты используются в технологии атомарных свопов – обмене монет между разными блокчейнами без необходимости доверять третьей стороне, т.е. абсолютно напрямую. В будущем это станет возможно и в самой Lightning Network, когда другие блокчейны обзаведутся собственной «молниеноской».

Но, об атомарных свопах и децентрализованных биржах на их основе – мы поговорим в других материалах.

***

Естественно, без понимания принципов работы самого блокчейна – нет смысла пытаться вникать в техническую начинку Lightning Network. Но, если всё же очень хочется знать об этой непонятной «молниеносной сети» всё, а фоновых знаний недостаёт, пожалуйста, обращаемся к базовой основе:

Как работает блокчейн

***

Итак, вернёмся к главному – у нас есть два пользователя, имеющих общий депозит в биткойнах и раздельный баланс на кошельках Lightning Network.  Никто из них не может забрать себе весь депозит без дозволения другого. Баланс отображает сумму, равную внесённой доле на общий депозит. Теперь пользователи могут обновлять балансы сколь угодно раз, передавая друг другу биткойны в безраздельное владение. Таким образом, в основном блокчейне ничего не происходит – ведь, по факту, биткойны никуда не двигаются, они просто меняют владельца.

***

Если звучит немного непонятно, поэтому давайте приведёт конкретный алгоритм действий, который может немного отличатся, в зависимости от используемого клиента:

  • Пользователь скачивает и устанавливает любой клиент для работы в Lightning Network;
  • Получает биткойн-адрес с поддержкой SegWit, на который делает перевод любой суммы (пока сравнительно небольшой). Происходит первая транзакция в основном блокчейне;
  • Открывает платёжный канал (создаёт мультиподписной адрес) с любым другим пользователем на любую сумму. Открытие канала означает блокировку биткойнов на мультиподписном адресе, что позволяет сторонам избавиться от необходимости доверять друг другу;
  • Теперь можно делать сколько угодно переводов в рамках вложенной суммы. Размер депозита определяет ту самую «ширину платёжного канала». Т.е. вы не можете потратить больше, чем разместили на депозите.

Важный момент: получить больше ширины открытого канала вы тоже не сможете! Да, так это пока устроено.

Делая «перевод» – вы лишь передаёте право владеть вашими биткойнами или их небольшой частью второй стороне, когда это требуется. Иными словами, можете «отправить» любую сумму, даже самую мелкую. Или получить её обратно. Быстро и недорого, потому что процесс перевода представляет собой всего лишь обновление баланса на кошельках сторон в Lightning Network без необходимости ждать подтверждения транзакции и платить комиссию непосредственно майнерам. В теории, можно отправить долю цента с нулевой платой за проведение этой транзакции.

Таким образом, сами биткойны никуда не двигаются, историю изменения балансов хранят полные ноды в Lightning Network, которые находятся в постоянном режиме синхронизации.

Канал можно держать открытым сколько угодно. После того, как все ваши биткойны перейдут во владение второй стороне (канал с вашей стороны «истощён», деньги закончились) или необходимость в переводах исчезнет – можно закрывать канал.

Пополнить существующий канал из блокчейна Биткойна не выйдет – потребуется открывать новый. И прежде чем вывести биткойны в основной блокчейн также для начала потребуется закрыть канал. Хотя уже разрабатываются решения, способные решить эту проблему.

После закрытия канала в основной блокчейн отправляется вторая, завершающая транзакция [commitment transaction], которая приводит баланс и той, и другой стороны в соответствующее состояние по итогам всех промежуточных операций. Инициатором закрытия канала может стать любая сторона, без согласия другой.

Итак, сотни или тысячи мелких транзакций в Lightning Network, и всего две транзакции в основном блокчейне, которые, естественно, как положено, проверяются майнерами.

Понимаете? В Lightning Network нет никаких «долговых расписок», «токенов» и прочих псевдо-финансовых излишеств – есть только настоящие, живые биткойны.

***

Важный и основной момент – Lightning Network является именно сетью, и нет необходимости открывать с каждым пользователем отдельный канал. Достаточно, чтобы между отправителем и получателем был промежуточный пользователь. Это может быть рядовой юзер или огромная нода, у которой открыто множество платёжный каналов с другими пользователями и такими же крупными узлами.

explorer.acinq.co
Это и есть та Великая Платёжная Сеть, которая покроет в будущем весь мир. Даже не сомневайтесь

https://explorer.acinq.co/

В случае передачи средств через промежуточных участников в сети происходит взаимоучёт, «перебалансировка балансов».

Приведу пример:

Я (user 1) хочу сделать перевод некому пользователю (user 3), открытого канала с ним нет, но, есть инвойс. А большего и не нужно. Сеть сама найдёт оптимальный путь до user 3, например, через user 2, которому, кстати, о факте этого перевода знать вовсе необязательно. Он не видит ни меня, ни user 3. Мне же нужно иметь хотя бы один открытый канал и желательно с крупной нодой, так называемым хабом чтобы сделать перевод, после чего спокойно отправиться в бар с друзьями, пить пиво и обсуждать последние новости из мира высоких технологий.

В общем, открытие канала с крупной нодой практически равносильно подключению ко всей сети, и это, безусловно, очень круто.

Также, необходимо отметить, что весь трафик между узлами зашифрован по «принципу луковицы» [Onion Routing], что заложено в основы работы самой Lightning Network. Эта сеть не имеет публичного реестра, поэтому все переводы между пользователями в рамках этой сети вполне себе анонимны. Таким образом, сложности с отслеживанием транзакций делают LN своеобразным «TOR браузером для биткойн-платежей».

Ни это ли всё предел мечтаний любого криптана? Отнюдь. Есть довольно ощутимые недостатки, и я просто обязан их обозначить.

Важный нюанс: для перевода от user 1 к user 3 через user 2 – средства с баланса user 2 передаются на баланс user 3, а от user 1 (меня) на баланс user 2. Иными словами, на счету user 2 должна находиться сумма, не меньше чем мой перевод на адрес user 3. В противном случае, перевод через user 2 будет невозможен. Необходим маршрут с ликвидностью, иначе будет сбой платежа. Так уж это пока устроено.

Но, в сети есть много других user-ов, поэтому подобный сбой передачи средств происходит не так часто, как бы хотелось противникам этой технологии.

Так что, до определённого времени не стоит высылать слишком крупные переводы, ликвидность пока относительно невысокая. Акцентирую – лишь ОТНОСИТЕЛЬНО. К тому же, пока Lightning Network не является полноценной заменой для Bitcoin или Visa/MasterCard – это сеть микро-платежей, для тех кому было критически важно «расплачиваться за кофе» биткойнами.

Второй аспект: все участники этой цепочки (я, user 2 и user 3) должны находиться в онлайн, т.е требуется чтобы на момент проведения транзакции наши устройства с установленными клиентами Lightning Network работали и были подключены к сети. Если user 2 или/и user 3 будут в оффлайн – мои средства просто вернутся обратно.

Это и есть те проблемы со скоростью переводов, о которых я упомянул изначально. Но, это ещё не всё, не спешите выдыхать.

Сторожевые башни: на охране ваших интересов

Сторожевые башни Lightning Network

Вот здесь всплывают более сложные моменты в этой технологии, в первую очередь, вынужден признать, для меня самого. Я уже упоминал, что сеть имеет некоторые недостатки в сравнении с классическим, надёжным блокчейном Биткойна. Он великолепен. Всё остальное находится в стадии становления и переживёт ещё немало метаморфоз.

Без лишнего трагизма – на данный момент не стоит держать в Lightning Network сумму, которую жаль потерять. Это не значит, что вам ежеминутно грозит ограбление – это редкий случай. Но, всё же система ещё не гарантирует полной безопасности.

Важный момент: если ваша нода ушла в оффлайн, то вторая сторона может закрыть канал, при этом, транслируя более раннее состояние канала, таким образом, вернув уже выплаченные вам деньги обратно себе.  

Именно, поэтому Lightning Network всё ещё считается недостаточно безопасной. Но, уверен, что сообщество свободных девелоперов и крупные технологические компании, спонсирующие разработку технологии, обязательно решат подобные проблемы, в частности, уже сейчас отрабатывается такое решение, как «Сторожевые башни».

«Сторожевые башни» – узлы, которые мониторят сеть на попытки мошенничества и пресекают произвол, отправляя все средства на адрес не-мошеннической ноды, что называется «транзакцией справедливости».

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

Возможность подключения к подобным узлам уже реализована в бета-клиенте LND.

Правда, если сумма достаточно велика, не исключена возможность сговора владельцев мошеннической ноды и определённой «Сторожевой башни».

ВАЖНЫЕ рекомендации:

  • Надёжней работать через известные, проверенные ноды, чья репутация вызывает меньше недоверия, нежели малознакомый юзер, который может попытаться украсть ваши деньги.
  • Необходимо реже уходить в офлайн, что, конечно, трудно осуществимо на практике и не гарантирует полной безопасности.
  • До момента полноценной реализации технологии – не следует хранить в Lightning Network более или менее значительные для вас суммы.

***

Следовательно, чтобы досадные моменты не огорчали нашу крипто-вечеринку – необходимо создавать как можно больше полных нод «в авторитете» с приличной или «ну очень неприличной» ликвидностью (прям до безобразия высокой), множеством каналов с другими пользователями и постоянным пребыванием в режиме онлайн, например, на каком-нибудь уютном выделенном сервере в Швеции.

Крупные ноды не только получают «респект и уважуху» от братьев по блокчейну, но, и регулярные комиссионные с переводов. Комиссия, вероятно, не станет слишком высокой, в виду того, что её размер выставляется по усмотрению владельца узла – ведь конкуренция предвидится жаркой, и ноды будут бороться за внимание юзеров, привлекая их наиболее выгодными условиями.

Проблем не предвидится, но, это в идеале, конечно, ведь монопольные замашки некоторых индивидуумов из мира крупных финансов никто не упразднял. С условием всего вышеперечисленного – есть риск централизации данной сети и появления точек отказа.

Хотя ноду в этой сети может поднять кто угодно, были бы средства для обеспечения. Так что, есть смысл копить необходимые знания и пару биткойнов для участия в будущем всего человечества.

К тому же, вы же, надеюсь, не ищите простых путей? Ведь истинные крипто-блокчейнеры и анархо-капиталисты сразу закладывают мощный, собственный фундамент на долгие годы вперёд.

Поэтому теперь, когда все карты на столе – можно глубоко вдохнуть, запастись терпением, недельным запасом продуктов и приступать к практике, начиная с простых приложений на смартфон и заканчивая собственной нодой на все +250 кило чистейшего блокчейна.

Как настроить собственную ноду Lightning

Я искренний сторонник, скажем так, «полной нодификации», поэтому мы не будет пользовать «кошелёк от доброго дяди», и поднимем полноценную ноду всем банкирам назло.

Вариантов немало – уже сейчас существует такие клиенты, как LND, Eclair, Zap и т.д. Возможно, уже есть более продвинутые варианты – при желании, делитесь ими в комментариях.

Я решил таки получить два в одном и использовать связку Bitcoin Core + Eclair. Да, есть другие варианты, но, та же Lightning Power Node Launcher + ZAP Wallet проявили себя не лучшим образом. Если точнее, то последний клиент Node Launcher постоянно вылетал с ошибкой. Хотя сам ZAP Wallet мне пришёлся по вкусу. С Lightning Network Daemon я также пока связываться не стал – возможно, в другой статье мы рассмотрим этот однозначно более чем продвинутый клиент.

Ну что-же – приступим. Я пользуюсь операционной системой от иллюминатов – поэтому качаю клиент Bitcoin Core для Windows с официального сайта Bitcoin.org, и инструкцию буду писать именно под эту ОС.

Интересный факт: первоначально Bitcoin Core существовал только для Windows. Сатоши Накамото рушит устоявшийся образ гика-линуксоида.

По идее, для полноценной работы ноды LN потребуется статичный IP-адрес, заказать который можно у своего интернет-провайдера. Лично я этого пока не делал в виду того, что, пока, для меня это лишь эксперимент. Но, если ваш динамический адрес изменится, то нода станет недоступной, т.к. изначальный IP-адрес прописывается в настройках. И что после этого произойдёт с открытыми каналами – я не знаю.

В общем, скачали, установили точно также как любимую игрушку: ДА-ДА-СОГЛАСЕН-УСТАНОВИТЬ. Если вы никогда не ждали от 2-3 дней до пары недель синхронизации, то следующий шаг вам точно запомнится надолго. Возможно, у вас всё пройдёт относительно быстро, но, в моём случае, это оказалось довольно длительным и мучительным время ожиданием.

Если желаете немного ускорить процесс – то можно скачать основную часть блоков торрентом по ссылке на официальном сайте Bitcoin.org и до синхронизировать уже небольшой остаток:

Скачать блокчейн

Вам надо лишь распаковать полученные блоки в рабочую папку Bitcoin Core – она ведь у вас на диске D, правда? Любой здравомыслящий человек помещает +250 гигов блокчейна именно туда. Клиент можно поставить на диск С, главное, потом не забыть сделать зашифрованный бэкап для восстановления кошелька. После распаковки нужно запустить клиент и дождаться пока он с подозрением перепроверит все блоки лично, если качали блокчейн из стороннего источника.  Если решили синхронизировать по-честному, во избежание так сказать – то ждите и будет вам счастье.

Итак, энное количество часов/дней/недель спустя… (зависит от скорости вашего интернет-соединения, жёсткого диска и лимита терпения):

Bitcoin Core синхронизация

Если терпения не хватило – значит вообще ничего не будет. Идём юзать PayPal, с которым, стоит заметить, также не всё гладко. А самые целеустремлённые получают достойную награду: возможность продолжить работу по настройке ноды.

Не спешите и сначала удостоверьтесь – всё ли работает? Проверьте – действительно ли клиент синхронизирован. Для этого откройте консоль и вбейте команду getblockchaininfo – значения block и headers должны совпадать:

Bitcoin Core block и headers

Теперь проверьте работоспособность кошелька (получение/отправка средств и т.д.) – если всё ок – зашифруйте бумажник и сделайте его бэкап.

Сгенерировать адрес в Bitcoin Core – очень просто.

Переходим во вкладку «Получить»:

Bitcoin Core Получить

Заполняем или не заполняем поля и нажимаем на кнопку «Запросить платёж»:

Bitcoin Core Получить

Получаем адрес, пользуемся по необходимости.

А, главное, откройте нужные порты в роутере – вам нужна «слушающая» нода и никак иначе. Т.е. к ней должны иметь возможность обращаться другие ноды.

Для этого требуется открыть порты 8333 и 9735 – зайдите в настройки роутера и пропишите их там. У меня это выглядело так – у вас, возможно, будет немного по-другому, зависит от модели роутера:

Роутер порты 8333 и 9735

***

Роутер tp-link порты 8333 и 9735

Вот теперь можно приступать к следующей фазе настройки.

Установка Eclair

Качаем последнюю версию – формата exe уже не предусмотрено, поэтому потребуется немного плясок с бубном.

Качаем:

https://github.com/ACINQ/eclair/releases/tag/v0.3.2

Eclair github

***

«Начиная с этой версии, Eclair не предоставляет установщик для Windows. Вместо этого пользователи должны сами вручную запустить jar-файл». Хорошо хоть без необходимости компиляции из сырых исходников….

Если вы не знаете, как что делать – следуйте инструкциям ниже:

  • Скачайте eclair-node-gui-0.3.2.jar и поместите его, например, на диск D
  • Создайте bat-файл – «run-eclair-0.3» где-нибудь на вашем диске со следующим содержимым:

start /B javaw -Declair.datadir=C:\path\to\node\datadir -jar C:\path\to\eclair-node-gui-0.3-2a89cf7.jar

Источник <https://github.com/ACINQ/eclair/releases>

Как создать bat-файл?

***

Eclair bat
Как-то так…

***

Сделали? Теперь производим первый запуск и получаем ошибку связи с Bitcoin Core. Это нормально. Закрываем сообщение об ошибке и продолжаем танцы.

***

Необходимо отредактировать или создать, в случае отсутствия, конфигурационные файлы bitcoin.conf и eclair.conf.

Файл bitcoin.conf размещается в папке с блокчейном, как правило в:

D://Bitcoin/bitcoin.conf.

Файл eclair.conf:

D://Eclair/.eclair/Datadir/eclair.conf.

Как и bat-ники, файлы конфигурации создаются в обычном блокноте, после чего сохранённому текстовому файлу нужно присвоить расширение .conf.

Параметры настройки файлов bitcoin.conf и eclair.conf:

настройки файлов bitcoin.conf и eclair.conf

***

Нужно заменить значения username и password на свои. Если всё сделали правильно – запускаем Bitcoin Core и Eclair. Вот теперь всё работает:

Eclair

***

Осталось показать, как пользоваться этим чудом, как заводить и выводить биткойны, где поиграться с переводами и обменять на другую крипту. Вери гуд, господа, вери гуд. Аплодируем себе стоя, но, не поддаёмся эмоциям – вам ещё потребуется выдержка. И мне тоже.

Как открыть канал Lightning Network

Для начала необходимо открыть платёжный канал с одной из крупных нод. Для этого например, отправляемся на сайт https://1ml.com/:

Как открыть канал Lightning Network

Там есть много популярных узлов на выбор:

Как открыть канал Lightning Network 1ml

Также вы можете выбрать популярную ноду на explorer.acinq.co:

explorer.acinq.co выбор ноды

Можно воспользоваться узлом от компании AСINQ, LightningPowerUsers или Bitrefill. Хотя нода AСINQ, от создателей столь чудесного клиента Eclair и вьювера, при попытке подключения выдала ошибку, а последние заявили следующее:

peer sent error: ascii=’chan size of 0.001 BTC is below min chan size of 0.16 BTC’ bin=6368616e2073697a65206f6620302e303031204254432069732062656c6f77206d696e206368616e2073697a65206f6620302e313620425443

Как я понял – минимальная сумма для открытия канала составляет ~1200$ (22/11/2019). Увы, но, я забыл бумажник дома и решил попытать счастья с другими нодами.

Их много, и можно даже рискнуть открыть канал с обычной, далеко не популярной нодой –  они отображаются прямо в клиенте Eclair:

Eclair ноды

Но, есть большая вероятность, что у ноды будет открыто слишком мало каналов с другими нодами, и путь до получателя окажется абсолютно неликвидным. Это и есть та проблема с переводами, о которой я упомянул в самом начале.

Поэтому для того чтобы взаимодействие с Lightning Network не вызывало разочарования – находим достаточно популярную и ликвидную ноду.

Для этого, копируем её Node Id, IP и порт, что в совокупности образует адрес, и открываем в клиенте Eclair вкладку Channels>Open chanel:

Channels Open chanel eclair

В поле Target Node URI вставляем скопированный адрес:

Target Node URI eclair

Например, такой (выбрал первый попавшийся):

02247d9db0dfafea745ef8c9e161eb322f73ac3f8858d8730b6fd97254747ce76b@213.174.156.70:9735

Где 02247d9db0dfafea745ef8c9e161eb322f73ac3f8858d8730b6fd97254747ce76b – это Node Id, 213.174.156.7 – IP, а 9735 – порт.

Минимальная сумма для открытия канала, как правило: 100 000 сатош (вроде как):

Минимальная сумма для открытия канала eclair

Комиссию [fee rate] – выставляете по собственному усмотрению. Я оставляю как есть. Теперь жмёте кнопку Connect:

Eclair Connect

Канал открылся со статусом WAIT_FOR_FUNDING_CONFIRMED и сатоши с Bitcoin Core были списаны на адрес формата bech32 (SegWit):

Bitcoin Core bech32 (SegWit)

Мониторить адреса в SegWit можно в блокчейн-эксплоурере от компании Blockstream:

SegWit Blockstream

https://blockstream.info/

Теперь нужно дождаться подтверждения открытия канала и как только статус обновиться до Normal можно продолжать работу:

eclair Normal
Как видите – набралось более 4000 узлов

Важно! До того времени, пока канал не будет окончательно открыт – клиент Eclair, и, соответственно, Bitcoin Core должны оставаться в режиме онлайн. Их выключение (намеренное или ненамеренное) может привести к потере средств, отправленных на открытие канала. Это произошло лично у меня при первых опытах с клиентом Eclair. Средства остались на адресе формата bech32, без доступа к ним.

Итак, канал открыт, по виду абсолютно рабочий и теперь осталось воспользоваться молниеносными сатошами по назначению.

Как получить и отправить перевод в Lightning Network?

Чтобы получить перевод необходимо зайти во вкладку «Receive payment»:

Как получить и отправить перевод в Lightning Network

После чего нажать на кнопку «Generate» и скопировать полученный инвойс:

eclair инвойс

Одноразовый инвойс позволяется получить средства от другого пользователя сети, если он ему известен. Да, пока в Lightning Network не реализована система статичных адресов. Хотя время жизни инвойса не ограничено. Минимальные и максимальные значения на отправку/получение средств у разных кошельков свои, при этом, чисто теоретически, система не накладывает каких-либо ограничений.

Для отправки средств открываем вкладку «Send Payment»:

eclair Send Payment

Вставляем инвойс, полученный от другого участника сети и нажимаем на кнопку «Send»:

Send Payment eclair инвойс

После чего остаётся только подтвердить перевод:

eclair подтвердить перевод

Варианты обмена

Клиент Éclair – это вроде надстройки над Bitcoin Core (без него не работает), поэтому при открытии канала биткойны автоматически списываются с баланса кошелька и, что самое главное, при закрытии канала возвращаются туда обратно. Поэтому проблем с выводом биткойнов из сети LN, во всяком случае, в этом клиенте не наблюдается.

Но, если вы сразу желаете обменять биткойны на фиат или другую криптовалюту, без их вывода из LN, то в вашем распоряжении есть обменники и P2P-биржи, работающие с этой сетью.

HodlHodl

Hodl Hodl – это криптовалютная P2P-биржа, которая дает возможность торговать пользователям напрямую между собой, и, при этом, не хранит их средства, что позволяет не раскрывать свои данные бирже. При работе с Hodl Hodl – средства блокируются в эскроу, что минимизирует риск кражи и сокращает время торговли.

На бирже есть два режима — On-chain и Lightning. Для того, чтобы торговать в сети Lightning, необходимо переключить режим биржи, нажав на молнию в шапке сайта.

Откроется экран Lightning-режима торговли.

Baltic Honeybadger и HodlHodl: интервью с Максом Кейдун

ZigZag

Приложения для Lightning Network на Android

Если вам вся эта процедура кажется технологическим излишеством – ваше право. Используйте менее безопасные и альтруистичные варианты, ведь их немало.

Список мобильных кошельков:

https://lightningnetworkstores.com/wallets

Стоит обратить внимание на:

https://lightning-wallet.com/

Дополнительно

Вообще не желаете ничего устанавливать? Хотите владеть своими деньгами – пока вам это разрешают делать? Что же, и здесь есть свой плюс — удобство, особенно, если сумма небольшая и хранится недолго.

Онлайн-кошельки:

https://www.opennode.com/

https://coingate.com/

***

Разные интересные вещи и вкусные плюшки, связанные с Lightning Network – можно найти на специальных мониторинг-сайтах, посвящённых этой технологии.

Информационные ресурсы:

https://lightningnetworkstores.com/

Заключение

Всё описанное выше пока не является окончательным решением, способным решить все проблемы Биткойна и по-настоящему децентрализовать финансовую систему. Но, уже сегодня – это уже нечто осязаемое, чем можно пользоваться. Можно надеяться, что в ближайшем будущем Lightning станет таким же популярным явлением, как и сам Биткойн.

Автор: Ne-Standart