June 16, 2023

Обзор технологий основных Layer 2-решений

Материал подготовлен каналом @shitcoinresearch

Структура отчета:

На сегодняшний день нет единого термина “Layer 2-решения”. Одни (например, Chainlink) считают, что L2 - это “технология, построенная поверх блокчейна, которая расширяет его пропускную способность”. Другие (например, Ethereum.org) считают, что L2 - не только расширяет пропускную способность блокчейна, но и “наследует безопасность базового блокчейна”. В зависимости от того, какое определение брать за основу - будет зависеть и разнообразие L2-решений. В первом случае (только масштабируемость) - это платежные каналы, сайдчейны, плазма и роллапы. Во втором случае (масштабируемость + безопасность от L1) - это только роллапы. Потенциально L2-решение может быть развернуто на любом блокчейне. Однако, на текущий момент, большинство L2 стремятся решить проблему масштабируемости Ethereum.

Таким образом, Layer 2 - это протокол, который построен поверх основного блокчейна (Layer 1). Суть Layer 2 сводится к тому, чтобы “разгрузить” основную сеть путем обработки транзакций за пределами этой сети.

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

Масштабируемость блокчейна - крайне важная проблема, которая стоит на пути принятия криптовалют (mass-adoption). Так, например, пропускная способность Биткоина составляет всего 7 TPS (транзакций в секунду) по сравнению с 24 000 TPS у Visa:

Помимо этого, в периоды пиковых нагрузок - ограничения в пропускной способности сети прямо сказываются на размере комиссий, уплачиваемых пользователями. Для решения этих проблем существуют (и разрабатываются) различные Layer 2 проекты. Верхнеуровнево, L2 состоит из 2-х составных частей:

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

Существует много различных видов L2-решений, каждое из которых по своему пытается решить проблему масштабируемости. Рассмотрим основные виды Layer 2 решений на предмет анализа их текущего состояния, а также преимуществ и недостатков, которые они в себе несут:

  1. State channels;
  2. Sidechains;
  3. Plasma;
  4. Rollups:
    1. Optimistic Rollups;
    2. ZK Rollups.

1. State channels

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

На базовом уровне вся суть каналов сводится к следующей логике:

  1. Участники открывают P2P-канал путем он-чейн транзакции и депонированием определенной суммы средств в канал. После открытия канала осуществление транзакций выносится на офф-чейн уровень. Канал управляется через multisig - т.е. для обновления состояния канала необходимо общее согласие участников.
  2. Участники проводят между собой транзакции, подписывая их и обновляя состояние канала. При этом, все эти изменения так и остаются на офф-чейн уровне, до момента пока участник(и) не закроют канал.
  3. Участники закрывают канал путем он-чейн транзакции: в блокчейн записывается последнее обновленное состояние канала, в соответствии с которым депонированные в канал средства - распределяются на балансы участников.

Основная проблема State Channels заключается в том, что для обновления состояния канала - необходимо нахождение в сети обоих участников канала, что сложно назвать идеальной масштабируемостью. К тому же это решение в основном предусмотрено для микро-платежей.

Примерами State Channel может служить сеть Lightning Network в сети Bitcoin, либо Raiden Network в сети Ethereum. Ранее я делал подробный обзор сети Lightning Network, ее текущего состояния и актуальных проблем - ссылка на отчет.


2. Sidechains

Сайдчейн представляет собой отдельный блокчейн, который связан с основной сетью посредством двустороннего моста. Сайдчейны могут иметь индивидуальные характеристики блоков, собственный механизм консенсуса (в том числе отличный от базового блокчейна) и свой набор валидаторов.

Базово, сайдчейны работают по традиционной логике моста, работающего на mint/burn-механизме:

  • На базовом блокчейне в смарт-контракт блокируются токены;
  • Сайдчейну передается информация о том, что активы были заблокированы;
  • На сайдчейне минтятся эквивалентное кол-во токенов.

Аналогично и в обратную сторону: токены сжигаются в сайдчейне, после чего осуществляется разблокировка активов в основной сети.

Схематично это выглядит так:

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

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

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

  1. Безопасность: У сайдчейнов - свой собственный уровень безопасности, который никак не связан с безопасностью базового блокчейна. При этом, безопасность сайдчейнов базируется исключительно на экономических стимулах и теории игр, а не на строгой криптографии.
  2. Для создания сайдчейна, по-сути, нужно создавать новую сеть, новый список валидаторов и т.д. Иными словами, нужно с нуля создать сеть и выстроить ее безопасность, что довольно сложно масштабируется.

Примером сайдчейна может служить Polygon PoS.


3. Plasma

В августе 2017 года Виталик Бутерин совместно с Джозефом Пуном (разработчик Lightning Network) опубликовали статью с описанием концепции Plasma - решению по масштабируемости блокчейнов (не только для Ethereum). Plasma представляет древовидную структуру вложенных “дочерних цепочек” внутри “корневой цепочки”:

