Что такое валидиум (Validium)?

Что такое валидиум (Validium)?

Валидиум (Validium) — это решение масштабирования Ethereum, обеспечивающее целостность транзакций с использованием технологии накопительных пакетов с нулевым разглашением (zk-Rollup), но без сохранения данных транзакций в основной сети. Не смотря на то, что доступность данных (DA) в валидиумах вынесена за пределы основной сети и это вредит децентрализации, большим плюсом таких решений является значительно улучшенная масштабируемость.

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

В зависимости от используемой архитектуры, валидиумы могут быть, как решениями уровня 2 (Layer 2) и масштабировать сеть Ethereum напрямую, так и решениями уровня 3 (Layer 3), развернутыми поверх накопительных пакетов ZK, таких, как zkSynс Era, Polygon zkEVM, Linea zkEVM и т.д.

Примеры разной архитектуры использования валидиумов.
Примеры разной архитектуры использования валидиумов.

Как работают валидиумы?

Средства, принадлежащие пользователям валидума, контролируются смарт-контрактом развернутым в основной сети Ethereum. Как и накопительные пакеты zk-Rollup, валидиумы позволяют практически моментальное снятие средств. Как только подтверждение запроса на вывод средств будет проверено в основной сети, пользователи смогут вывести средства, предоставив доказательства, в виде корня Меркла. Корень Меркла подтверждает включение пользовательской транзакции вывода средств в проверенный пакет транзакций, позволяя ончейн-контракту обрабатывать вывод средств.

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

  • Контракт верификатора. Контракт верификатора проверяет достоверность доказательств, представленных оператором валидума при обновлении состояния. Сюда входят доказательства достоверности, подтверждающие валидность транзакций вне основной сети, и доказательства доступности данных (DA), подтверждающие, что данные существуют.
  • Основной контракт. Основной контракт хранит обязательства (корни Меркла), представленные производителями блоков, и обновляет состояние валидума после проверки доказательства достоверности в основной сети. Этот контракт также обрабатывает депозиты и снятие средств из валидума.

Безопасность валидиумов

Как и другие решения масштабирования Ethereum, валидиумы полагаются на безопасность и урегулирование основной сети. Ethereum выступает основным расчетным слоем, который гарантирует достоверность переходов между состояниями. Транзакции, выполненные в валидиуме не могут быть полностью подтверждены до тех пор, пока Ethereum не проверит их достоверность. После того, как транзакции зафиксированы в основной сети, они не могут быть изменены или отменены в валидиуме. Если контракт верификатора считает доказательство недействительным, любые транзакции отклоняются. Это означает, что операторы должны удовлетворить условия достоверности, установленные протоколом Ethereum, прежде чем обновлять состояние валидиума.

Доступность данных в валидиуме

Данные о транзакциях в валидиумах не отправляются в Ethereum, а применяют свои решения. Благодаря малому объему передаваемых данных в основную сеть, валидиуму не ограничиваются пропускной способностью Ethereum и могут достигать 9000 транзакций в секунду (TPS). Кроме того, такое решение позволяет значительно комиссии для пользователей.

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

Преимущества и недостатки

Как и у любого другого решения, валидиумы имеют как положительные стороны, так и отрицательные. Рассмотрим их подробнее:

ПреимуществаНедостатки
Доказательства достоверности ZK обеспечивают целостность транзакций вне основной сети и не позволяют операторам фиксировать недействительные обновления состояния.Для создания доказательств достоверности требуется специальное оборудование, что увеличивает риск централизации.
Быстрый вывод средств из валидиума обратно в основную сеть Ethereum.Ограниченная поддержка общих смарт-контрактов. Для разработки требуются специализированные языки программирования.
Неуязвим к определенным видам атак, с которыми могут сталкиваться другие решения.Для создания доказательств ZK необходима высокая вычислительная мощность, что нерентабельно для приложений с низкой пропускной способностью.
Низкие комиссии за газ для пользователей, благодаря тому, что не требуется публикация данных в основной сети.Более медленное время завершенности транзакций (10–30 минут для создания доказательства), но более быстрое достижение полной завершенности.
Подходит для торговли или блокчейн-игр, в которых приоритет отдается конфиденциальности и масштабируемости транзакций.Пользователям можно запретить выводить средства, поскольку для создания доказательств требуется владение корнем Меркла, чтобы данные вне основной сети были доступны в любое время.
Обеспечивает более высокий уровень пропускной способности и увеличивает масштабируемость.Модель безопасности опирается на предположения о доверии и криптоэкономические стимулы, в отличие от накопительных пакетов ZK, которые полагаются исключительно на механизмы криптографической безопасности.

Существующие примеры Валидиумов

На данный момент, полностью рабочих решений валидиумов на рынке просто не существует, т.к. для их запуска в основной сети необходимо решить множество проблем связанных с безопасностью. Тем не менее, разработка таких решений идет постоянно и можно выделить некоторые из них:

  • Avail — модульный блокчейн от разработчиков Polygon. Использует технологию накопительных пакетов с нулевым разглашением (zk-Rollup) для отправки доказательств в основную сеть Ethereum, но для хранения данных о транзакциях использует Комитет по доступности данных (DAC).
  • StarEx — решения масштабирования Layer 2 от компании StarkWare, разработчика StarkNet. Использует доказательства достоверности для публикации в Ethereum и может работать, как в режиме накопительного пакета ZK, так и в режиме валидиума.
  • zkPorter — протокол масштабирования Layer 2 от компании Matter Labs, разработчика zkSync. Обеспечивает доступность данных с помощью гибридного механизма, сочетающего в себе накопительные пакеты ZK и сегментирование.