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

understanding-the-lightning-network-part-building-a-bidirectional-payment-channel

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

Как минимум три компании — основанная авторами идеи LN Джозефом Пуном (Joseph Poon) и Тэджем Дрийа (Tadge Dryja) Lightning, а также Blockstream и Blockchain.info — в настоящее время работают над реализацией этой технологии. Однако, кроме вовлеченных в это разработчиков мало кто понимает, как вся эта магия вообще работает. Мы предлагаем своим читателям восполнить этот пробел в своих знаниях.

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

Элемент 1: неподтвержденные транзакции

В своей основе биткойн-протокол состоит из транзакций, которые ссылаются на прошлые транзакции и, возможно, на будущие. Каждая транзакция содержит входы с адресами отправителей биткойнов, и выходы с адресами их получателей. Кроме того, входы должны включать требования, которые создатель транзакции должен удовлетворить, чтобы транзакция была успешно выполнена, — иначе говоря, он должен подтвердить, что имеет право распоряжаться биткойнами, хранящимися по соответствующим адресам. Для выходов текущей (и, соответственно, входов следующей) транзакции указываются новые требования.

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

ln1

Черным цветом обозначена подтвержденная транзакция. Синяя транзакция может быть отправлена в сеть Алисой, но только в том случае, если подтверждена предыдущая транзакция. Красная транзакция может быть отправлена в сеть Бобом — с тем же условием: если подтверждена предыдущая транзакция. В данном примере Алиса может в любой момент подписать и транслировать в сеть свою неподтвержденную транзакцию, отправив 2 биткойна Бобу, и лишь после этого Боб сможет подписать свою транзакцию, отправляющую 1 биткойн Кэрол.

Элемент 2: механизм защиты от двойной траты

Второй элемент Lightning Network не нуждается в подробных объяснениях, потому что это смысл существования самого Биткойна: защита от двойной траты. Если две транзакции (или, скорее, два входа) ссылаются на один и тот же выход, только одна из них может быть подтверждена майнерами. Важно понимать, что конфликтовать могут даже неподтвержденные транзакции — еще до подтверждения одной из них.

ln2

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

Элемент 3: мультиподпись

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

ln3

Алиса и Боб создали адрес с мультиподписью, ключ к которому есть и у Алисы, и у Боба. Если кто-либо из них попытается потратить биткойны в одиночку, ничего не выйдет. Имейте в виду, что после добавления подписи к транзакции изменить содержимое транзакции невозможно. Криптографическая подпись — это что-то среднее между транзакцией и печатью (а на самом деле это длинная уникальная строка чисел).

Элемент 4: временные блокировки

Четвертый элемент Lightning Network — это временные блокировки. Они позволяют блокировать биткойны в выходе, чтобы их можно было потратить (включить в следующий вход) лишь спустя какое-то время.

Временные блокировки бывают двух видов: абсолютные, или CheckLockTimeVerify (CLTV), и относительные, или CheckSequenceVerify (CSV). Блокировка CLTV блокирует биткойны до какого-то (более-менее) конкретного момента в будущем: до фактического времени или определенного блока. В CSV вместо этого используется относительное время. Как только выход с CSV записан в блокчейн, должно быть сгенерировано определенное количество блоков, прежде чем эти биткойны можно будет потратить.

ln4

В Lightning Network блокировка CSV (обозначенная на рисунке часами) часто используется как задержка.

Элемент 5: хеши и секреты

Криптографические примитивы относятся к фундаментальным блокам самого Биткойна, но в Lightning Network они используются иначе.

Если коротко, то «значение» или «секрет» — это длинная уникальная строка чисел, которую практически невозможно угадать даже на очень мощных компьютерах. Этот секрет можно «хешировать» — преобразовать в другую строку чисел, или «хеш». Хитрость в том, что любой, кто знает значение, может с легкостью получить его хеш, но обратное невозможно: хеширование — однонаправленная операция.

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

ln5

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

Первая задача: двунаправленные платежные каналы

Идея платежных каналов обсуждалась еще до Lightning Network. Безусловно, обычные платежные каналы полезны, но ограничены: они однонаправленны. Ключевая особенность Lightning Network — это двунаправленные платежные каналы «без доверия».

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

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

Допустим, Алиса хочет отправить Бобу один биткойн. Алиса и Боб собираются платить друг другу часто, поэтому они решают открыть двунаправленный платежный канал (пожалуй, целый биткойн — это многовато для платежного канала, потому что он больше подходит для микроплатежей, но в этом нет ничего невозможного).

