Полный анализ вне блокчейна: от состояния канала до Сеть Lighting

Глубина анализа расширения вне блокчейна

1. Необходимость расширения

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

Давайте сначала в общих чертах определим децентрализацию, безопасность и масштабируемость блокчейна:

  • Децентрализация: любой может стать узлом и участвовать в производстве и верификации в системе блокчейна. Чем больше узлов, тем выше степень децентрализации, что обеспечивает защиту сети от контроля небольшой группы крупных централизованных участников.
  • Безопасность: чем выше затраты на получение контроля над блокчейн-системой, тем выше безопасность, и тем более сеть может противостоять атакам со стороны значительной доли участников.
  • Масштабируемость: способность блокчейна обрабатывать большое количество транзакций.

Первый значительный хард-форк сети Биткойн возник из-за проблемы масштабирования. С увеличением числа пользователей и объемов транзакций в сети Биткойн, ограничение в 1 МБ на блок стало приводить к проблемам с перегрузкой; начиная с 2015 года, в сообществе Биткойн возникли разногласия по вопросу масштабирования, одна сторона, представленная Bitcoin ABC, поддерживала расширение блока, в то время как другая сторона, представленная Bitcoin Core, выступала за использование решения Segwit для оптимизации структуры основной цепи. 1 августа 2017 года клиентская система Bitcoin ABC, разработанная до 8 МБ, начала функционировать, что привело к первому значительному хард-форку в истории Биткойн, а также к появлению новой криптовалюты BCH.

Точно так же сеть Эфириум также выбрала пожертвовать частью своей масштабируемости, чтобы обеспечить безопасность и децентрализацию сети; хотя сеть Эфириум не ограничивает объем транзакций, как это делает сеть Биткойн за счет ограничения размера блока, она косвенно превращается в установление предела на топливные сборы, которые может вместить один блок, но цель остается той же — достичь Trustless Consensus и обеспечить широкое распределение узлов (. Как отмена, так и повышение лимита приведут к исключению многих меньших узлов, у которых недостаточно пропускной способности, хранилища и вычислительной мощности ).

С 2017 года, начиная с CryptoKitties, через лето DeFi и далее с ростом таких приложений, как GameFi и NFT, рынок испытывает растущий спрос на пропускную способность, но даже у Тьюринг-полного Эфириума в секунду может обрабатываться только 15~45 транзакций ( TPS ), что приводит к увеличению стоимости транзакций, увеличению времени расчета, и большинству Dapps становится трудно покрывать операционные расходы. Вся сеть для пользователей также становится медленной и дорогой, и проблема масштабируемости блокчейна требует решения. Идеальное решение для масштабируемости заключается в том, чтобы повысить скорость транзакций блокчейн-сети ( более короткое время окончательной обработки ) и пропускную способность транзакций ( более высокий TPS ) без ущерба для децентрализации и безопасности.

2. Категории решений по масштабированию

Мы классифицируем схемы расширения на две основные категории: расширение на блокчейне и вне блокчейна, основываясь на стандарте "изменение уровня основной сети".

2.1 Масштабирование в блокчейне

Основная концепция: решение, достигающее эффекта масштабирования за счет изменения уровня протокола основной сети, в настоящее время основное решение - это шардирование.

Существует несколько решений для расширения в блокчейне, в этой статье мы не будем их подробно обсуждать, ниже кратко перечислены два решения:

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

Изменение кода протокола основной сети может привести к непредсказуемым негативным последствиям, так как любые незначительные уязвимости в безопасности на нижнем уровне могут серьезно угрожать безопасности всей сети, что может привести к необходимости форка или прерывистой модернизации. Например, инцидент с инфляционной уязвимостью Zcash в 2018 году: код Zcash основан на модифицированном коде версии Bitcoin 0.11.2, и в 2018 году один инженер обнаружил высокоопасную уязвимость в его исходном коде, а именно, токены могли быть выпущены в неограниченном количестве. Команда потратила 8 месяцев на секретное исправление, и после исправления уязвимости этот инцидент был обнародован.

2.2 вне блокчейна расширение

