Kakarot zkEVM - это реализация виртуальной машины Ethereum (EVM), написанная на языке Cairo. Cairo - это язык, полный по Тьюрингу, связанный с CairoVM. CairoVM обеспечивает доказуемые вычисления, используя полиномы и систему доказательств ZK-STARK. ZkEVM характеризуется способностью генерировать доказуемые транзакции и, следовательно, доказуемые блоки. Kakarot построен на базе CairoVM, каждая транзакция, выполняемая на Kakarot, является доказуемой.
Kakarot zkEVM позволяет командам создавать и развертывать EVM-приложения. Разработчики могут развернуть любой Solidity (или любой EVM-совместимый язык) на Kakarot, как они это сделали бы на Ethereum или Polygon. Затем конечные пользователи могут взаимодействовать с dApps с помощью своих обычных инструментов (Metamask, Wallet connect и т.д.).
В конечном итоге Kakarot обеспечит совместимость с родными протоколами Starknet и совместимость между протоколами, например, объединение TVL в DeFi и базы пользователей в GameFi.
Kakarot zkEVM может существовать в различных формах. Во-первых, он может быть развернут как смарт-контракт поверх Starknet L2 и таким образом представлять EVM (Ethereum RPC, транзакции Ethereum и т.д.) в Starknet.
В качестве альтернативы Kakarot может быть интегрирован в стек для развертывания L3 zkEVM. Здесь на помощь приходит секвенсор Madara.
Объединив Madara (полный узел Starknet) и Kakarot (среда выполнения EVM), можно создать L3 zkEVM. Стек выглядит следующим образом: полный узел субстрата, который использует CairoVM в качестве механизма исполнения, и Kakarot в качестве среды исполнения для смарт-контрактов. Транзакции на Kakarot могут быть доказаны и проверены на расчетном уровне, что приводит к фрактальному масштабированию, совместимому с EVM.
Фаза 1 дорожной карты: Kakarot zkEVM в Starknet - бридж EVM в Starknet Kakarot начнет существовать как закрепленный EVM внутри Starknet L2. Это позволит разработчикам развертывать свои смарт-контракты Solidity (или любого другого EVM-совместимого языка) непосредственно в Starknet, используя знакомые им инструменты (Foundry, Hardhat, Wagmi и т.д.). Их конечные пользователи затем смогут взаимодействовать с их dApps, используя свой обычный инструментарий (Metamask, Wallet connect и т.д.).
TL;DR: опыт разработчиков и пользователей на Kakarot будет точно таким же, как у Polygon, Scroll или Ethereum L1.
Фаза 2: Kakarot x Madara - L3 zkEVMs
Kakarot и Madara будут объединены в единый стек, который позволит использовать L3 zkEVMs - и L4, L5 и т.д., когда это будет иметь смысл. Команды смогут развернуть свои цепочки приложений zkEVM и использовать доказательства достоверности для расчетов по транзакциям в Starknet.
Я много раз спрашивал себя: Почему L3s? Почему доказательность? Доказуемость позволяет следующее: вычислять вне цепочки или подниматься на уровень выше, проверять на цепочке.
L3, использующие доказательства достоверности (например, Kakarot), обладают интересным и недооцененным свойством: возможностью разделить безопасность и децентрализацию. Пользователи могут воспользоваться преимуществами безопасности Ethereum L1, не требуя такого же уровня децентрализации, т.е. тысяч валидаторов.
В результате вычислений на другом уровне затраты на газ экспоненциально ниже, чем на L2, а производительность (TPS) выше. Обратите внимание, что L2 уже экспоненциально дешевле L1. Масштабируемость свертывания складывается и умножается.
Чтобы еще больше снизить затраты на газ, можно разделить проверку доказательств и доступность данных (DA). Starknet L2 может служить исключительно в качестве уровня проверки доказательств, в то время как новые решения по обеспечению доступности данных, такие как Celestia или EigenDA, могут быть использованы для размещения данных о транзакциях. У пользователей будет возможность выбрать любой из этих вариантов в зависимости от их требований к безопасности. Размещение как доказательств, так и данных о транзакциях в Starknet является более безопасным вариантом, в то время как использование решений DA для размещения данных о транзакциях является более экономически эффективной альтернативой.
Фаза 3: Kakarot x Madara - type 1 zkEVM
Kakarot и Madara также могут быть объединены, чтобы включить zkEVM первого типа. Если человек способен:
Записать правила консенсуса Ethereum в Каире внутри полного узла Madara x Kakarot, что позволит доказать консенсус L1.
Перейти от триера Педерсена-Меркле-Патриса (MPT) к MPT Кечака.
Тогда Kakarot станет клиентом zkEVM типа 1, способным доказывать блоки L1. Это более продвинутый вариант использования, который зависит от дорожной карты Ethereum, в первую очередь от Verge. После выхода Verge, keccak может быть заменен на poseidon в качестве хэш-функции для Ethereum. Это поможет командам zkEVM стать типом 1, так как основным препятствием совместимости для zkEVM является компоновка хранилища, т.е. реализация Keccak MPT доказуемым и достаточно дешевым способом.
Дополнительные темы исследований
Madara позволяет цепочкам Kakarot использовать протокол обмена сообщениями Substrate для межролевой коммуникации.
Модульность Substrate позволяет цепочкам Kakarot вводить инновации в свой протокол консенсуса.
Links: