Фьючерсы
Доступ к сотням фьючерсов
TradFi
Золото
Одна платформа мировых активов
Опционы
Hot
Торги опционами Vanilla в европейском стиле
Единый счет
Увеличьте эффективность вашего капитала
Демо-торговля
Начало фьючерсов
Подготовьтесь к торговле фьючерсами
Фьючерсные события
Получайте награды в событиях
Демо-торговля
Используйте виртуальные средства для торговли без риска
Запуск
CandyDrop
Собирайте конфеты, чтобы заработать аирдропы
Launchpool
Быстрый стейкинг, заработайте потенциальные новые токены
HODLer Airdrop
Удерживайте GT и получайте огромные аирдропы бесплатно
Launchpad
Будьте готовы к следующему крупному токен-проекту
Alpha Points
Торгуйте и получайте аирдропы
Фьючерсные баллы
Зарабатывайте баллы и получайте награды аирдропа
Инвестиции
Simple Earn
Зарабатывайте проценты с помощью неиспользуемых токенов
Автоинвест.
Автоинвестиции на регулярной основе.
Бивалютные инвестиции
Доход от волатильности рынка
Мягкий стейкинг
Получайте вознаграждения с помощью гибкого стейкинга
Криптозаймы
0 Fees
Заложите одну криптовалюту, чтобы занять другую
Центр кредитования
Единый центр кредитования
Подробное подтверждение технических характеристик Rollup и Cairo VM
Оригинал: Эффективное масштабирование Ethereum
Перевод и корректура: “Китайское сообщество Starknet”
обзор
Роллапы были горячей темой в этом году при масштабировании Ethereum. Среди различных типов Rollup мы считаем, что Validity Proof Rollup (далее именуемый VR или zk-rollup) является наиболее многообещающим решением для расширения пропускной способности Ethereum безопасным и децентрализованным образом. Ядром этой схемы расширения является использование доказательств достоверности для проверяемых вычислений. Вот как это работает:
Подтверждение достоверности накопительного пакета
Обратите внимание: накопительные пакеты с доказательством валидности часто ошибочно называют накопительными пакетами с нулевым разглашением (zkRollup), что не соответствует действительности. В сводном пакете большинства доказательств достоверности не используются доказательства с нулевым разглашением и они не используются для обеспечения конфиденциальности. Таким образом, более точным является термин «свертка подтверждения действительности».
виртуальная машина вне сети
Прежде чем идти дальше, нам нужно ответить на первый вопрос: что такое виртуальная машина (ВМ)? Короче говоря, виртуальная машина — это среда, в которой могут работать программы, например операционная система Windows, работающая на Mac. Виртуальная машина переходит между состояниями после выполнения вычислений на некотором входе. Виртуальная машина Ethereum (EVM) — это виртуальная машина, которая запускает смарт-контракты Ethereum.
Виртуальная машина с нулевым разглашением (zkVM) — это среда выполнения программы, которая вместе с выходными данными программы генерирует легко проверяемые доказательства достоверности. Доказательство валидности используется для подтверждения того, что программа была выполнена правильно. Когда используется термин «zkEVM», он обычно относится к накопительному пакету, который запускает виртуальную машину Ethereum (EVM) и может свидетельствовать о выполнении EVM. Эта терминология может ввести в заблуждение, поскольку сама EVM не может генерировать эти доказательства; вместо этого доказательства создаются отдельным механизмом проверки, который использует результат выполнения EVM в качестве отправной точки. Кроме того, все приведенные выше доказательства относятся к действительности и не имеют ничего общего с конфиденциальностью. Поэтому, если быть точным, его нельзя назвать доказательством с нулевым разглашением. Для согласованности в этой статье по-прежнему используется традиционный термин «zkEVM».
Хотя все накопительные пакеты Proof-of-Validity нацелены на масштабирование Ethereum с помощью Proof-of-Validity, разные схемы делают разные варианты того, как виртуальная машина выполняет транзакции вне сети. Многие доказательства достоверности Rollup решил воспроизвести дизайн EVM (отсюда и название «свертка zkEVM»), пытаясь воспроизвести Ethereum на свертке L2. Starknet использует Cairo VM (CVM), совершенно новую виртуальную машину, предназначенную для оптимизации эффективности подтверждения достоверности.
Вышеупомянутые два метода имеют свои преимущества и недостатки, а также компромиссы, но zkEVM жертвует производительностью ради совместимости с Ethereum, в то время как Cairo VM ставит производительность выше совместимости и отдает приоритет масштабируемости.
Понять, как работает zkEVM
zkEVM — это накопительный пакет проверки подлинности, предназначенный для полного представления опыта Ethereum в блокчейне L2. Цель состоит в том, чтобы воспроизвести среду разработки Ethereum в Rollup. С zkEVM разработчикам не нужно корректировать код или отказываться от исходных инструментов EVM (и смарт-контрактов) при написании или переносе смарт-контрактов в решения расширения.
У этого подхода есть ключевой недостаток, который снижает масштабируемость доказательств валидности. Из-за того, что основное внимание уделяется совместимости с Ethereum, zkEVM работает медленнее и требует больше ресурсов. В отличие от CVM, EVM не разрабатывался с расчетом на эффективность доказательства. Это ограничивает использование оптимизаций для повышения эффективности и масштабируемости, что в конечном итоге влияет на общую производительность системы.
Доказуемость EVM
Основная проблема подхода zkEVM заключается в укоренившейся исходной схеме EVM, которая изначально не была предназначена для работы в среде проверки достоверности. Следовательно, если все усилия будут направлены на реализацию функций Ethereum, весь потенциал доказательства достоверности не может быть раскрыт, что приведет к неудовлетворительной эффективности. Эта неэффективность в конечном итоге снижает общую производительность системы. Совместимости EVM с доказательствами валидности препятствуют:
Поэтому различные типы zkEVM предназначены для обеспечения разных уровней поддержки инструментов Ethereum, но чем выше совместимость zkEVM с Ethereum, тем ниже производительность. (см. в конце статьи дополнительные типы zkEVM)
Понять, как работает Cairo-VM
При разработке решения zkEVM было потрачено много времени на то, чтобы «сделать EVM пригодным для развертывания с подтверждением валидности», отдавая предпочтение совместимости, а не долгосрочной производительности и масштабируемости. Есть еще один вариант: принять новую выделенную виртуальную машину и добавить дополнительный слой для поддержки инструментов Ethereum. Это шаг, который делает Starknet, запустив в ноябре 2021 года накопительный пакет проверки подлинности без разрешения. Starknet — это первый накопительный пакет с доказательством валидности, который реализует платформу смарт-контрактов общего назначения в полностью компонуемой сети.
Starknet использует Cairo-VM (CVM) и создает одноименный язык высокого уровня Cairo. Cairo-VM предназначен для эффективного создания доказательств правильности выполнения программы.
С Cairo (VM и язык программирования) можно:
Разработка совершенно нового языка может быть адаптирована к конкретным потребностям, может включать в себя функции, которые не были доступны ранее, и отвечать новым потребностям.
Каир и плюрализм кодирования
Чтобы создать доказательство достоверности некоторого вычисления, это вычисление должно быть сначала выражено в виде ряда математических ограничений, описывающих вычисление. Процесс сложный, сложность заключается в оптимизации расчетов по эффективности, требуются специфические инструменты.
Язык Cairo был разработан для упрощения этой задачи, чтобы StarkEx мог легко добавлять функциональные возможности и сложную бизнес-логику. Каирские программы компилируются в алгебраический машинный код, последовательность чисел, выполняемую одной фиксированной виртуальной машиной. В Cairo сложный процесс создания математических ограничений, описывающих вычисления (очень сложный для проверки достоверности), абстрагируется и выражается в виде фиксированного набора ограничений (всего менее 50 ограничений). Это позволяет разработчикам расширять приложения с помощью доказательств валидности путем написания кода со знакомым синтаксисом без понимания базовой математики и инфраструктуры.
Стремление Starknet к инновациям проявляется в его подходе к плюрализации кода. Каир применяет технологию STARK для достижения оптимальных функций расширения, не ограничиваясь заключением контрактов с местной средой Каира. Разработчики также могут выбрать наиболее подходящий метод:
Хотя Cairo не существует уже давно, согласно рейтингу TVL, Cairo является четвертым по популярности языком программирования смарт-контрактов с оценкой более 350 миллионов долларов.
Подведем итог
zkEVM стремится воспроизвести среду разработки Ethereum в Rollup и позволить разработчикам использовать знакомые инструменты Ethereum. Но этот подход ограничивает возможности доказательства достоверности и требует больших ресурсов.
Виртуальная машина Cairo, предназначенная для подтверждения достоверности, не подпадает под ограничения EVM. Cairo VM поддерживает Cairo 1.0. Вдохновленный языком Rust, Cairo 1.0 больше соответствует привычкам разработчиков и безопаснее, образуя мощный инструмент, предназначенный для использования STARK для доказательства эффективности расширения Ethereum.
Приятно видеть, как Cairo развивается каждую неделю, и возможности таких разработчиков, как Kakarot zkEVM и Warp, растут. Мы твердо верим, что с запуском децентрализованных приложений Starknet, демонстрирующих мощь Cairo, в будущем в Cairo появятся выдающиеся проекты, которых раньше никто не видел.
Выше были описаны три пути расширения SATRK, и, несомненно, в ближайшие месяцы появятся новые инновации. Разработчики теперь имеют беспрецедентный контроль над масштабированием блокчейнов.
тип zkEVM
Виталик делит zkEVM на четыре основных типа: