Роллапы: новая технология для расширения масштабируемости 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 году в статье « Сложность знаний интерактивных систем доказательств ». Они предложили способ доказательства достоверности сообщения без раскрытия его деталей.
Что такое доказательство с нулевым разглашением (zero-knowledge proof)?
Для этого нужно создать специальное «подтверждение», чтобы проверить правильность данных. Отправитель должен выполнить вычисления, которые будут верны, если он знает информацию. Проверяющий знает правильный ответ, что подтверждает достоверность информации. Обе стороны имеют ограниченные данные о сообщении.
Для демонстрации метода рассмотрим ситуацию, где дальтонику демонстрируют два шара, но он не видит разницы. Доказывайте обратное, не называя цвета. Передайте объекты собеседнику, который прячет их за спиной. Отвечайте на вопрос, поменял ли он шар за спиной. Доказывайте свою правоту, не разглашая дополнительную информацию.
Как доказательство с нулевым разглашением используют в ZK-Rollups?
Метод ZKP создал группу технологий ZK-Rollups, на основе которой работают протоколы второго уровня в Ethereum. Виталик Бутерин назвал ZKP важнейшей технологией для масштабирования главной блокчейн-платформы.
Роллапы (с английского “rollup” — «сверток») формируются пакеты из множества транзакций, в которых данные каждого перевода сжимаются. Такие «свертки» предоставляют доказательство в основную сеть первого уровня (в данном случае Ethereum), которое позволяет подтверждать достоверность всех транзакций пакета без рассмотрения каждой из них. После проверки пакет включается в один из блоков. Один пакет «роллапа» может содержать тысячи транзакций, однако в блокчейн первого уровня помещается минимальный объем данных.
Работу ZK-Rollups обеспечивают три элемента:
- виртуальная машина L2-протокола, которая группирует транзакции;
- смарт-контракт верификатора, проверяющий пакеты;
- модуль, который отправляет пакеты в блокчейн первого уровня и обновляет состояние (state).
Нода сети второго уровня выполняет базовую проверку поступивших транзакций. После получения определенного количества переводов она объединяет их в пакет и генерирует ZK-доказательство. Пакет верифицирует смарт-контракт, развернутый в сети первого уровня. Он же обеспечивает ввод и вывод средств в L2-блокчейн.
Схема выполнения транзакций в протоколах типа ZK-Rollup. Данные: Cryptoit, Messari, Polygon
Роллапы также включают балансы пользователей в L2-сети, представленные в виде дерева Меркла . Его корень сохраняется в контракте, что позволяет отслеживать изменение состояния сети. В блокчейн первого уровня также передаются значения, подтверждающие каждую транзакцию. Данные включают корень Меркла, который рассчитывается в несколько этапов. Промежуточные значения записываются в блокчейн и подтверждают каждый перевод в пакете.
- Преимущества технологии ZK-Rollups:
-
Изначально доказательство с нулевым разглашением применяли в проектах анонимных криптовалют, однако в последние годы они нашли широкое применения в качестве решений для масштабирования Ethereum.
-
ZK-Rollups позволяет обрабатывать данные пользователей, не раскрывая о них приватную информацию. В частности, алгоритм может проверить наличие средств, не показывая баланс пользователя. Эти свойства важны для компаний, которым необходимо защитить личные данные клиентов.
-
Также использование решений на базе ZK-Rollups значительно снижает транзакционные комиссии. Множество переводов объединяют в один пакет, в котором все данные сжимаются — например, вместо адреса используется индекс. Это позволяет сохранить в блокчейне первого уровня меньший объем информации. Затраты распределяются между всеми отправителями, поэтому каждый из пользователей платит меньше.
ZK-Rollups обеспечивают низкие задержки при выводе средств в основную сеть, поскольку смарт-контракт проверяет достоверность данных перед включением пакета в блокчейн.
- Какие существуют разновидности ZK-доказательств?
- Существует множество реализаций ZK-роллапов , из них наиболее популярные: ZK-SNARKs (и его разновидность Plonky2 ), ZK-STARKs , zkSync и другие. Каждая из технологий отличается по размеру «доказательства» и вычислительным затратам, которые требуются для проверки.
ZK-SNARK создает подтверждение, которое обладает небольшим размером и легко верифицируется. Для получения доказательства, используя эллиптические кривые. Вычисление их значений требует меньше затрат, чем хеширование, поэтому алгоритм характеризуется меньшей стоимостью. Метод требует уничтожения доказательства сразу после его отправки.
- Для работы алгоритма узел генерирует открытый и закрытый и ключ, после чего последний уничтожается.
- Публичный ключ используется для создания еще одной пары ключей.
- Далее приватный ключ используется для генерации подтверждения, а публичный для его проверки.
ZK-STARKs создает доказательство , которое не требует взаимодействия между проверяющим и верификатором . Валидация данных занимает меньше времени, поэтому технология легче масштабируется . Алгоритм использует хеширование , что делает его устойчивым к атаке квантового компьютера .
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 режиме транзакции проверяют, только если кто-либо ее оспорил.
Доказательства с нулевым разглашением сохраняют данные в основной сети после валидации каждого перевода. Это обеспечивает актуальное состояние сети. Однако при выводе средств из протокола на базе Optimistic 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 |