Чтобы открыть канал, Алиса и Боб отправляют на адрес с мультиподписью «2 из 2» по 5 биткойнов. Это и есть «открывающая транзакция». Биткойны по этому адресу можно потратить, только если транзакцию подпишут и Алиса, и Боб.

Кроме того, Алиса и Боб создают секрет (строку чисел) и получают ее хеш.

Далее Алиса немедленно создает из открывающей транзакции новую транзакцию. Это так называемая «транзакция-обязательство» (commitment transaction). С ее помощью Алиса отправляет 4 биткойна себе, а оставшиеся 6 — на второй адрес с мультиподписью. Этот адрес немного необычен. Боб может разблокировать его самостоятельно, но только через 1000 блоков, потому что это адрес с CSV-блокировкой. Или же его может разблокировать Алиса, но только указав секрет, хеш от которого сообщил ей Боб (разумеется, Алиса понятия не имеет, каков этот секрет — она знает только его хеш, — так что она пока не может воспользоваться этой возможностью).

Алиса подписывает транзакцию-обязательство, но не транслирует ее в сеть! Вместо этого она отправляет ее Бобу.

Тем временем Боб делает то же самое, но с обратными параметрами: создает транзакцию-обязательство, отправляя 6 биткойнов себе, а 4 — на новый адрес с мультиподписью. Алиса может разблокировать этот адрес через 1000 блоков, а Боб — с помощью секрета Алисы.

Боб подписывает свою транзакцию-обязательство и отправляет ее Алисе.

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

Теперь и Алиса, и Боб могут подписать и отправить в биткойн-сеть обязательства, которые они получили друг от друга. Если Алиса сделает это, Боб немедленно получит 6 биткойнов. Если это сделает Боб, Алиса получит 4 биткойна. В любом случае тот, кто подпишет и отправит в биткойн-сеть соответствующую транзакцию, должен будет подождать 1000 блоков, чтобы разблокировать адрес с мультиподписью и получить доступ к остальным биткойнам.

ln6

Однако в действительности ни одна из сторон не подписывает и не транслирует в сеть свою транзакцию, и это самое важное в платежном канале.

Обновление канала

Немного позже Боб хочет вернуть Алисе 1 биткойн. Им нужно обновить состояние канала, и для этого они делают две вещи.

Прежде всего, они повторяют изложенный выше процесс (за исключением открывающей транзакции — она уже записана в блокчейн). В этот раз Алиса и Боб отписывают себе по 5 биткойнов, а оставшиеся 5 отправляют на адреса с мультиподписью. Требования к этим адресам похожи, но использовать они должны новые секреты. Это означает, что Алиса и Боб сообщают друг другу новые хеши. Они подписывают свои транзакции-обязательства и отправляют их друг другу.

Далее Алиса и Боб передают друг другу свои секреты из первого сценария.

После этого Алиса и Боб могут подписать и отправить в сеть полученные транзакции-обязательства. Тот, кто сделает это, сможет получить свои 5 биткойнов через 1000 блоков, а вторая сторона — немедленно.

Но что мешает Бобу вместо этого отправить в сеть старую транзакцию-обязательство? Казалось бы, в этом случае он должен получить 6 биткойнов…

Конечно же, сделать это мешает ему его первый секрет, который он только что передал Алисе. Боб больше не может использовать старую транзакцию-обязательство, потому что Алисе известен его первый секрет. Если бы Боб подписал и отправил в сеть старое обязательство, он немедленно отправил бы 4 биткойна Алисе, а сам смог бы получить свои 6 биткойнов лишь через 1000 блоков. Тем временем Алиса сама смогла бы получить эти 6 биткойнов, потому что ей известен секрет Боба! Ну а поскольку Бобу известен секрет Алисы, это работает и в обратном направлении: если Алиса попытается отправить в сеть свое старое обязательство, Боб сможет забрать все биткойны из данного канала.

Это означает, что Алиса и Боб экономически заинтересованы в том, чтобы соблюдать правила и транслировать в сеть только транзакции с актуальным состоянием канала.

ln7

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

Сеть

Допустим, что теперь Алиса хочет отправит 1 биткойн Кэрол. Для этого Алиса и Кэрол могли бы создать платежный канал между собой, но оказывается, что канал есть между Бобом и Кэрол, так что Алиса может заплатить Кэрол через Боба: она может отправить 1 биткойн Бобу, а Боб заплатит Кэрол.

Однако Алиса не доверяет Бобу и Кэрол — она боится, что, если она отправит 1 биткойн Бобу, тот никогда не заплатит Кэрол или же заплатит, но Кэрол заявит, что не получала никаких денег, и Алиса не будет знать, кто из них говорит правду.

Таким образом, Алиса готова заплатить Бобу 1 биткойн, только если будет уверена, что он, в свою очередь, заплатит Кэрол 1 биткойн. Это возможно благодаря нехитрому криптографическому протоколу.

Когда Алиса хочет отправить 1 биткойн Кэрол, она просит Кэрол создать значение (случайную строку чисел) и сообщить ей его хеш. Она также просит Кэрол уведомить Боба, что он может получить это значение за 1 биткойн. Далее Алиса говорит Бобу, что отправит ему 1 биткойн, если он предоставит ей значение, соответствующее хешу, который она получила от Кэрол. Боб принимает предложение Кэрол и отправляет ей 1 биткойн, а за это получает значение. После этого Боб сообщает значение Алисе. Алиса знает, что Боб купил это значение у Кэрол за 1 биткойн, и компенсирует ему его расходы.

ln8

Ну, почти все.

В этом упрощенном сценарии посредник в лице Боба все же должен доверять Алисе и Кэрол. Он должен быть уверен, что Кэрол действительно сообщит ему нужное значение в обмен на 1 биткойн, и он также должен быть уверен, что Алиса на самом деле отправит ему 1 биткойн, как только он сообщит ей нужное значение.

Честность такого обмена биткойнов на значения должна быть гарантирована во всей сети. Точнее говоря, если Боб отправляет 1 биткойн Кэрол, он должен иметь гарантию того, что получит 1 биткойн от Алисы. Для этого используются контракты с хешированием и временной блокировкой (HTLC).

Контракты с хешированием и временной блокировкой

Итак, Алиса хочет обменять 1 биткойн на значение у Боба с помощью HTLC (Боб и Кэрол хотят того же самого, но забудем пока об этом). Для этого Алиса отправляет биткойн на новый адрес с мультиподписью, где биткойн блокируется. Разблокировать его можно двумя способами: Боб может сделать это, указав свою подпись и значение, а Алиса — указав только свою подпись. Однако во втором случае действует CLTV-блокировка: Алиса может подписать и отправить в сеть транзакцию только по прошествии, скажем, двух недель.

Это означает, что у Боба будет две недели на то, чтобы создать транзакцию с подписью и значением, отправляющую заблокированный биткойн ему. Это гарантирует честность сделки: Боб может потребовать биткойн Алисы, только указав в транзакции необходимое значение, которое становится известно Алисе (и всей биткойн-сети). А если Боб не предоставит нужное значение вовремя, Алиса получит свой биткойн обратно. Все просто.

ln9

Но на самом деле контракты HTLC необходимы на уровне сети.

Как уже было сказано, HTLC создают не только Алиса с Бобом, но и Боб с Кэрол. Если Кэрол потребует 1 биткойн у Боба, он получит в обмен нужное ему значение — оно будет записано в блокчейн. Ну а если эта сделка будет совершена, Боб гарантированно получит 1 биткойн от Алисы: для этого ему достаточно добавить обнародованное Кэрол значение в HTLC, заключенный с Алисой. Два канала связаны.

Важно отметить, что Боб должен получить значение от Кэрол раньше, чем Алиса получит шанс потребовать свой биткойн обратно, в противном случае он останется со значением, но без денег. Таким образом, HTLC между Бобом и Кэрол должен истекать раньше, чем HTLC между Алисой и Бобом (например, через 10 дней и 2 недели соответственно; по этой же причине в HTLC необходимо использовать блокировку CheckLockTimeVerify (CLTV), а не CheckSequenceVerify (CSV)).

ln10

Чтобы Lightning Network была полезной, осталось решить лишь одну задачу: все это должно выполняться вне блокчейна.

Lightning Network

Теперь Алисе, Бобу и Кэрол нужно добавить HTLC в канал, чтобы Боб, купивший у Кэрол значение за 1 биткойн, наверняка мог компенсировать свои расходы, получив биткойн от Алисы.

Как и раньше, Алиса и Боб первым делом создают по одной транзакции-обязательству. Эти транзакции включают обычный выход и выход, указывающий на адрес с мультиподписью, CSV-блокировкой и специальной хеш-блокировкой. Далее Алиса и Боб обмениваются своими старыми секретами, делая старый канал недействительным. После обмена они теоретически могут в любой момент подписать свое обязательство и отправить его в блокчейн.

Все это нам уже известно, а теперь изменение. В этот раз транзакции-обязательства Алисы и Боба включают новый выход с одним биткойном (иначе говоря, балансы распределяются в отношении 4-5-1: 4 биткойна для Алисы, 5 для Боба и 1 для нового выхода).

Этот новый выход соответствует HTLC-контракту, и разблокировать его можно тремя способами.

Прежде всего, этот выход (в обязательстве и Алисы, и Боба) разблокирует биткойн, если последующая транзакция включает подпись и значение Боба. Таким образом, неависимо от того, кто подпишет и отправит в сеть транзакцию-обязательство, — Алиса или Боб — разблокировать этот выход может только Боб, указав нужное значение. Однако между двумя обязательствами есть одно небольшое различие: если Боб решит закрыть канал, будет задействована CSV-блокировка и ему придется подождать 1000 блоков. Если же канал закроет Алиса, он получит 1 биткойн немедленно).

Причина, по которой Бобу придется подождать 1000 блоков, такая же, как и раньше: это позволяет Алисе забрать 1 биткойн в том случае, если Боб попытается подписать и отправить в сеть старое состояние канала. Это приводит нас ко второму способу разблокирования нового выхода: Алиса может «украсть» деньги, если укажет (самый новый) секрет Боба. Но если она попытается смошенничать и отправит в сеть устаревшее состояние канала, Боб сможет получить 1 биткойн, воспользовавшись секретом Алисы (ему даже не придется указывать значение).

Наконец, в любом HTLC обе транзакции-обязательства включают обычную CLTV-блокировку (которая в нашем случае возвращает деньги Алисе). Если Боб не предоставит нужное значение в течение оговоренного периода (например, из-за того, что он не получил его от Кэрол), биткойн будет возвращен Алисе.

Что же мы имеем на текущий момент?

У Алисы и Боба есть по транзакции-обязательству. Если Алиса отправит свое обязательство в блокчейн, она немедленно отправит 5 биткойнов Бобу. Она также может подождать 1000 блоков и забрать 4 биткойна. Кроме того, у Боба есть 2 недели на то, чтобы предоставить значение и забрать 1 биткойн из HTLC-выхода (если он не предоставит значение за 2 недели, Алиса сможет вернуть этот биткойн себе).

Боб может в любой момент отправить свое обязательство в блокчейн и немедленно отправить 4 биткойна Алисе, а также он может подождать 1000 блоков и забрать 5 биткойнов (кроме того, как было сказано чуть выше, он может забрать 1 биткойн из HTLC-выхода, предоставив нужное значение).

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

lln1

Фиксация состояния

Итак, теперь Боб гарантированно сможет получить биткойн в обмен на значение (если, конечно, оно у него есть). Для этого ему нужно лишь подписать и отправить в сеть транзакцию-обязательство, которую он получил от Алисы, включить значение в последующую транзакцию и тоже отправить ее в сеть.

Алисе это известно, и она никак не может украсть у Боба его биткойн — даже если она каким-либо образом узнает значение.

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

lln2

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

Теперь вам должна быть понятна реальная мощь сети Lightning Network:

Почти все, что мы обсудили в этой статье, никогда не попадет в блокчейн.

Если Алиса и Боб захотят мирно закрыть канал по обоюдному согласию, они могут просто создать транзакцию, переопределяющую все, что произошло после открывающей транзакции. Иначе говоря, если в нашем примере Алиса хочет закрыть канал, она может создать транзакцию, которая выплачивает 4 биткойна ей и 6 Бобу, и попросить Боба подписать эту транзакцию. У Боба нет причин отказывать Алисе, поэтому он почти наверняка пойдет ей навстречу. После подписания и отправки транзакции канал будет закрыт.

Таким образом, в биткойн-сеть будут транслированы лишь открывающая и закрывающая транзакции, даже если между ними Алиса и Боб совершили миллионы платежей друг другу! Насколько это разгружает блокчейн, представьте сами.

lln3

Аарон ван Вирдум (Aaron van Wirdum)

