Роллап — это сеть layer 2, которая исполняет транзакции вне Ethereum, объединяет их и публикует данные обратно в Ethereum. В статье объясняется, как это работает, чем отличаются оптимистичные и zero-knowledge роллапы и почему в каждую комиссию роллапа входит плата за Ethereum.
Общую картину уровней смотрите в статье layer 1, layer 2 и layer 3.
Как роллап объединяет транзакции
Когда вы отправляете транзакцию в роллапе вроде Base, она не идет напрямую в Ethereum. Она попадает оператору роллапа, который исполняет ее и обновляет собственное состояние роллапа, например балансы. Через несколько секунд множество таких транзакций сжимается в пакет (batch). Затем пакет публикуется в Ethereum одной транзакцией.
Слово «roll up» («свернуть») описывает это: множество транзакций сворачивается в одну. Стоимость транзакции в Ethereum делят все участники пакета, и это главная причина, по которой комиссии ниже, чем в самом Ethereum.
Секвенсор
Секвенсор (sequencer) — это сервер, который принимает транзакции в роллапе, упорядочивает их, исполняет и создает блоки L2. Он также дает пользователям быстрые подтверждения, часто намного быстрее секунды, прежде чем что-либо дойдет до Ethereum.
Большинство крупных роллапов сегодня используют один секвенсор, которым управляет команда, стоящая за сетью. Это просто и быстро. Но это влечет и компромиссы, которые мы описываем нейтрально:
- Власть над порядком. Секвенсор выбирает порядок транзакций, поэтому теоретически он мог бы задерживать или переупорядочивать их.
- Простой. Если секвенсор останавливается, обычное использование роллапа останавливается. У роллапов есть запасной вариант: пользователи могут отправлять транзакции через контракт в Ethereum, хотя это медленнее и дороже.
- Не может сам украсть средства. Секвенсор не может создать допустимый вывод для денег, которых у него нет, потому что доказательства или проверки в Ethereum это отклонят.
Команды по всей отрасли говорят о постепенной децентрализации секвенсоров. Текущий статус различается по сетям, поэтому смотрите документацию каждого проекта.
Публикация данных в Ethereum: calldata и блобы
Роллап должен публиковать свои данные в Ethereum, чтобы любой мог проверить сеть. Исторически он делал это в calldata — поле обычной транзакции Ethereum. Calldata хранится постоянно и конкурирует со всей остальной активностью Ethereum, поэтому было дорого.
В 2024 году Ethereum добавил блобы (blobs) через EIP-4844. Блоб — это большой фрагмент данных, который узлы Ethereum хранят короткое время, а не вечно, и у него свой рынок комиссий, отдельный от обычного газа. Для роллапов это намного дешевле, и это снизило типичную стоимость транзакций L2. Спецификацию можно прочитать на eips.ethereum.org.
Оптимистичные роллапы
Оптимистичный роллап (optimistic rollup) считает опубликованные пакеты верными, пока кто-то не докажет обратное. Это и есть оптимизм в названии.
- После публикации пакета есть окно оспаривания (challenge window). В течение него любой, кто заметит недопустимый результат, может отправить в Ethereum доказательство мошенничества (fraud proof).
- Если доказательство верно, неправильный результат отбрасывается.
- Если никто не оспаривает, результат становится окончательным в Ethereum после закрытия окна.
Окно оспаривания длится около 7 дней для вывода в Ethereum через официальный мост. Повседневное использование роллапа не задерживается. Ждать приходится только при перемещении средств обратно в L1 через канонический мост. Быстрые сторонние мосты могут ускорить это за плату, и как именно, объясняет статья мосты и их риски.
Три сети на ChainMonitor — оптимистичные роллапы: Arbitrum One, Base и OP Mainnet. Base и OP Mainnet используют OP Stack. Arbitrum использует стек Nitro. См. руководства по Arbitrum, Base и Optimism.
Zero-knowledge роллапы
zk-роллап (zero-knowledge rollup) не полагается на окно оспаривания. Вместо этого каждый пакет сопровождается доказательством корректности (validity proof) — математическим доказательством того, что новое состояние следует из старого по правилам. Ethereum проверяет доказательство смарт-контрактом. Если оно верно, пакет принимается.
Преимущества — более быстрая финальность в L1, потому что не нужен долгий период ожидания, и сильная гарантия того, что недопустимое состояние принять нельзя. Недостатки — создание доказательств требует тяжелых вычислений, а саму технологию сложнее создавать, особенно при поддержке всех возможностей Ethereum. Эта область быстро развивается, zk-роллапов существует несколько. Ни одна из семи сетей на ChainMonitor не является zk-роллапом.
| Характеристика | Оптимистичный | ZK |
|---|---|---|
| Основное допущение | Верно, если не оспорено | Доказано как верное |
| Как ловят ошибки | Доказательство мошенничества | Обязательно доказательство корректности |
| Вывод в L1 | Около 7 дней (канонический мост) | Быстрее, после проверки доказательства |
| Вычислительная нагрузка | Ниже | Выше из-за доказательств |
| На ChainMonitor | Arbitrum, Base, OP Mainnet | Нет |
Плата за данные L1 в каждой комиссии L2
Комиссия за транзакцию в L2 состоит из двух частей:
- Плата за исполнение в L2. Оплачивает выполнение вашей транзакции в роллапе. Обычно она крошечная.
- Плата за данные L1. Оплачивает вашу долю публикации данных в Ethereum. Часто это большая часть комиссии.
Плата за данные L1 меняется, когда меняется стоимость данных в Ethereum, поэтому общая комиссия в L2 может двигаться, даже когда сам L2 спокоен. В трекере газа цифры для L2 включают эту плату за данные L1, поэтому вы видите реальную стоимость. Чтобы разобраться глубже, прочитайте газ и комиссии.
Что это значит для вас
- В повседневном использовании оптимистичные и zk-роллапы ощущаются похоже: быстро и дешево.
- Если вы планируете переместить средства обратно в Ethereum, проверьте, сколько это займет. Для оптимистичных закладывайте около 7 дней или воспользуйтесь мостом и прочитайте о его рисках.
- Ваши средства хранятся контрактами в Ethereum, но у роллапа все равно есть свой код, свой секвенсор и свои правила обновления. Это отдельные риски.
Часто задаваемые вопросы
Что такое роллап в криптовалюте?
Роллап — это сеть layer 2, которая обрабатывает транзакции вне Ethereum, объединяет их в пакеты и публикует данные в Ethereum, чтобы унаследовать его безопасность.
Почему вывод из Arbitrum, Base или Optimism занимает 7 дней?
Это оптимистичные роллапы. После запроса вывода через официальный мост есть окно оспаривания около 7 дней, в течение которого любой может доказать, что вывод недопустим. Средства освобождаются после окончания окна.
В чем разница между оптимистичными и zk-роллапами?
Оптимистичные роллапы считают результаты верными и допускают их оспаривание в течение некоторого времени. ZK-роллапы прикрепляют к каждому пакету математическое доказательство корректности, поэтому ожидание оспаривания не нужно.
Что такое секвенсор?
Секвенсор — это сервер, который упорядочивает и исполняет транзакции в роллапе и дает быстрые подтверждения. Большинство крупных роллапов используют один секвенсор, которым управляет команда проекта: это быстро, но является точкой централизации.
Что такое блобы в Ethereum?
Блобы — это дешевые временные вложения данных, введенные EIP-4844. Роллапы используют их, чтобы публиковать свои данные в Ethereum дешевле, чем в calldata.