Что такое технология роллапов (Rollups) и как она помогает масштабировать Ethereum?
Главное
- «Роллапы» (Rollups) — основная технология для протоколов второго уровня для Ethereum. Во многих роллап-решениях применяется метод доказательства с нулевым разглашением. Такие технологии объединены в группу под названием ZK-Rollups.
- Использование роллапов позволяет обеспечить высокую приватность транзакций и масштабировать основную сеть Ethereum: множество транзакций объединяется в единый пакет, который подтверждается в блокчейне первого уровня.
- В экосистеме Ethereum cуществует несколько популярных протоколов второго уровня на основе ZK: StarkNet, zkSync, Loopring, Polygon Miden и другие. Существует также отдельная технология Optimistic Rollups, которая используется в L2-платформах Arbitrum One и Optimism.
Как работает доказательство с нулевым подтверждением?
Метод доказательства с нулевым разглашением (Zero-knowledge proof, ZKP) сформулировали ученые Шафи Голдвассер и Сильвио Микали в 1985 году в статье «Сложность знаний интерактивных систем доказательств». Они предложили способ доказательства достоверности сообщения без раскрытия его деталей.
Для этого нужно сгенерировать специальное «подтверждение», с помощью которого проверяющий может удостовериться в правильности исходных данных. Отправителю необходимо выполнить ряд вычислений, которые будут верными, если он обладает необходимыми знаниями. Проверяющий знает значение правильного ответа, что позволяет подтвердить достоверность владения информацией. Таким образом, обе стороны имеют только ограниченные данные о содержании сообщения.
Для демонстрации метода рассмотрим ситуацию, в которой дальтонику, не различающему цвета, демонстрируют два шара. Один из них красный, а другой зеленый, однако человек не видит разницы.
Вам необходимо доказать обратное, не называя цвета шаров. Для этого вы передаете объекты собеседнику, который прячет их за спиной. После этого он достает шар и демонстрирует вам. Далее человек прячет его и повторяет действие. Вам необходимо отвечать на вопрос, поменял ли он шар за спиной. Поскольку вы знаете правильный ответ, то после серии экспериментов докажете свою правоту. Однако вам не придется разглашать дополнительную информацию.
Как доказательство с нулевым разглашением используют в ZK-Rollups?
Метод ZKP позволил создать группу технологий под общим названием ZK-Rollups, на основе которой сегодня работают многие ключевые протоколы второго уровня в экосистеме Ethereum. Виталик Бутерин назвал ZKP важнейшей технологией для масштабирования главной блокчейн-платформы.
В «роллапе» (с английского “rollup” — «сверток») формируются пакеты из множества транзакций, в которых данные каждого перевода сжимаются. Такие «свертки» предоставляют доказательство в основную сеть первого уровня (в данном случае Ethereum), которое позволяет подтверждать достоверность всех транзакций пакета без рассмотрения каждой из них. После проверки пакет включается в один из блоков. Один пакет «роллапа» может содержать тысячи транзакций, однако в блокчейн первого уровня помещается минимальный объем данных.
Работу ZK-Rollups обеспечивают три элемента:
- виртуальная машина L2-протокола, которая группирует транзакции;
- смарт-контракт верификатора, проверяющий пакеты;
- модуль, который отправляет пакеты в блокчейн первого уровня и обновляет состояние (state).
Нода сети второго уровня выполняет базовую проверку поступивших транзакций. После получения определенного количества переводов она объединяет их в пакет и генерирует ZK-доказательство. Пакет верифицирует смарт-контракт, развернутый в сети первого уровня. Он же обеспечивает ввод и вывод средств в L2-блокчейн.
«Роллапы» также включают балансы пользователей в L2-сети, представленные в виде дерева Меркла. Его корень сохраняется в контракте, что позволяет отслеживать изменение состояния сети. В блокчейн первого уровня также передаются значения, подтверждающие каждую транзакцию. Данные включают корень Меркла, который рассчитывается в несколько этапов. Промежуточные значения записываются в блокчейн и подтверждают каждый перевод в пакете.
Какие преимущества у технологии ZK-Rollups?
Изначально доказательство с нулевым разглашением применяли в проектах анонимных криптовалют, однако в последние годы они нашли широкое применения в качестве решений для масштабирования Ethereum.
ZK-Rollups позволяет обрабатывать данные пользователей, не раскрывая о них приватную информацию. В частности, алгоритм может проверить наличие средств, не показывая баланс пользователя. Эти свойства важны для компаний, которым необходимо защитить личные данные клиентов.
Также использование решений на базе ZK-Rollups значительно снижает транзакционные комиссии. Множество переводов объединяют в один пакет, в котором все данные сжимаются — например, вместо адреса используется индекс. Это позволяет сохранить в блокчейне первого уровня меньший объем информации. Затраты распределяются между всеми отправителями, поэтому каждый из пользователей платит меньше.
ZK-Rollups обеспечивают низкие задержки при выводе средств в основную сеть, поскольку смарт-контракт проверяет достоверность данных перед включением пакета в блокчейн.
Какие существуют разновидности ZK-доказательств?
Существует множество реализаций ZK-роллапов, из них наиболее популярные: ZK-SNARKs (и его разновидность Plonky2), ZK-STARKs, zkSync и другие. Каждая из технологий отличается по размеру «доказательства» и вычислительным затратам, которые требуются для проверки.
ZK-SNARK
ZK-SNARK создает подтверждение, которое обладает небольшим размером и легко верифицируется. Для получения доказательства, используя эллиптические кривые. Вычисление их значений требует меньше затрат, чем хеширование, поэтому алгоритм характеризуется меньшей стоимостью. Метод требует уничтожения доказательства сразу после его отправки. Для работы алгоритма узел генерирует открытый и закрытый и ключ, после чего последний уничтожается. Публичный ключ используется для создания еще одной пары ключей. Далее приватный ключ используется для генерации подтверждения, а публичный для его проверки.
ZK-STARK
ZK-STARKs формирует доказательство, которое не предполагает взаимодействия между проверяющим и верификатором. Валидация данных занимает меньше времени, благодаря чему технология легче масштабируется. Алгоритм использует хеширование, что делает его устойчивыми к атаке квантового компьютера.
zkSync
zkSync — это L2-протокол на основе одноименного алгоритма роллапов. Платформа позволяет переводить активы и поддерживает смарт-контракты. Особенностью алгоритма являются низкий лимит газа на транзакцию, который не превышают 500 Gwei. Основным преимуществом zkSync 2.0 является совместимость с Ethereum Virtual Machine.
Какие проекты используют ZK-Rollups и Optimistic Rollups?
Сегодня в экосистеме Ethereum есть несколько популярных решений, использующих ZKP:
- Платформа StarkNet. На базе ее приватной версии под названием StarkEx работают крупные DeFi-протоколы Rhino, Immutable X, dYdX и Sorare.
- Mina Protocol — это легкий блокчейн, использующий технологию ZK-SNARK для создания блоков размером 22 Кб. Платформа позволяет выполнять смарт-контракты и запускать децентрализованные приложения.
- LoopRing — децентрализованный торговый протокол, в котором используется книга ордеров. Реализован в сети Ethereum, для его работы применяются ZK-доказательства.
- Polygon Miden — «роллап» на основе zk-STARKs, работающий с помощью специальной виртуальной машины Miden VM.
Помимо роллапов на основе ZKP также можно выделить группу решений под названием Optimistic Rollups. Различие между ними заключается в способе проверки транзакций: в Optimistic пакеты транзакций считаются валидными, а транзакции проверяют, только если кто-либо ее оспорил.
Доказательства с нулевым разглашением сохраняют данные в основной сети после валидации каждого перевода. Благодаря этому технология обеспечивает сохранение актуального состояния сети. В то же время, в отличие от ZK-Rollups при выводе средств из протокола на базе Optimistic Rollups требуется проверка на мошенничество, которая может занять до двух недель. Указанный период определяет время вывода средств в блокчейн первого уровня. Однако необходимость проверки данных в ZK-Rollups повышает потребление ресурсов и финансовые затраты.
На основе Optimistic Rollups работают два популярных L2-протокола Ethereum — Arbitrum и Optimism.
Название | Используемая технология | Объем заблокированной ликвидности (TVL) |
Polygon | Polygon Miden (ZK-STARK), Polygon Nightfall (Optimistic Rollups), Polygon Zero (Plonky2), Polygon Hermez (ZK-SNARK) | $1,3 млрд |
Arbitrum One | Optimistic Rollups | $1,06 млрд |
Optimism | Optimistic Rollups | $993 млн |
LoopRing | ZK-SNARK | $128 млн |
zkSync | zkSync | $63,76 млн |
dYdX | ZK-STARK (StarkEx) | $372 млн |
Aztec | PLONK (ZK-SNARK) | $11,9 млн |
StarkNet | zk-STARK | $2,86 млн (не считая проекты на StarkEx) |
Что такое валидиум?
Существуют комплексные решения — валидиумы. Это компромиссная технология, сочетающая доказательства, хранящиеся на разных уровнях. Подтверждения отправляются в основной блокчейн, а данные хранятся вне его. Решение снижает комиссии, однако предполагает зависимость от внешнего хранилища. В случае нарушения работы последнего пользователи не потеряют средства, но не смогут совершать транзакции.
Рассылки ForkLog: держите руку на пульсе биткоин-индустрии!