Источник: bitcoinmagazine.com

https://www.youtube.com/watch?v=s9S6QeYAfuc



Categories: Важное, Инфраструктура, Разработчикам, Сообщество, Теория, Технологии

Tags:

Leave a Reply

68 Комментарий на "Lightning Network: все технические детали"

Notify of
avatar
trackback
«Биткойн — помойная крыса среди валют» - bitruble.ru

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

Анонимно
Гость

«Они подписывают свои транзакции-обязательства и отправляют их друг другу.

Далее Алиса и Боб передают друг другу свои секреты из первого сценария.»

Здесь важно отметить что, после того когда Алиса получила транзакцию-обязательства от Боба, она еще не может считать что имеет 5 биткойнов. Только после получения Бобиного секрета из первого сценария, она может отправить товар Бобу.

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

Anusimon
Гость

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

Анонимно
Гость

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

Анонимно
Гость

тоесть, как только секрет из первой транзы у продавца : и биткоины у продавца и товарт у него? зачем тогда отправлять товар? кто проконтролирует, качество продукта, срок доставки и т.п.?

trackback
«Биткойн — помойная крыса среди валют» – Bit•Новости

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

trackback
CryptoGraffiti: перманентное хранение картинок в блокчейне | Заработок онлайн доступный каждому

[…] TheDAO не было взломано. MtGox Эфириума Lightning Network: все технические детали […]

trackback
Lightning Network: все технические детали | Заработок онлайн доступный каждому

[…] Source link […]