Деревья Меркла позволяют создавать бесконечное число таких вложенных цепочек для разгрузки основной сети. В каждой цепочке - свой собственный набор валидаторов, которые обрабатывают вынесенные в Plasma транзакции из основной сети. При этом, в отличие от сайдчейнов - Plasma уже криптографически связана с базовым блокчейном. Это значит, что безопасность Plasma гарантируется безопасностью базового блокчейна, однако не полностью, а только частично.

Как работает Plasma с точки зрения архитектуры [Источник]:

Plasma состоит из он-чейн и офф-чейн части. В блокчейне Plasma представлена в виде обычного смарт-контракта. В офф-чейн части Plasma представлена в виде Plasma Client и Plasma Processor.

Plasma Client отвечает за подписание транзакций и обращение к Plasma Smart Contract и Plasma Processor. Plasma Client хранится у пользователей Plasma (тех, кто осуществляет транзакции);

Plasma Processor (оператор) отвечает за создание новых блоков и передает эти блоки в Plasma Smart Contract. Plasma Processor - некий участник сети, который предоставляет собственные мощности для функционирования Plasma.

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

“Выход” из Plasma основан на оптимистическом подходе, который означает, что предусматривается определенное временное окно (как правило 7 дней), в течении которого можно подтвердить, что предложенные транзакции являются невалидными. Если период проверки истекает, и никто не предоставляет доказательства потенциального мошенничества, запрос пользователя на вывод средств из Plasma считается действительным, а значит он получить средства из смарт-контракта Plasma в базовом блокчейне.

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


4. Rollups

Роллапы - также являются решением по масштабируемости блокчейна: вся вычислительная работа выполняется офф-чейн - на Layer 2, в результате чего Layer 1 разгружается. Роллапы позволяют обрабатывать большое кол-во транзакций параллельно. При этом, в отличие от State Channels, Sidechains и Plasma - роллапы полностью наследуют безопасностью основной сети.

Суть роллапов сводится к тому, что совершенные на Layer 2 транзакции по определенному принципу “сжимаются” в пакеты, которые затем отправляются на Layer 1. При этом, на Layer 1 не происходит валидации этих транзакций. Вместо этого, валидация осуществляется в момент, когда пользователь выходит из роллапа.

Схема работы роллапов:

Роллапы бывают 2-х видов: Optimistic Rollups и ZK Rollups.

4.1. Optimistic Rollups

Оптимистичные роллапы считаются “оптимистичными”, поскольку они предполагают, что все офф-чейн транзакции являются валидными. После того, как Optimistic Rollup подает пакет транзакций в Layer 1 - есть временное окно (7-14 дней), в течение которого любой желающий может оспорить результаты транзакции роллапа, вычислив доказательство мошенничества.

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

В случае, если предложенный роллапом пакет транзакций остается неоспоренным (т.е. все транзакции выполнены верно), по истечению заданного периода времени, все транзакции принимаются на Layer 1.

Преимуществом Optimistic Rollups помимо масштабируемости блокчейна является и снижение комиссий для пользователей. Транзакция в Optimistic Rollup может быть в 10-15 раз дешевле, чем транзакция в Layer 1.

Основным ограничением Optimistic Rollups является длительное время вывода средств. Пользователям приходится ждать от одной до двух недель, чтобы вывести свои активы из Optimistic Rollups.

Примеры Optimistic Rollups: Optimism и Arbitrum.

4.2. ZK Rollups

Если оптимистичные роллапы работают по принципу “невиновен, пока не доказали, что виновен”, ZK (Zero Knowledge) роллапы работают по принципу “не доверяй, а проверяй”. Также, как и в оптимистичных роллапах, ZK роллапы “сворачивают” транзакции в один пакет, который передается на Layer 1. Для подтверждения транзакций на L1, ZK роллапы используют доказательства с нулевым разглашением (ZKP - zero knowledge proof).

ZKP - это технология, которая позволяет проверить истинность информации без раскрытия этой информации.

Работает это следующим образом:

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

Шуточный пример, позволяющий понять технологию ZKP:

В примере выше человек "подтвердил" свое совершеннолетие не раскрывая паспортных данных. ZKP работает немного сложнее, но по такому же принципу.

Основные различия между Optimistic Rollups и ZK Rollups по некоторым параметрам:

На сегодняшний день, совокупный TVL роллапов составляет $8,23B, с положительной динамикой:

При этом, растет и размер комиссий, выплаченных роллапами на Ethereum [Источник]:


Каждое из L2-решений обладает своим уровнем безопасности и скорости транзакций. Самым надежным решением - являются ZK роллапы, самым быстрым - сайдчейны:

Layer 2-решения играют важную роль в решении масштабируемости блокчейнов. Они позволяют обрабатыватывать большое кол-во транзакций вне основного блокчейна, снижая нагрузку на Layer 1 и тем самым повышая его пропускную способность. Также L2 способствуют снижению комиссий, что делает их более доступными и эффективными для пользователей и проектов.

Материал подготовлен каналом @shitcoinresearch

Читайте также: