Полный анализ решений по расширению вне блокчейна: развитие State Channels до Сети Lighting 

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

Автор: Элейн Сюй, Хетти Цзян, Джун Ван, Уалон Лин, Ийлю Лин

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Изменение кода протокола основной сети может привести к непредсказуемым негативным последствиям, поскольку любое незначительное уязвимость безопасности на уровне основного кода серьезно угрожает безопасности всей сети; сеть может быть вынуждена совершить форк или прервать работу для исправления обновления. Например, инцидент с инфляционной уязвимостью 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/11, Джефф Коулман впервые систематически обобщил концепцию 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 года в статье Generalised State Channel Networks была предложена концепция State Channel Networks и Virtual Channels.
  • 2019/02, концепция каналов состояния расширилась до N-Party Channels, Nitro является первым протоколом, основанным на этой идее.
  • 2019/10, Pisa расширила концепцию Watchtowers, чтобы решить проблему постоянного онлайн-присутствия всех участников.
  • 2020/03, Hydra предложила Быстрые Изоморфные Каналы.

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

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

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

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

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

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

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

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

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

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

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

  • Мгновенное подтверждение транзакции
  • Высокая пропускная способность
  • Низкие комиссии
  • Высокая конфиденциальность

Недостатки:

  • Необходимо заблокировать средства
  • Пользователям необходимо часто выходить в сеть
  • Увеличение сложности

3.1.5 Приложение

Биткойн сеть молний

Обзор:

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

Посмотреть Оригинал
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.
  • Награда
  • 3
  • Поделиться
комментарий
0/400
StableBoivip
· 13ч назад
Майнинг всегда тормозит. Когда же он станет быстрее?
Посмотреть ОригиналОтветить0
OneBlockAtATimevip
· 13ч назад
Так сложно понять, кто объяснит?
Посмотреть ОригиналОтветить0
gaslight_gasfeezvip
· 14ч назад
Когда этот вопрос Блокчейн будет действительно решен?
Посмотреть ОригиналОтветить0
  • Закрепить