elite
Гость
Lighning Network – LN – система, когда два участника могут заблокировать, например 100 биткойнов каждый, после чего переводить между собой мелкие транзакции бесплатно и когда мелочи наберется на 100 биткойнов – ретранслировать в блокчейн, заплатив, например 100 долларов за ретрансляцию в блокчейн. Конечно же так всё и будет, если участники равноправны. Но если вы работаете с биткойн биржей, или с биткойн-банком система будет работать иначе. Вы заблокируете свои 100 биткойнов. А вот биткойн биржа или биткойн банк со своей стороны биткойны блокировать не будет. Вам придется им доверять и выводить только крупные суммы со стоимость вывода 100 долларов за вывод.… Read more »
Вася
Гость
elite, похоже вы пишите прямо из Ада. Помню смотрел одну юмористическую передачу, где комики-атеисты рассказывали ‘мол’ как на самом деле устроен Ад. Так вот в Аду надо работать, и есть два варианта работы. Либо вкатывать камень на бесконечную гору, либо писать комментарии в новостные сайты. Только прочитал заголовок статьи, и сразу пишешь комментарий, саму статью читать не разрешается. Исправлю ваш первый абзац, дальнейший флуд читать не вижу смысла: Lighning Network – LN – система, когда два участника могут заблокировать(не то чтоб могут заблокировать, а блокируют. Если они хотят открыть платежный канал, оба должны в одной транзакции поставить свои подписи. Если… Read more »
elite
Гость

я вам еще раз медленно объясняю.

Биржа, ничего блокировать в LN не будет, ну разве что 0.001 биткойн.
Пользователь будет блокировать в LN 100 биткойнов.
Пользователь будет переводить бирже мелкие транзакции через LN.
Биржа не будет переводить пользователю через LN
Биржа будет переводить пользователю через блокчейн, с комиссией 100 долларов.

Анонимно
Гость
Еще раз пытаюсь объяснить. Вы находите биржу, которая согласна проводить с клиентом операции через LN. Вы генерируете транзакцю, где написано, что вы и биржа отправляете по 100 битов на обший адрес. вы подписываете транзакцию и отправляете ее бирже. Транзакция не будет действительна до тех пор пока биржа ее не подпишет. Биржа не может изменить ни свое количество отправляемых битов(100) ни ваше, т.к. транзакция уже с одной подписью(измененение транзакции делает вашу подпесь не валидной). Единственное что может биржа, так это не подписывать транзакцию. Тогда вы просто идете в другую биржу, а она теряет клиента. Для биржи говорить, что клиент должен заморозить… Read more »
elite
Гость
Вы находите биржу, которая согласна проводить с клиентом операции через LN. Вы генерируете транзакцю, где написано, что вы и биржа отправляете по 100 битов на обший адрес. Вы не сможете найти такую биржу, так как ни у одной биржи не будет 100 битков умножить на число клиентов для заморозки. Тогда вы просто идете в другую биржу, а она теряет клиента. никто не теряет клиента, так как не существует таких бирж, так как в системе просто нет такого количества биткойнов. Для биржи говорить, что клиент должен заморозить 100 битов а она только 0.01 бита это равносильно что сказать что в этой… Read more »
elite
Гость
ответ дан в моем предыдущим коменте Какой ответ? О том, что биржа ничем не рискует, но имеет доступ к моим биткойнам? Надо отметить, что хотя канал изначально открыт с помощью ваших битов, но как только вы вывели фиат, биты становятся собственностью биржи. В этом вся фишка. Мои биткойны у биржи. Вместо блокчейна, у нас будет куча банков, где мы храним биткойны. На наши биткойны будут открыты каналы от нас до банков и банков до нас. Это и есть централизация. Какое же это улучшение блокчейна? Банк в случайный момент закрывает все каналы пользователей, открытый на биткойны пользователей, и исчезает в неизвестном… Read more »
Вася
Гость
Ну вы, elite, точто с Ада коменты пишите. На ваше восхищение почему биржа, когда платежный канал открыт, не может кинуть пользователя ответ дан в моем предыдущим коменте «Биржа возможно не будет иметь резерв биткойнов…» Прочитайте внимательно, т.к. одно и то-же повторять не вижу смысла. Насчет размера блока и Lighning Network: вне зависимости какой будет размер блока, будь то 1MB или 10MB, или даже 100MB, Lighning Network избавляет от уплаты комиссий (они нужны только при открытии и закрытии канала) и гарантирует мгновенное (Lighning в переводе значит молния) удостоверение на получение биткойнов. «Я показал, что LN помогает очень слабо» Я не знаю… Read more »
Elite
Гость
Если биржа пропадает, то исчезают только ваши биты, остальные пользователи с уже открытыми каналами не пострадают. Для каждого пользователя с каналом пропадают биткойны, а не только мои, ведь каждый пользователь, таким же способом как и я, открывал канал и тратил биткойны. Для открытия и закрытия платежного канала в Lighning Network транзакции должны попасть в блокчейн. Остальные транзакции идут вне блокчейна, то-есть какая бы не была комиссия за блокчейн-транзакцию майнерам, Lighning Network убирает потребность в промежуточных комиссиях. То-есть Lighning Network только улучшает экосистему биткойна. Эта статья называется “Lightning Network: все технические детали” и обсуждение комиссий за блокчей-транзакции не входит в тему… Read more »
Вася
Гость
«у биржи нет 50 биткойнов, чтобы открыть канал для вас» Так же я говорил, что вы переводите 50 битов, и эти-же 50 битов она использует для открытия платежного канала с вами. Если биржа пропадает, то исчезают только ваши биты, остальные пользователи с уже открытыми каналами не пострадают. «Речь идет о комиссии майнерам при размере блока 1 мбайт и спросе 20 тыс в секунду» Для открытия и закрытия платежного канала в Lighning Network транзакции должны попасть в блокчейн. Остальные транзакции идут вне блокчейна, то-есть какая бы не была комиссия за блокчейн-транзакцию майнерам, Lighning Network убирает потребность в промежуточных комиссиях. То-есть Lighning… Read more »
Elite
Гость

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

Речь идет о комиссии майнерам при размере блока 1 мбайт и спросе 20 тыс в секунду

Биржа как пример только. Речь идёт о любом сервисе.

На бирже могут быть отложенные ордера. Это требует постоянно держать средства на бирже

Анонимно
Гость
«Но у обычного фиатного банка тоже ноль собственных биткойнов, означает ли это что мне выгоден банк с нулевой комиссией?» Насколько я понимаю, банк используется для хранения ваших средств. Биткойн биржа же используется для конвертации ваших средств из битков в фиат и обратно. Поэтому отвечаю на ваш вопрос: нет это не означает что вам выгоден банк с нулевой комиссией. Главное отличие с биржей в том что после открытия платежного канала с ней, она может исчезать куда хочет (конечно при условии что ваш фиат тоже не в бирже, так как вы параноик и сразу выводите фиат из нее после продажи битов) ни… Read more »
elite
Гость

Оставшиеся 50 битов вы посылаете бирже уже через открытый платежный канал. Ваш баланс биржи дополняется 50 битами и дальше производятся операции обмена и вывода средств, как только произошла операция

вы занимаетесь каким-то словоблудием.

у биржи нет 50 биткойнов, чтобы открыть канал для вас
вы даете бирже 50 ваши биткойнов, платите 100 баксов за транзакцию, чтобы биржа открыла двухсторонний LN канал
биржа кидает вас, убегает с 50 биткойнами.
Вы тратите 100 баксов за транзакцию, чтобы закрыть канал
спрашивается, а нафига был нужен LN. 50 биткойнов потеряны.

Скажите, LN — это чтобы мозги пудрить?

Анонимно
Гость
«То есть нужен фиат?» То есть, да, как бы, что-бы разменять битки на фиат, потом фиат на битки, и т. д., вам придется оперировать битками и фиатом. По моему британские ученные уже давно выяснили, что для того что-бы сделать салат из помидор и огурцов нужны помидоры и огурцы. Или я как то не правильно вас понял? «Биржа может убежать с фиатом и с 50 битками.» Да, она может убежать, но тогда пропадут только ваши битки. Все остальные участники биржи, с которыми платежный канал уже открыт, битков не потеряют. Тогда как, без Lighning Network биржа кидает сразу всех своих клиентов. Используя… Read more »
elite
Гость
Но даже если у биржи ноль собственных биткойнов, ей и вам выгоден Lighning Network. Но у обычного фиатного банка тоже ноль собственных биткойнов, означает ли это что мне выгоден банк с нулевой комиссией? Я получаю якобы бесплатную услугу по переводу средств, а банк получает бесплатное право исчезать с моими деньгами раз в 10 лет. Чтобы этого избежать, вы отправляете 50 битов бирже, она их зачисляет на вашу учетную запись и их-же использует для открытия платежного канала в вами через Lighning Network. Когда я отправляю 50 биткойнов бирже я плачу комиссию 100 долларов заранее. Я мог бы это сделать поздже в… Read more »
Name
Гость

То есть нужен фиат?

Биржа может убежать с фиатом и с 50 битками.
Это доверие и централизованное решение не лучше банка

Анонимно
Гость
«ни у одной биржи не будет 100 битков умножить на число клиентов для заморозки» Биржа возможно не будет иметь резерв биткойнов для каждого клиента. Но даже если у биржи ноль собственных биткойнов, ей и вам выгоден Lighning Network. Например рассмотрим такой вариант: вы имеете 100 битов и очень хорошо угадываете скачки курса. Вы собираетесь все 100 битов продать, потом купить, потом продать, ну и так далее. Продажу вы делаете когда цена битка подорожала, куплю — когда упала. Фиат в биржу вводится и выводится за доли секунд. Тоже самое вы бы хотели реализовать и с битками. Представим еще что вы параноик… Read more »
Анонимно
Гость

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

Анонимно
Гость

Если оба участника платежей собираются переводить туда-сюда биткойны, им выгодно открыть платежный канал в Lighning Network, т.к. не надо будет платить комиссию за перевод + перевод почти мгновенный (не надо ждать 10 минут для попадания транзакции в блок). Не важно является ли это клиент и биржа, или азартный игрок и игровой сайт. Выигрывают обои, и нагрузка на сеть меньше.

arvicco
Администратор

Ерунда. Сама идея двухсторонних каналов базируется на том, что обе стороны канала блокируют в нем деньги. Если деньги заблокировал только один участник, то и канал сможет работать только в одну сторону. Учите матчасть, тогда ваш FUD, возможно, будет более убедительным.

elite
Гость

Да, канал LN будет работать только в сторону от пользователя к бирже.

От биржи к пользователю канала LN не будет. Будет обычный перевод в блокчейн с уплатой комиссии 100 долларов.

Я где-то утверждал обратное?

Вы оспариваете нечто, что я не утверждал.

Гость

А я вот дальше третьего абзаца не осилил.
Для продвинутых чайников можно объяснить как будет выглядеть кошель на экране мобилы — кнопки ПОСЛАТЬ НАПРЯМУЮ, ПОСЛАТЬ ЧЕРЕЗ ЛАЙТНИНГ, ОТКРЫТЬ/ЗАКРЫТЬ КАНАЛ, ВЕСТИ ДЕПО и т.п. будут, или что надо будет делать Бобику с Алиской по-простому чтобы он ей заплатил за вчерашний (а может и завтрашний) вечер?
Ведь главное то чтобы это было просто, вдаваться в программинг и схемы то средний юзверь не будет.

arvicco
Администратор

Думаю, на уровне UI это будет мало отличаться от того, что есть сейчас. Ведь финальной точкой платежа по-прежнему будет чей-то биткойн-адрес. Как сейчас можно выбрать уровень комиссии для ускорения платежа, так в будущем можно будет выбрать через какой (уже открытый) канал платить. Или платить напрямую через блокчейн с бОльшими комиссиями. Появится наверное новая вкладка для управления платежными каналами (выбор хаба, выбор суммы и времени на которые открывается канал). Хабы будут анонсировать свои сервисы (уровень комиссий, аптайм, репутацию). После того, как канал открыт, можно платить всем мгновенно и с низкой комиссией, вдобавок к прямым блокчейн-платежам.

gpd
Гость

Теперь в моем кошельке будут лежать реальные биткоины. В смысле транзакции, которые позволяют мне закрыть канал. А если алиса поедет в отпуск в тайгу. А боб окажется мошенником? Она просто не умеет забрать свои деньги. Должен быт третий участник , который должен контролировать честность боба в таких ситуациях. Я прчел поверхносно. Надеюсь, кто то ответит — есть ли возможность передать трансакции третьему лицу для контроля боба, не имея доверия к этому лицу?

arvicco
Администратор

Для этого и нужно ограничение по времени в платежных каналах. То есть в худшем случае, что может произойти если один из участников «исчезнет» — монеты зависнут до истечения срока действия канала. Однако, поскольку конкуренция провайдеров платежных каналов будет жесткая, с ненадежным участником просто никто не будет иметь дел в дальнейшем. Никакого третьего лица тут не требуется.

Анонимно
Гость
Спасибо за материал. Отдельные моменты прочитал пару раз. Идея просто супер и не так запутана как дао. С выходом откроются огромные возможности. Получается что сети типу лайтинга это 3-я сторона — крипто-банк который хранит биткойны до востребования и делает мгновенные дешевые переводы внутри своей банковской сети. Такие сети (банки) будут кардинально отличаться от банков которые существуют сейчас: открытая конкуренция, открытый код, никаких лицензий/откатов/дозвылыв/мошеннических схем. Любой сможет открыть крипто-банк. Любой сможет открыть сколько угодно и где угодно счетов. Проблема только одна — 3я сторона. ( Вернулись к тому от чего отталкивались. 🙂 🙂 ) Но первооткрывателям, будущим крупнякам, будет не выгодно… Read more »
arvicco
Администратор

Аналогия довольно точная. Но если разобраться со схемами внимательно, можно увидеть, что такой «крипто-банк» не может «кинуть» клиента. Самое страшное, что может произойти — деньги клиента просто подвиснут до конца срока действия платежного канала. Но потом все равно к нему вернутся.

Анонимно
Гость
Благодарю за ответ. Тогда вообще круто получается. По аналогии сейф с золотом храниться вообще не в банке. А доступ к золоту имеют все участники расчетов по обоюдному согласию, но только не банк. Банк просто будет начислять комиссию за сделки в своей сети, но прибыль он получит только после закрытия сейфа при распределении золота. Если банк разориться он ничего не получит, т.к. сейф не в банке. 🙂 Помогите пожалуйста разобраться. Если сторонняя сеть типу лайтинга по каким либо причинам перестанет работать то платежные канал уже не закрыть. НО участники этого платежного канала (2-я сеть) могут по справедливости создать транзакцию в блокчейне… Read more »
arvicco
Администратор

Все расчеты в канале идут через контракт с мультиподписью — вашей и «банка». По умолчанию, если один из участников исчезает, по истечению срока жизни канала деньги из него возвращаются (к вам и банку, в той пропорции, которая существовала на момент последнего платежа в канале). Никто никого не может кинуть — ни вы, ни банк. Максимум неудобств — замороженные деньги до конца работы канала.

Анонимно
Гость

Информация об открытии/сроке действия/закрытии канала будет храниться в блокчейне биткойна? Биткойн еще будет под это допилен?

arvicco
Администратор

Там и допиливать нечего — обычная мультисиг-транзакция, просто хитрозакрученная и в комбинации с ограниченной по времени транзакцией. Все необходимое для этого в протоколе уже есть, последний кирпичик (CSV) только что одобрен майнерами и скоро вступит в силу. Дело за практической реализацией LN.

wpDiscuz