Масштабирование Ethereum — популярный тренд в последние годы. Считается, что Rollups имеют хорошую перспективу в этом направлении. В частности, Виталик Бутерин еще в 2021 году подробно высказал свое мнение по этому поводу.
Отличительным аспектом Optimistic Rollups является то, что свертки, в которые объединены транзакции, считаются правильными до тех пор, пока не будет доказано, что они ложны. В связи с этим существует 7-дневный период, когда транзакции могут быть оспорены и удалены из цепочки. Это также означает, что пользователи не могут сразу вывести активы из сети, которая основана на Optimistic Rollups, а должны ждать как минимум неделю. Некоторые поставщики ликвидности, например, мосты, могут способствовать более быстрому выводу средств. Но это создает угрозу безопасности и не работает для крупных капиталов, поскольку подобные сервисы будут взимать плату за такую услугу, что будет влиять на маржу для китов. zkSync Era не имеет этой проблемы и обеспечивает расчет в часах с целью сократить его до минут.
Существуют два основных вида свертков — Optimistic Rollups и zkRollups.На первой технологии уже работают Optimism и Arbitrum. Поэтому целесообразно сравнивать преимущества и недостатки изучаемого протокола на фоне конкурента.
zkRollups в целом и zkSync Era в частности создают доказательства достоверности изменения состояния сети, которые подтверждают отсутствие мошеннических транзакций. zkSync Era опирается исключительно на математику, в отличие от Optimistic Rollups, которые полагаются на теорию игр и мотивированных участников для обеспечения уверенности в достоверности своих транзакций.
Если подробно разобраться в обеих технологиях, становится понятно, что Optimistic Rollups должны размещать больше данных на Ethereum по сравнению с zkRollup, которые обязаны размещать только доказательства достоверности. Это одна из основных причин, по которой стоимость транзакций обычно дороже в использовании по сравнению с zkRollup.
Проверить это утверждение не сложно: достаточно провести простую транзакцию, например, swap в каждой сети. Для Arbitrum выберем Uniswap как DEX с наибольшим в сети TVL (по данным Defillama).
В сети zkSync сделаем транзакцию на SyncSwap, самой крупной DEX на этом Layer 2.
Транзакции по обмену ETH на USDT были проведены сразу одна за другой, цена газа на Ethereum составила 29-30 gwei. Таким образом, на практике ситуация прямо противоположная заявленной. И это не случайное совпадение: уже неоднократно замечено, что в Arbitrum комиссии ниже, чем в zkSync. Сейчас речь идет об Arbitrum One, основной сети. А есть еще Arbitrum Nova, где комиссии не превышают 4 центов. Справедливости ради стоит сказать, что экосистема Nova очень не развита и, несмотря на низкие комиссии, ее TVL всего $5,1 млн.
Вышеприведенный факт не является попыткой опровергнуть технологические преимущества zkSync. Для этого нужно проводить более серьезный и масштабный эксперимент. Но, поскольку целью этого исследования является как можно более доскональное изучение протокола, нельзя упускать возможность подтвердить (или опровергнуть) теорию на практике.
В защиту zkSync можно сказать, что комиссии этой сети значительно ниже, чем на Ethereum в несколько раз. Кроме того, zkSync Era объявила о дополнительном расширении под названием zkPorter, которое еще больше снизит комиссию.
В Ethereum есть два типа учетных записей: внешние (Externally Owned Accounts, EOA) и аккаунты смарт-контрактов. Первый тип — единственный, который может инициировать транзакции, а второй — единственный, который может реализовать произвольную логику. Учетные записи в zkSync Era могут инициировать такие транзакции, как EOA, но также могут иметь произвольную логику, реализованную в них, например смарт-контракт. Эта функция называется «абстракцией учетной записи».
Благодаря этой концепции учетные записи в zkSync Era могут оплачивать комиссию за транзакцию любым токеном, а не одним. Это также означает, что кошельки могут быть настроены так, чтобы пользователи могли выполнять несколько транзакций и просто подписывать один раз, или добавить двухфакторную аутентификацию без seed-фраз. Следует отметить, что эта функция недоступна не только у Optimistic Rollups, но и для Polygon zkEVM.