Автор: Nickqiao & Wuyue, компьютерщик web3
В апреле этого года Виталик посетил Гонконгский блокчейн-саммит и выступил с речью под названием «Достижение пределов проектирования протоколов», в которой он еще раз упомянул потенциал ZK-SNARK в дорожной карте Ethereum Danksharding и с нетерпением ждал появления ASIC-чипа. это огромная помощь в ускорении ZK.
Ранее соавтор Scroll Чжан Е также отметил, что область применения ZK в традиционных областях может быть больше, чем в Web3. Доверенные вычисления, базы данных, проверяемое оборудование, защита от подделки контента, zkML и другие области имеют огромный спрос на ZK. , если ZK докажет, что генерация в реальном времени может быть реализована, ожидается, что как Web3, так и традиционные отрасли начнут изменения на уровне парадигмы. Однако с точки зрения эффективности и экономической стоимости до широкомасштабного внедрения еще далеко. ЗК.
Фактически, еще в 2022 году ведущие институты венчурного капитала a16z и Paradigm публично опубликовали отчеты, в которых четко выразили свое внимание к аппаратному ускорению ZK. Paradigm даже заявила, что в будущем доходы майнеров ZK могут быть сопоставимы с доходами майнеров биткойнов или Ethereum. Решения, основанные на графических процессорах и аппаратном ускорении для FPGA и ASIC, будут иметь огромное рыночное пространство. С тех пор, с ростом популярности таких популярных пакетов ZK, как Scroll и Starknet, аппаратное ускорение стало популярной концепцией на рынке. Эта популярность становится все более интенсивной по мере приближения к запуску таких проектов, как Cysic.
У нас есть основания полагать, что, учитывая огромный спрос на ZK, модель SaaS, созданная майнинговыми пулами ZK и ZKP в реальном времени, может открыть новую производственную цепочку с большим потенциалом, оборудование ZK имеет сильную поддержку и поддержку. Преимущества первопроходца Производители вполне могут стать следующим поколением Bitmain и доминировать на благодатной почве для аппаратного ускорения.
В области аппаратного ускорения Cysic, возможно, является одной из самых популярных команд. Команда получила важные награды от известной платформы конкурса технологий ZKP ZPrize и будет наставником ZPrize в 2023 году. Ее дорожная карта включает ToB; конец ZK Mining Pool и оборудование ToC ZK-Depin привлекли внимание ведущих венчурных капиталистов, таких как Polychain, ABCDE, OKX Ventures и Hashkey, и завершили крупномасштабное финансирование на общую сумму почти 20 миллионов долларов США.
Поскольку тестовая сеть Cysic будет запущена в сеть в конце июля, а ее пул для майнинга ZK вот-вот откроется, дискуссии о Cysic в крупных сообществах становятся все более жаркими. Цель этой статьи — помочь большему количеству людей понять принципы продукта и бизнес-модель Cysic. и иметь представление о ЗК. Простая популяризация принципов аппаратного ускорения. Ниже мы кратко суммируем соответствующие знания о Cysic, чтобы помочь большему количеству людей снизить порог понимания.
Понимание системы доказательств ZK из рабочего процесса
Система доказательств ZK на самом деле очень сложна, но если вы хотите иметь простое представление о ее общей структуре, ее можно разбить на части с точки зрения функций и рабочих процессов. Для системы, которая ZK-изирует обычные вычисления, ее основной процесс резюмируется следующим образом:
Во-первых, нам нужно взаимодействовать с системой ZK через внешний интерфейс и отправить контент, который необходимо подтвердить. Внешний интерфейс преобразует формат контента для облегчения обработки системой проверки ZK. После этого система сгенерирует ZK Proof с помощью специальной системы или структуры доказательства (например, Halo2, Plonk и т. д.). Этот процесс можно разбить на следующие этапы:
1. Постановка задачи. Сначала нам нужно определить, что нужно доказать. Например, доказывающий заявляет, что он владеет/знает определенные данные: «Я знаю решение N уравнения F(x)=w», но он не хочет, чтобы другие видели значение N.
2. Арифметика и CSP: после того, как доказывающая сторона отправит доказываемый контент, система создаст специальную математическую модель/программу для эквивалентного выражения доказываемого контента, а затем выполнит преобразование формата для облегчения обработки проверенной системой. В частности, вышеупомянутое утверждение «Я знаю решение N уравнения F(x)=w» будет преобразовано из исходного математического уравнения в форму схем логических элементов и полиномов.
3. После этого система выберет подходящую систему проверки, например Halo, Plonk и т. д., и скомпилирует контент, созданный на предыдущих шагах, в пригодную для использования программу ZKP. Доказывающий использует программу ZKP для создания доказательства и отправляет его проверяющему для проверки.
Суть систем ZK, таких как zkEVM, которые часто применяются на втором уровне Ethereum, заключается в том, чтобы сначала скомпилировать смарт-контракт в базовый код операции EVM, а затем преобразовать формат каждого кода операции в форму логики. схемы вентиля/полиномиальные ограничения, а затем передаются внутренней системе проверки ZK для дальнейшей обработки.
Стоит отметить, что технологическое решение ZKP, широко используемое в настоящее время в блокчейне, в основном представляет собой zk-SNARK (краткий неинтерактивный аргумент с нулевым разглашением), а ZK Rollup в основном использует преимущества простоты SNARK, а не секса с нулевым разглашением. Простота означает, что ZKP занимает очень мало места, может сжимать большие объемы контента в несколько сотен байт и требует очень низких затрат на проверку.
Таким образом, рабочая нагрузка между Prover и Verifier асимметрична. Стоимость создания ZKP для Prover очень высока, но стоимость проверки Verifier очень низка, если эта асимметрия хорошо используется в «один Prover, несколько Verifier». «Использование ZK в сценарии может сконцентрировать общие затраты на стороне Prover, значительно снизив стоимость Verifier. Эта модель чрезвычайно выгодна для децентрализованной проверки, и в этом заключается идея второго уровня Ethereum.
Однако эта модель передачи затрат на проверку стороне создания ZK не является панацеей. Для стороны проекта ZK Rollup высокие затраты на создание ZKP в конечном итоге будут переложены на UX и комиссию за обработку, что не способствует развитию. развитие ЗК Rollup Долгосрочное развитие.
Несмотря на то, что ZK широко используется в сценариях не требующей доверия и децентрализованной проверки, он ограничен временем генерации. Будь то zkEVM, zkVM или ZK Rollup и ZK Bridge, в настоящее время нет крупномасштабной экономической основы для внедрения.
В связи с этим появились проекты ускорения ЗК в лице Cysic, Ingonyama, Irreducible и др., пытающиеся снизить стоимость генерации ЗКП с разных направлений. Ниже мы кратко представим основные накладные расходы и методы ускорения генерации ZKP с технической точки зрения, а также почему Cysic имеет большой потенциал в области ускорения ZK.
Вычислительные издержки: MSM и NTT
Многие знают, что создание доказательств с помощью Prover ZKP занимает очень много времени. В протоколе ZK-SNARK часто возникает ситуация, когда Верификатору требуется всего одна секунда для проверки доказательства, но генерация доказательства может занять у Доказывающего полдня или даже день. Чтобы эффективно использовать проверочные расчеты ZKP, необходимо преобразовать формат расчетов из классических программ в ZK-дружественный.
В настоящее время есть два способа сделать это: один — написать схему с использованием какой-либо структуры системы доказательств, такой как Halo2, другой — использовать предметно-ориентированный язык (DSL), такой как Cairo или Circcom, для преобразования вычислений в; форма промежуточного выражения для последующего представления в систему сертификации. Система доказательств генерирует доказательство ZK на основе записанной схемы или промежуточного представления, скомпилированного с помощью DSL.
Чем сложнее операция программы, тем больше времени требуется для генерации доказательства. Кроме того, некоторые операции по своей природе недружественны к ZK, и их реализация требует дополнительной работы. Например, хеш-функции SHA или Keccak несовместимы с ZKP, и использование этих функций приведет к увеличению времени генерации доказательства. И даже очень дешевые операции на классическом компьютере могут быть недружественными для ZKP.
Если оставить в стороне недружественные вычислительные задачи ZK, хотя процесс генерации доказательств ZK может отличаться в зависимости от выбранной системы доказательств, узкие места по существу схожи. При генерации доказательств ZK есть две вычислительные задачи, которые потребляют больше всего вычислительных ресурсов: MSM (мультискалярное умножение) и NTT (теоретическое преобразование чисел). Эти две вычислительные задачи могут составлять 80-95% времени генерации доказательства, в зависимости от схемы обязательств ZKP и конкретной реализации.
MSM в основном обрабатывает мультискалярное умножение на эллиптических кривых, тогда как NTT представляет собой БПФ (быстрое преобразование Фурье) в конечном поле для ускорения обработки полиномиального умножения. Использование различных комбинаций схем приведет к разным соотношениям нагрузки FFT/MSM.
Если взять в качестве примера Stark, то ее PCS (схема полиномиальных обязательств) использует FRI, обязательство на основе хеш-функции, а не эллиптическую кривую, используемую KZG или IPA, поэтому расчет MSM вообще не проводится. Чем выше в таблице, тем больше операций БПФ требуется, а чем ниже, тем больше операций МСМ требуется.
Оптимизация
Поскольку операции MSM предполагают предсказуемый доступ к памяти, хотя их можно массово распараллеливать, они требуют большого объема ресурсов памяти. Кроме того, MSM также имеют проблемы с масштабируемостью и могут работать медленно даже при распараллеливании. Поэтому, хотя MSM и имеют потенциал для аппаратного ускорения, они требуют огромной памяти и ресурсов параллельных вычислений.
NTT часто предполагает произвольный доступ к памяти, что делает их недружественными к оборудованию и трудными для использования в распределенной инфраструктуре. Это связано с характеристиками произвольного доступа NTT. Если он работает в распределенной среде, ему неизбежно придется обращаться к другим узлам. Как только будет задействовано сетевое взаимодействие, производительность значительно снизится.
Таким образом, доступ к данным хранилища и перемещение данных становятся основным узким местом, ограничивающим возможность распараллеливания операций NTT. Большая часть работы по ускорению NTT сосредоточена на управлении взаимодействием вычислений с памятью.
Фактически, самый простой способ решить проблему эффективности MSM и NTT — полностью исключить эти операции. Некоторые недавно предложенные алгоритмы, такие как Hyperplonk, модифицируют Plonk, чтобы исключить операции NTT. Это упрощает ускорение Hyperplonk, но создает новые узкие места, такие как дорогостоящий в вычислительном отношении протокол проверки сумм; Существует также алгоритм STARK, который не требует MSM, но его протокол FRI требует большого количества хеш-вычислений.
Аппаратное ускорение ZK и конечная цель Cysic
Хотя оптимизация на уровне программного обеспечения и алгоритмов важна и ценна, существуют явные ограничения. Чтобы полностью оптимизировать эффективность генерации ZKP, необходимо использовать аппаратное ускорение, подобно тому, как ASIC и графические процессоры в конечном итоге доминировали на рынках добычи BTC и ETH.
Итак, вопрос: какое оборудование лучше всего подходит для ускорения генерации ZKP? В настоящее время существует множество аппаратных средств, которые могут реализовать ускорение ZK, например графические процессоры, FPGA или ASIC. Конечно, каждое из них имеет свои преимущества и недостатки.
Мы можем сравнить эти типы оборудования:
Сначала мы используем простой пример, чтобы проиллюстрировать их различия на уровне разработки. Например, теперь мы хотим реализовать простое параллельное умножение:
На графическом процессоре, используя API, предоставляемый CUDA SDK, мы можем разрабатывать, например, писать собственный код, чтобы получить возможности параллельных вычислений;
В FPGA нам необходимо заново выучить язык описания оборудования и использовать этот язык для управления соединениями на аппаратном уровне для реализации параллельных алгоритмов;
В ASIC схема подключения транзисторов фиксируется непосредственно на аппаратном уровне на этапе проектирования микросхемы и не может быть изменена позже.
Каждый из этих вариантов имеет свои преимущества и недостатки и подходит для разных этапов развития пути ЗК. Cysic стремится стать лучшим решением для аппаратного ускорения ZK. Его пошаговая стратегия такова:
Разработать SDK на основе графического процессора для предоставления решений для приложений ZK и интеграции ресурсов графического процессора по сети;
Воспользуйтесь преимуществами гибкости и сбалансированности функций FPGA, чтобы быстро реализовать индивидуальное аппаратное ускорение ZK.
Независимо разработанное оборудование ZK Depin на базе ASIC.
Cysic Network будет служить платформой/пулом для майнинга SAAS, объединяя все вычислительные мощности ZK Depin и графического процессора для предоставления вычислительной мощности и решений по проверке для всей индустрии ZK.
Давайте полностью поймем различия в подразделениях решения для ускорения ZK и идеи разработки Cysic, интерпретируя несколько разделенных треков.
Пул ZK для майнинга и платформа SaaS: сеть Cysic
Фактически, известные ZK Rollups, такие как Scroll и Polygon zkEVM, четко предложили в своих дорожных картах концепцию «децентрализованного Prover», которая на самом деле представляет собой создание пула для майнинга ZK. Этот ориентированный на рынок подход может снизить нагрузку на проект ZK Rollup и побудить майнеров и операторов майнинг-пулов постоянно оптимизировать программу ускорения ZK.
В дорожной карте Cysic четко предложены планы по созданию пула для майнинга ZK и SaaS-платформы под названием Cysic Network. Он не только интегрирует собственные вычислительные мощности Cysic, но и поглотит сторонние вычислительные ресурсы посредством стимулов для майнинга, включая простаивающие графические процессоры и устройства zk DePIN в руках обычных пользователей.
Принципиальная схема всего процесса проверки выглядит следующим образом:
Участник проекта zk отправляет агенту задачу создания доказательства, а задача последнего — переслать задачу доказательства в сеть проверки. Вначале этими агентами будет официально управлять Cysic, а позже будет введено стейкинг активов, чтобы каждый мог стать агентом;
Доказывающий принимает задачу доказательства и использует оборудование для генерации доказательства ZK. Доказывающему необходимо внести токен для участия в выполнении задачи доказательства. После выполнения задачи доказательства он получит вознаграждение.
Комитет по верификации несет ответственность за проверку достоверности доказательства, сгенерированного Prover, и голосование. Когда будет достигнуто определенное количество голосов, доказательство будет считаться действительным. Верификаторы присоединяются к комитету, делая ставки на токены, участвуют в голосовании и получают вознаграждения. Этот процесс можно объединить с концепцией AVS EigenLayer для повторного использования существующих возможностей рестейкинга.
Подробный процесс взаимодействия выглядит следующим образом:
На самом деле, в вышеописанном процессе есть смысл, будь то залог активов или распределение стимулов, а также подача вычислительных задач и другие действия, все они должны полагаться на выделенную платформу, для которой требуется блокчейн в качестве выделенной платформы. средство.
С этой целью Cysic Network создала эксклюзивную общедоступную цепочку и приняла уникальный алгоритм консенсуса под названием Proof of Compute (PoC). Его основной принцип основан на функции VRF и исторических характеристиках Prover, таких как доступность оборудования и производительность. количество отправленных доказательств, точность доказательства и т. д., чтобы выбрать производителя блока, ответственного за создание блока (примечание: блоки здесь должны использоваться для записи информации каждого устройства и распределения стимулов в токенах).
Конечно, помимо пула для майнинга ZK и платформы SaaS, Cysic подготовила множество решений для ускорения ZK на базе различного оборудования. Далее давайте разберемся с результатами по трем маршрутам: GPU, FPGA и ASIC соответственно.
Графические процессоры, FPGA и ASIC
Суть аппаратного ускорения ZK заключается в максимально возможном распараллеливании некоторых ключевых операций. С точки зрения функциональных характеристик аппаратного обеспечения, для достижения максимальной гибкости и универсальности большая часть площади чипа ЦП используется для обеспечения функций управления и кэшей на всех уровнях, что приводит к слабым возможностям параллельных вычислений.
В графических процессорах доля площади кристалла, используемой для вычислений, значительно увеличена, что позволяет поддерживать крупномасштабную параллельную обработку. Теперь, когда графические процессоры очень популярны, такие библиотеки, как Nvidia Cuda, могут помочь разработчикам воспользоваться преимуществами параллелизма графических процессоров, не зная базового оборудования. CUDA SDK можно использовать для инкапсуляции библиотеки CUDA ZK для ускорения операций MSM и NTT.
FPGA — это массив, состоящий из большого количества небольших процессоров. Для программирования FPGA необходимо использовать специальный язык описания оборудования, который затем компилируется в комбинацию транзисторных схем. Таким образом, FPGA фактически напрямую использует транзисторные схемы для реализации конкретных алгоритмов без компиляции системы команд. Этот уровень настройки и гибкости намного выше, чем у графического процессора.
Текущая цена FPGA составляет лишь около трети стоимости GPU, а ее энергоэффективность может быть более чем в десять раз выше, чем у GPU. Это значительное преимущество в энергоэффективности частично связано с тем, что графический процессор необходимо подключить к хост-устройству, которое обычно потребляет много энергии. Можно сказать, что FPGA может добавить больше вычислительных модулей для удовлетворения потребностей MSM и NTT без увеличения энергопотребления. Это делает FPGA особенно подходящими для сценариев защиты от ZK, которые требуют больших вычислительных ресурсов и требуют высокой пропускной способности данных и низкого времени отклика.
Однако самая большая проблема с FPGA заключается в том, что лишь немногие разработчики имеют опыт программирования. Для проекта ZK чрезвычайно сложно организовать команду, обладающую одновременно знаниями в области криптографии и инженерии FPGA.
ASIC эквивалентен использованию оборудования для реализации определенной программы. После завершения проектирования оборудование не может быть изменено. Соответственно, программы, которые может выполнять ASIC, не могут быть изменены и могут использоваться только для определенных задач. Описанные выше преимущества аппаратного ускорения FPGA с точки зрения MSM и NTT также доступны в ASIC. А благодаря специальной конструкции схемы ASIC имеет самую высокую производительность и наименьшее энергопотребление среди всех решений.
Для текущей основной схемы ZK Cysic надеется доказать, что время может достигать скорости 1-5 секунд. Для достижения этой цели может достичь этой цели только ASIC.
Хотя эти преимущества кажутся очень привлекательными, технология ZK быстро развивается, а циклы проектирования и производства ASIC обычно занимают 1-2 года и стоят до 10-20 миллионов долларов. Поэтому необходимо дождаться, пока технология ZK станет достаточно стабильной, прежде чем ее можно будет запустить в крупномасштабное производство, чтобы избежать производства чипов, которые быстро устареют.
В этом отношении Cysic провела полную подготовку в трех областях: графический процессор, FPGA и ASIC;
Что касается решений для ускорения графических процессоров, с появлением различных новых систем проверки ZK компания Cysic адаптировала их на основе самостоятельно разработанного SDK для ускорения CUDA и связала данные в вычислительной сети Cysic с графическими процессорами, собрав сто тысяч лучших ресурсов сообщества. видеокарты уровня вычислительной мощности, а Cysic CUDA SDK на 50–80 % и более быстрее, чем новейшая платформа с открытым исходным кодом.
На FPGA компания Cysic завершила реализацию самого быстрого в мире MSM, NTT, дерева Посейдона Меркла и других модулей посредством самостоятельно разработанных решений, охватывающих наиболее важную часть вычислений ZK, и это решение было проверено на прототипе в нескольких ведущих проектах ZK.
SolarMSM, разработанный Cysic, может выполнять вычисления MSM в масштабе 2 ^ 30 за 0,195 секунды, а SolarNTT может выполнять вычисления NTT в масштабе 2 ^ 30 за 0,218 секунды, что является самой высокой производительностью среди всех общедоступных результатов аппаратного ускорения FPGA.
В области ASIC, хотя до широкомасштабного применения ZK ASIC еще далеко, Cysic заранее наметила этот путь и выпустила самостоятельно разработанные чипы и оборудование ZK DePIN.
Чтобы привлечь пользователей C-конца и удовлетворить требования к производительности и стоимости различных участников проекта ZK, Cysic выпустит два аппаратных продукта ZK: ZK Air и ZK Pro.
ZK Air по размеру похож на блок питания и блок питания для ноутбука. Обычные пользователи могут подключать его напрямую к ноутбукам, iPad или даже мобильным телефонам через интерфейс Type-C, чтобы обеспечить поддержку вычислительной мощности для конкретных проектов ZK и получать вознаграждения. В настоящее время вычислительная мощность ZK Air по-прежнему превышает мощность видеокарт потребительского уровня и может ускорить выполнение небольших задач по созданию доказательств ZK.
ZK Pro похож на традиционную машину для майнинга. Его вычислительная мощность достигает эффекта нескольких лучших видеокарт потребительского уровня, соединенных с сервером графического процессора. Он может значительно ускорить создание доказательств ZK и подходит для таких крупномасштабных проектов ZK. как ZK-Rollup и ZKML (машинное обучение с нулевым разглашением).
С помощью этих двух устройств Cysic наконец построит стабильную и надежную сеть ZK-DePIN. Оба устройства в настоящее время находятся в стадии разработки и, как ожидается, будут доступны в 2025 году.
Кроме того, через Cysic Network пользователи C-конца могут присоединиться к рынку аппаратного ускорения ZK с очень низким порогом. В сочетании с большим спросом проекта ZK на вычислительную мощность это может снова вызвать на рынке волну повального увлечения. Майнинг биткойнов, размер рынка вычислительной техники ZK может снова привести к взрывному росту.