Нулевое знание (ZK) 101: все, что вам нужно знать о доказательствах ZK

Самые главные новости в нашем Телеграм-канале, присоединяйтесь!👇

Cryptomoon Telegram


Джей Уайт, соучредитель и руководитель отдела исследований пространства и времени

ZK — модное криптографическое слово года (и не без причины), но если вы не криптограф или разработчик, вам может быть интересно: что такое доказательство с нулевым разглашением (ZK-доказательство)?

Основной принцип ZK-доказательств прост, но глубок: они позволяют одной стороне (доказывающему) эффективно доказать другой стороне (проверяющему), что она обладает определенными знаниями, без необходимости раскрывать особенности этих знаний.

Эта концепция возникла в результате новаторской работы нескольких академических исследователей в середине 1980-х годов и с тех пор превратилась в практический механизм для проверяемых вычислений и заложила основу современной экосистемы Web3, где ZK-доказательства становятся все более неотъемлемой частью.

Эволюция ZK в блокчейне

Хотя ZK-доказательства существовали в теоретической криптографии задолго до появления блокчейна, именно децентрализованный характер последнего привлек внимание общественности к ZK-доказательствам. Блокчейн, по своей сути, представляет собой публичный реестр. Каждая транзакция, какой бы тривиальной она ни была, записывается и может быть просмотрена кем угодно. Но хотя прозрачность является одной из самых сильных сторон блокчейна, она также является его ахиллесовой пятой, когда дело касается конфиденциальности пользователей.

Именно здесь ZK начал проявлять свою силу.

ZK-доказательства устраняют дихотомию между прозрачностью и конфиденциальностью в пространстве блокчейна. Они позволяют проверять транзакции без раскрытия деталей транзакции, тем самым сохраняя конфиденциальность пользователя, сохраняя при этом неизменный характер блокчейна. К середине 2010-х годов такие проекты, как Zcash, начали создавать протоколы ZK, предлагающие частные транзакции, что привело к всплеску интереса и внедрению ZK в Web3. Но за последнее десятилетие или около того вариант использования ZK-доказательств в Web3 превратился из простого сохранения конфиденциальности в, возможно, одно из самых важных достижений в технологии блокчейн: проверяемые вычисления вне сети.

Нулевое знание (ZK) 101: все, что вам нужно знать о доказательствах ZK

Решение проблемы масштабируемости

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

  1. Типы данных, к которым они могут получить доступ: Смарт-контракты могут получить доступ только к самым базовым точкам данных в цепочке (например, к балансам кошельков) и не могут иметь естественный доступ к большинству данных в цепочке — даже таких простых, как цены токенов — или к любым данным вне цепочки. .
  2. Емкость хранилища блокчейна. Блокчейны не созданы для хранения огромных объемов данных. Это непомерно дорого и ресурсоёмко.
  3. Логика, которую они могут выполнять: смарт-контракт может выполнять только очень простую условную логику, не требуя непомерных комиссий за газ.

Без решения каждой из этих проблем блокчейн не сможет масштабироваться для удовлетворения растущих потребностей растущей экосистемы Web3. К счастью, вместе с развитием Web3 развивался и ZK. В то время как такие проекты, как децентрализованная сеть оракулов Chainlink (DON) и протокол межсетевого взаимодействия (CCIP), элегантно решили первую проблему, несколько протоколов ZK работают над решением двух других.

Самый элегантный способ решить проблему ограниченности хранилища и вычислений в блокчейне — перенести часть данных и вычислительной работы за пределы цепочки. Идея о том, что вы можете выполнять действия вне блокчейна и использовать ZK-доказательство для краткой и надежной передачи сводки этих действий в основную цепочку без передачи всех базовых данных, положила начало новой парадигме технологии блокчейн. Давайте посмотрим на некоторые протоколы, которые создаются в этой области.

Решение для хранилища: проверенное ZK децентрализованное хранилище

Хорошо известным решением проблемы хранения данных в блокчейне являются децентрализованные сети хранения вне цепочки. Вместо хранения больших объемов данных блокчейн должен хранить только меньшие ссылки на эти данные, поскольку они хранятся на платформе вне цепочки.

Однако простого перемещения данных за пределы цепочки недостаточно; Чтобы гарантировать, что данные вне сети остаются доступными и нетронутыми (для обратного подключения к смарт-контракту), вам необходимо ZK-доказательство. PoST Filecoin является отличным примером такой реализации: он предоставляет периодические криптографические доказательства непрерывного хранения данных, повышая доверие к сети, одновременно уменьшая нагрузку данных из основного блокчейна.

Решение для вычислений: сводные данные транзакций

Возможно, прототип ZK, ZK-rollups стал предпочтительным решением для удовлетворения растущего спроса на более быстрые и дешевые транзакции на L1, таких как Ethereum. Вместо обработки каждой транзакции в основной цепочке по отдельности, что может привести к перегрузке и более высоким комиссиям за газ, ZK-агрегаты снимают с цепочки тяжелую вычислительную работу, объединяя несколько транзакций в один «агрегат».

Для каждой большой партии транзакций, обработанных за пределами основной цепочки, обратно передается только одно компактное доказательство, предоставляющее криптографическое подтверждение того, что эти транзакции были правильными. Основная цепочка остается безопасной, не участвуя непосредственно в проверке каждой отдельной транзакции. ZK-коллапы не только повышают скорость обработки транзакций, но и экономят ресурсы основной цепочки, значительно повышая пропускную способность и снижая комиссию за транзакции. Некоторые из наиболее известных накопительных пакетов ZK включают zkEVM от Polygon, zkSync от Matter Labs и STARKEx от Starkware.

Для более подробного ознакомления с zk-rollups посмотрите наш подкаст с Гэл Роном из Starkware:

Следующее поколение ZK

Но хотя такие решения, как ZK-доказательства в децентрализованном хранилище и ZK-накопительные пакеты, безусловно, заложили основу для расширения ограничений блокчейна, все еще остается один важный недостающий элемент. С одной стороны, децентрализованные решения для хранения данных — это просто хранилище.

Хотя хранилище само по себе является важным инструментом, неспособность этих платформ выполнять какие-либо «вычисления», помимо простого извлечения данных, серьезно ограничивает варианты использования, которые они могут поддерживать. А ZK-коллапы, хотя и являются мощными вычислительными решениями, охватывающими широкий спектр вычислительных функций, все же не заполняют этот пробел полностью.

Поддержка приложений в любом масштабе

Итак, давайте вернемся к идее масштабирования блокчейна — что это значит и как это выглядит? Если вы сравните стек блокчейна со стеком традиционных приложений, вы заметите некоторые очевидные различия. В традиционном SaaS-приложениях (на самом базовом уровне) работа осуществляется в три этапа:

  1. Получение результата запроса: задать вопрос о данных и получить ответ.
  2. Выполнение действия: Выполнение задания на основе ответа.
  3. Обновление состояния: сообщение системе о том, что она выполнила задачу.

Давайте посмотрим на пару примеров:

Пример 1: Платформа социальных сетей

  1. Приложение запрашивает контент, связанный с подключениями пользователя, и получает рейтинг наиболее релевантного.
  2. Приложение отображает контент в ленте пользователя, и пользователь просматривает контент.
  3. Приложение обновляет состояние серверной части, записывая просмотры/вовлеченность контента (что затем корректирует алгоритм).

Пример 2. Сайт бронирования путешествий.

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

В Web3 блокчейн служит слоем управления состоянием, а смарт-контракты выполняют действия как произвольный код, но один ключевой компонент по-прежнему отсутствует: запросы. В смарт-контрактах нет возможности задавать вопросы о данных. Даже что-то такое простое, как «какие кошельки когда-либо владели двумя NFT из этой коллекции в моей цепочке?» смарт-контракт не может ответить изначально. Если мы собираемся реализовать концепцию Web3 и масштабировать блокчейн для удовлетворения потребностей корпоративных приложений, мы должны предоставить смарт-контрактам возможность без доверия задавать вопросы о данных в их собственной цепочке, в других цепочках и вне цепочки.

Доказательство SQL и проверяемый вычислительный уровень

Вычисления в базе данных — по сути, возможность задавать вопросы о данных — исторически отдавались централизованным, надежным решениям, таким как PostgreSQL (для простых запросов) или Snowflake (для аналитики). Децентрализованные базы данных существуют, но они не работают с таким же масштабом и пропускной способностью, как их централизованные аналоги.

И хотя ZK развивался для поддержки проверяемых автономных вычислений, появившиеся решения ограничены и фрагментированы, и ни один проект ZK не решает самую важную недостающую часть стека Web3: запросы.

Вот почему команда Space and Time создала Proof of SQL: ZK-доказательство, которое сочетает масштаб хранилища данных (базы данных масштаба предприятия) с проверяемостью блокчейна. Доказательство SQL доказывает, что запросы, выполняемые в базе данных, правильно вычисляются с правильными данными и что как запрос, так и лежащие в его основе данные не были подделаны. Это позволяет смарт-контрактам получать доступ к вычислениям в базе данных вне цепочки поддающимся проверке способом, заполняет пробелы в запросах в Web3 и позволяет разработчикам создавать не требующие доверия управляемые данными NFT, протоколы и финансовые инструменты внутри цепочки.

Доказательство SQL позволяет собственному децентрализованному хранилищу данных Space and Time служить проверяемым вычислительным слоем Web3, но его также можно подключить к любой базе данных SQL, централизованной или децентрализованной, для предоставления проверяемых результатов запросов в смарт-контракты.

В заключение

Поскольку мы стоим на пороге децентрализованного будущего, значение ZK-доказательств в изменении Web3 невозможно переоценить. Появление таких решений, как Proof of SQL, подчеркивает преобразующую силу ZK, расширяя ее полезность далеко за пределы простой конфиденциальности транзакций. Продолжающаяся эволюция и внедрение технологии ZK будут способствовать созданию децентрализованного будущего, сочетающего в себе масштаб и отсутствие доверия, открывая новые парадигмы безопасности, эффективности и прозрачности.

Об авторе

Джей Уайт — соучредитель и руководитель исследования пространства и времени. Его основное внимание уделяется исследованию, проектированию и внедрению инновационного механизма защиты от несанкционированного доступа к базе данных Space and Time, называемого Proof of SQL.

До «Пространства и времени» Джей был профессором математики, занимаясь исследованиями вычислительных математических задач. Опыт Джея в разработке алгоритмов и алгебраических исследованиях позволил ему объединить теоретическую математику криптографии с масштабируемой реализацией, необходимой для создания криптографических гарантий для баз данных корпоративного масштаба. По своей сути Джей — страстный решатель проблем, провидец и исследователь, создающий важное решение для инфраструктуры Web3.

Смотрите также

2023-11-15 16:10