Основная концепция: решение по масштабированию, не изменяющее существующий протокол первого уровня.

вне блокчейна расширения можно дополнительно разделить на Layer2 и другие схемы:

! Подробный исследовательский отчет из 10 000 слов: всесторонний анализ расширения вне сети

3. Решение для расширения вне блокчейна

3.1 Государственные каналы

3.1.1 Обзор

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

Статус-канал — это простой P2P-протокол, подходящий для "приложений на основе раундов", например, для шахматной игры на двоих. Каждый канал управляется многофункциональным смарт-контрактом, работающим в основной сети, который контролирует активы, внесенные в канал, проверяет обновления статуса и посредничает в спорах между участниками ( на основе доказательства мошенничества с подписями и временными метками ). После развертывания контракта в блокчейн-сети участники вносят средства и блокируют их, после того как обе стороны подписывают и подтверждают, канал официально открывается. Канал позволяет участникам проводить неограниченное количество бесплатных операций вне блокчейна (, пока их чистая стоимость перевода не превышает общую сумму внесенных токенов ). Участники поочередно отправляют обновления статуса друг другу, ожидая подтверждения подписи от другой стороны. Как только другая сторона подтверждает подпись, это обновление статуса считается завершенным. Обычно согласованные обновления статуса не загружаются в основную сеть; они будут зависеть от подтверждения основной сети только в случае спора или закрытия канала. Когда требуется закрыть канал, любой участник может подать запрос на транзакцию в основной сети, если запрос на выход получает единогласное одобрение подписей, транзакция немедленно выполняется в цепочке, то есть смарт-контракт распределяет оставшиеся заблокированные средства в соответствии с балансом каждого участника в конечном состоянии канала; если другие участники не одобрили подпись, все должны дождаться окончания "периода оспаривания", прежде чем получат оставшиеся средства.

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

3.1.2 Хронология

  • 2015/02, Джозеф Пун и Таддеус Дрийя опубликовали черновик белой книги о сети Lightning.
  • В ноябре 2015 года Джефф Коулман впервые систематически обобщил концепцию State Channel и предложил, что Payment Channel для биткойнов является подкатегорией концепции State Channel.
  • 2016/01, Joseph Poon и Thaddeus Dryja официально опубликовали белую книгу «The Bitcoin Lightning Network: Scalable Off-Chain Instant Payments», в которой предложили решение по масштабированию сети Биткойн — Payment Channel(, которое предназначено только для обработки платежей по переводу в сети Биткойн.
  • В ноябре 2017 года была предложена первая спецификация дизайна State Channel на основе фреймворка Payment Channel под названием Sprites.
  • 2018/06, Counterfactual представил очень детальный дизайн Обобщенных Государственных Каналов, это первый полностью связанный с состоянием каналов дизайн.
  • В октябре 2018 года в статье «Обобщенные сети государственных каналов» были предложены понятия «Сети государственных каналов» и «Виртуальные каналы».
  • 2019/02, концепция каналов состояния была расширена до N-Party Channels, Nitro стал первым протоколом, основанным на этой идее.
  • 2019/10, Pisa для решения проблемы постоянного онлайн-присутствия всех участников расширила концепцию Watchtowers.
  • 2020/03, Hydra предложила Быстрые Изоморфные Каналы.

)# 3.1.3 Технический принцип

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

