вступление
В нашей предыдущей публикации в блоге мы кратко представили наш протокол ZKCross, цель которого — легко соединить Web2 и Web3, не добавляя ненужных сложностей. Мы также выделили текущие проблемы, с которыми сталкивается индустрия Web3 и которые препятствуют истинной децентрализации, эффективности и доступности для разработчиков. В этом сообщении блога мы глубже рассмотрим, как мы планируем преодолеть эти проблемы и достичь нашей цели — беспрепятственно связать Web2 и Web3.
Прежде чем мы углубимся в подробности, давайте рассмотрим, что такое ZKCross!
Что такое ZKCross?
ZKCross — это новаторская платформа, которая стремится преодолеть разрыв между двумя версиями интернета, Web2 и Web3. Она использует виртуальную машину WebAssembly под названием zkVM и «слой zk-shadow», что упрощает совместную работу различных частей платформы. Такой подход позволяет разработчикам Web2 использовать такие языки программирования, как C/C++, Java или Python.
Наша платформа также использует уникальный слой, который бесшовно соединяет on-chain и off-chain среды. Этот слой, известный как «zk-shadow layer», облегчает соединение между zkWASM и on-chain слоем через контракты zk-proxy. Следовательно, это позволяет нам сломать барьер между Web2 и Web3, одновременно обеспечивая высокую пропускную способность и доступность для любого пользователя или разработчика.
Чудеса технологии нулевого разглашения
Технология Zero Knowledge (ZK) относится к классу протоколов, которые позволяют одной стороне (доказывающей) демонстрировать знание секрета другой стороне (проверяющей), не раскрывая никакой информации о самом секрете. Концепция была введена в конце 1980-х годов и с тех пор нашла множество применений, включая криптографическую аутентификацию. Доказательство ZK обычно включает в себя ряд взаимодействий между доказывающей и проверяющей, в ходе которых доказывающая убеждает проверяющую в знании секрета, не раскрывая его.
Чтобы считаться доказательством ZK, протокол должен удовлетворять требованиям полноты, надежности и нулевого разглашения. Полнота означает, что честный доказывающий всегда убедит честного проверяющего в истинности доказываемого утверждения. Надежность означает, что нечестный доказывающий не может убедить проверяющего в ложности утверждения с высокой вероятностью. Наконец, нулевое разглашение означает, что протокол не раскрывает проверяющему никакой информации о секрете, кроме той, что доказывающий его знает. Это означает, что даже если злоумышленник перехватит все сообщения между доказывающим и проверяющим, он ничего не узнает о секрете.
Ограничения разработки ZK dApp
Разработка приложений ZK может быть сложной из-за ограничений в выборе языка программирования. Многие блокчейны используют специализированный язык программирования Solidity, предназначенный для написания смарт-контрактов. Это не самый удобный язык, и его изучение требует много усилий, что может усложнить задачу незнакомых разработчиков Web2. что приводит к проблемам доступности для этих разработчиков.
Чтобы решить эту проблему, разработчики изучают новые решения, которые обеспечивают большую гибкость языка программирования при создании приложений ZK. Один из подходов заключается в использовании виртуальной машины WebAssembly (WASM), которая может позволить разработчикам писать код на предпочитаемых ими языках программирования высокого уровня, таких как C/C++, Java или Python. Это позволяет разработчикам Web2 использовать имеющиеся у них навыки и опыт для создания приложений ZK без изучения новых языков программирования. Кроме того, разрабатываются инструменты и фреймворки (например, ZKCross SDK), которые абстрагируются от части сложности написания смарт-контрактов, что упрощает разработчикам создание безопасных приложений ZK.
zkVM, святая троица развития
ZKVM — это сокращение от Zero-Knowledge Virtual Machine, технологии, используемой в протоколе ZKCross, чтобы помочь разработчикам Web2 писать смарт-контракты для Web3 без изучения новых языков программирования. ZkVM использует виртуальную машину WASM, которая позволяет разработчикам Web2 писать код на предпочитаемых ими языках программирования. WASM невероятно популярен для веб-приложений и используется во всех значимых веб-движках. Таким образом, использование zkVM позволяет миллионам разработчиков создавать готовые к Web3 приложения без какой-либо крутой кривой обучения. С другой стороны, zkVM использует zk-SNARKs; криптографическое доказательство, которое позволяет одной стороне доказать другой стороне знание определенной части информации, не раскрывая никакой информации о ней. SNARKs предоставляют способ проверки вычислений в блокчейне без раскрытия конфиденциальных (персональных) данных, таких как персонально идентифицируемая информация.
Одним из главных преимуществ SNARK является их краткость. В отличие от других типов ZK-доказательств, которые могут быть очень вычислительно затратными и требовать множества раундов взаимодействия между доказывающим и проверяющим, SNARK могут быть очень эффективными и требовать только одного доказательства, которое можно быстро проверить.
Еще одним преимуществом SNARK является их масштабируемость. SNARK можно использовать для проверки правильности больших вычислений, не раскрывая никаких деталей самого вычисления. Это делает их особенно полезными для проверки правильности смарт-контрактов в сетях блокчейнов, где вычисления могут быть очень сложными и требовать много вычислительных ресурсов.
Преимущества ZkVM
zkVM предлагает ряд преимуществ разработчикам, желающим создавать децентрализованные приложения.
Высокая гибкость: с помощью zkVM разработчики могут писать смарт-контракты на предпочитаемом ими языке программирования высокого уровня: C/C++, Java или Python, а не ограничиваться конкретными языками программирования.
Улучшенная масштабируемость: zkVM обеспечивает более быстрое выполнение транзакций и более высокую пропускную способность, что необходимо для создания масштабируемых децентрализованных приложений.
Модульность и компоновка: с помощью zkVM разработчики могут быстро создавать сложные децентрализованные приложения, используя различные модули, не беспокоясь о проблемах совместимости языка или платформы.
Повышенная безопасность: zkVM использует ZK-доказательства, известные как SNARK, для обеспечения высокой безопасности за счет возможности проверки вычислений без раскрытия конфиденциальных данных.
Децентрализация: zkVM способствует децентрализации, позволяя выполнять смарт-контракты распределенным образом на нескольких узлах, тем самым устраняя необходимость в центральных органах власти.
В следующих блогах мы более подробно объясним нашу уникальную и революционную экосистему, выделим варианты использования, подробно рассмотрим архитектуру и многое другое!