! [Подробный исследовательский отчет из 10 000 слов: всесторонний анализ расширения вне сети]###https://img-cdn.gateio.im/webp-social/moments-087d35594a04d33375b8199b93eb355e.webp(

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

  • Первый шаг, Алиса и Боб взаимодействуют, переводя средства со своих личных EOA на адрес контракта ), 1,2(, эти средства блокируются в контракте и возвращаются пользователю только после закрытия канала; после подписания подтверждения обеими сторонами, статус-канал между ними официально открывается.
  • Второй шаг, Алиса и Боб могут теоретически проводить неограниченное количество транзакций вне блокчейна через этот канал ) синяя пунктирная линия (, участники общаются друг с другом с помощью зашифрованных подписанных сообщений ), а не с сетью блокчейна (. Оба пользователя должны подписывать каждую транзакцию, чтобы предотвратить мошенничество с двойными расходами. С помощью этих сообщений они предлагают обновления состояния своих аккаунтов и принимают предложенные обновления состояния друг друга.
  • На третьем шаге, если Алиса хочет закрыть канал и завершить транзакцию с Бобом, Алисе необходимо предоставить контракту окончательное состояние своего счета ) взаимодействие 3(. Если Боб подпишет и одобрит, контракт вернет заблокированные средства соответствующему пользователю согласно окончательному состоянию ) взаимодействие 4,5(. Если Боб не ответит подписанием, контракт вернет заблокированные средства соответствующему пользователю по истечении периода оспаривания.

! [Подробный исследовательский отчет из 10 000 слов: всесторонний анализ масштабирования вне сети])https://img-cdn.gateio.im/webp-social/moments-ead28de03be9fc22dcfe3f679ee36bc5.webp(

Рисунок 3 показывает рабочий процесс канала состояния в пессимистичном случае: сначала два участника вносят средства ) взаимодействие 1, 2(, затем начинают обмениваться обновлениями состояния ) синяя пунктирная линия (. Предположим, в какой-то момент Боб не отвечает на обновление состояния, отправленное Элис ) взаимодействие 3(, в этот момент Элис может инициировать вызов, подав в контракт свое последнее действительное состояние ) взаимодействие 4(, это действительное состояние также содержит подпись Боба, ранее полученную, тем самым доказывая, что последняя транзакция была одобрена Бобом, и последнее состояние было подтверждено Бобом. Затем контракт позволяет Бобу в течение определенного времени ответить, подав следующее состояние в контракт; если Боб отвечает, то оба могут продолжать обмениваться транзакциями в канале состояния; если Боб не отвечает в этот период времени, контракт автоматически закрывает канал состояния и возвращает средства Элис ) взаимодействие 5(.

! [Подробный исследовательский отчет на 10 000 слов: всесторонний анализ масштабирования вне сети])https://img-cdn.gateio.im/webp-social/moments-ad088ac016d75b1ae0b0eda699e74709.webp(

)# 3.1.4 Плюсы и минусы

Преимущества:

  • Мгновенность: вне блокчейна交易 может быть подтверждена немедленно, без необходимости ожидания подтверждения блока
  • Высокая пропускная способность: требуется взаимодействие с основной сетью только при открытии и закрытии канала, что значительно увеличивает пропускную способность.
  • Низкие расходы: вне блокчейна сделки не требуют оплаты комиссий майнерам, только при открытии и закрытии канала необходимо заплатить небольшую сумму.
  • Конфиденциальность: содержание вне блокчейна не будет записываться в блокчейн, только окончательное состояние будет отправлено в основную сеть.

Недостатки:

  • Сложность: реализация и использование каналов состояния довольно сложны.
  • Ликвидность блокировки: требуется заранее заблокировать определенное количество средств
  • Онлайн требования: участники должны оставаться онлайн для ответа на актуальное состояние
  • Ограниченная область применения: в основном подходит для сценариев частого взаимодействия обеих сторон

3.1.5 Приложение

Биткойн-канал молнии:

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

Посмотреть Оригинал
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Награда
  • 5
  • Поделиться
комментарий
0/400
SignatureAnxietyvip
· 07-10 17:02
Каждому по одному вне блокчейна. Это интересно?
Посмотреть ОригиналОтветить0
ReverseFOMOguyvip
· 07-09 23:05
Треугольная проблема не так-то просто решить, рано или поздно придется пойти на компромисс с расширением.
Посмотреть ОригиналОтветить0
GasFeeDodgervip
· 07-08 08:47
Снова обсуждают треугольную проблему. Что за болезни?
Посмотреть ОригиналОтветить0
EntryPositionAnalystvip
· 07-08 08:43
Оставь это, зачем еще бороться? Нечестивая Троица, ты понимаешь?
Посмотреть ОригиналОтветить0
ChainSauceMastervip
· 07-08 08:42
Ты говорил полдня, кто тебя поймет?
Посмотреть ОригиналОтветить0
  • Закрепить