В апреле Виталик посетил Гонконгский саммит блокчейна и выступил с речью под названием «Достижение пределов дизайна протокола», в которой он подчеркнул потенциал ZK-SNARKs в рамках дорожной карты Danksharding Ethereum и обсудил многообещающую роль чипов ASIC в ускорении процессов ZK. Ранее сооснователь Scroll Чжан И предположил, что потенциальные применения ZK могут быть даже больше в традиционных секторах, чем в Web3, с существенным спросом в областях доверенных вычислений, баз данных, проверяемого аппаратного обеспечения, аутентификации контента и zkML. Если генерация ZK-доказательств в режиме реального времени станет возможной, это может привести к трансформирующим изменениям как в Web3, так и в традиционных отраслях. Однако с точки зрения эффективности и стоимости широкое распространение ZK все еще находится на некотором расстоянии.
В 2022 году ведущие венчурные фирмы a16z и Paradigm опубликовали отчеты, подчеркивающие важность аппаратного ускорения ZK. Paradigm даже предсказывает, что будущие доходы для майнеров ZK могут соперничать с доходами майнеров Bitcoin или Ethereum, с решениями аппаратного ускорения на основе GPU, FPGA и ASIC, готовыми захватить значительную часть рынка. Вслед за появлением мейнстримных ZK Rollups, таких как Scroll и Starknet, аппаратное ускорение стало горячей темой, а интерес усилился с приближающимся запуском проектов, таких как Cysic.
Учитывая огромный спрос на ZK, вполне вероятно, что майнинговые пулы ZK и модели SaaS поколения ZKP в реальном времени могут дать начало новой отрасли. На этом развивающемся рынке производители аппаратного обеспечения ZK с большими возможностями и преимуществом первопроходца потенциально могут стать следующим Bitmain, доминирующим в области аппаратного ускорения. Cysic выделяется как один из самых многообещающих игроков в этой области. Команда завоевала заметные награды от платформы для технологических соревнований ZKP ZPrize и начала наставничество для ZPrize в 2023 году. Их дорожная карта включает в себя майнинговые пулы ZK ToB (business-to-business) и аппаратное обеспечение ZK-Depin ToC (business-to-consumer), что привлекает значительные инвестиции от ведущих венчурных фондов, таких как Polychain, ABCDE, OKX Ventures и Hashkey, что привело к финансированию почти в размере 20 миллионов долларов.
Поскольку Cysic готовится запустить свой тестовую сеть в конце июля и открыть свой пул для майнинга ZK, обсуждения о компании набирают обороты в различных сообществах. Целью этой статьи является знакомство большего числа людей с концепциями продуктов и бизнес-моделью Cysic, предоставляя доступный обзор принципов аппаратного ускорения ZK. В следующих разделах мы кратко опишем ключевые аспекты Cysic, что облегчит понимание для читателей.
Система доказательства ZK (Zero-Knowledge) является сложной, но мы можем упростить ее понимание, разбив ее на функции и рабочий процесс. Вот базовый обзор того, как работает система, разработанная для применения ZK к обычным вычислениям: Сначала пользователь взаимодействует с системой ZK через интерфейс фронт-энда, представляя контент, который они хотят доказать. Фронт-энд затем преобразует этот контент в формат, подходящий для обработки системой доказательства ZK. Система использует определенную систему доказательства или фреймворк (например, Halo2 или Plonk) для генерации доказательства ZK. Этот процесс включает несколько ключевых шагов:
Для систем, таких как zkEVM, обычно используемых в решениях Ethereum Layer 2, смарт-контракты сначала компилируются в байт-код EVM (Ethereum Virtual Machine). Затем каждый опкод преобразуется в логические вентили или полиномиальные ограничения перед дальнейшей обработкой бекенд-системой ZK proof.
Важно отметить, что zk-SNARKs (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) являются наиболее часто используемой технологией ZKP в блокчейне на сегодняшний день. Многие ZK-роллапы используют лаконичность SNARK, а не их свойство нулевого разглашения. Лаконичность относится к способности ZKP сжимать большие объемы данных в несколько сотен байт, что значительно снижает затраты на проверку. Это приводит к асимметрии между рабочей нагрузкой Проверяющего и Верификатора: в то время как Проверяющему создание ZKP обходится дорого, Проверяющему относительно недорого его проверяет. Используя эту асимметрию, сценарий с одним проверяющим и несколькими проверяющими может значительно снизить общую стоимость на стороне проверяющего. Эта модель особенно выгодна для децентрализованной верификации, как это предусмотрено решениями уровня 2 Ethereum.
Однако эту модель переложения затрат на проверку на процесс генерации ZKP нельзя считать панацеей. Для проектов ZK Rollup высокая стоимость генерации ZKP неизбежно отразится на пользовательском опыте и комиссиях за транзакции, что может затруднить долгосрочное принятие ZK Rollups. Несмотря на потенциал ZK в бездоверительной и децентрализованной верификации, текущие экономические условия не поддерживают крупномасштабную реализацию zkEVM, zkVM, ZK Rollups или ZK-мостов из-за временных ограничений, связанных с генерацией доказательств. Это привело к появлению проектов ускорения ZK, таких как Cysic, Ingonyama и Irreducible, каждый из которых работает над снижением стоимости генерации ZKP с разных сторон. В следующем разделе мы кратко обсудим основные вычислительные затраты и техники ускорения генерации ZKP, а также почему Cysic имеет значительный потенциал в пространстве ускорения ZK.
Широко известно, что генерация доказательств в системах ZK занимает много времени у Проверяющего. В протоколе ZK-SNARK Проверяющий может проверить доказательство всего за одну секунду, но Генератору может потребоваться полдня или даже целый день, чтобы сгенерировать это доказательство. Для оптимизации использования вычислений ZKP необходимо преобразовать формат вычисления из классического программирования в формат, дружественный ZK.
В настоящее время существует два основных метода достижения этой цели: один включает в себя написание схем с использованием платформ системы доказательства, таких как Halo2, а другой включает использование предметно-ориентированных языков (DSL), таких как Cairo или Circom, для перевода вычислений в промежуточный формат, который затем может быть отправлен в систему доказательств. Система доказательств генерирует ZK-доказательства на основе этих схем или промежуточных форматов, скомпилированных DSL. Чем сложнее операции, тем больше времени требуется для создания доказательства. Более того, некоторые операции по своей сути недружественны к ZK и требуют дополнительных усилий для реализации. Например, хеш-функции, такие как SHA или Keccak, несовместимы с ZKP, что означает, что их использование увеличивает время генерации доказательств. Даже операции, которые недорого выполнять на классических компьютерах, могут быть неэффективными для ZKP.
За исключением этих задач, недружественных к ZK, узкие места в процессе генерации доказательств довольно похожи в разных системах доказательств. Есть две основные вычислительные задачи, которые потребляют большую часть ресурсов при генерации ZK-доказательств: MSM (Multi-Scalar Multiplication) и NTT (Number Theoretic Transform). На эти две задачи может приходиться 80-95% времени генерации доказательств, в зависимости от схемы обязательств ZKP и конкретной реализации. MSM включает в себя выполнение мультискалярного умножения на эллиптических кривых, в то время как NTT представляет собой БПФ (быстрое преобразование Фурье) на конечных полях, используемое для ускорения умножения полиномов. Различные комбинации этих задач могут привести к различному распределению нагрузки между БПФ и МСМ. Например, Старк использует FRI, схему обязательств на основе хэша, которая не включает MSM, в отличие от схем на основе эллиптических кривых, таких как KZG или IPA. Как правило, чем больше операций БПФ требуется, тем меньше операций МСМ, и наоборот.
Операции MSM характеризуются предсказуемым доступом к памяти, что позволяет высокую параллелизацию, но требует значительных ресурсов памяти. Однако MSM также представляет вызовы масштабируемости; даже с параллелизацией он все равно может быть медленным. Хотя аппаратное ускорение может помочь ускорить MSM, оно требует значительных ресурсов памяти и параллельных вычислений.
NTT, с другой стороны, включает случайный доступ к памяти, что делает его менее подходящим для аппаратного ускорения и вызывает трудности в обработке в распределенных системах. Это связано с тем, что случайный доступ NTT часто требует доступа к данным с других узлов в распределенной среде. Когда взаимодействие по сети необходимо, производительность может значительно снижаться.
Поэтому доступ и перемещение хранимых данных становятся основными узкими местами, ограничивая возможность параллелизации операций NTT. Большинство усилий по ускорению NTT сосредоточены на управлении взаимодействием вычислений с памятью.
Фактически, наиболее простой способ устранить проблему эффективности MSM и NTT - это вообще отказаться от этих операций. Некоторые недавно предложенные алгоритмы, такие как Hyperplonk, модифицируют Plonk, чтобы устранить операции NTT, что делает Hyperplonk более легким для ускорения, хотя он вводит новые узкие места. Другие примеры включают вычислительно дорогостоящий протокол проверки сумм или алгоритм STARK, который устраняет MSM, но добавляет значительные вычисления хеша через свой протокол FRI.
Хотя программные и алгоритмические оптимизации являются необходимыми и ценными, они имеют очевидные ограничения. Для полной оптимизации эффективности генерации ZKP жизненно важно аппаратное ускорение, подобно тому, как ASIC и GPU в конечном итоге доминировали на рынках майнинга BTC и ETH.
Вопрос тогда становится: какое оборудование лучше всего подходит для ускорения генерации ZKP? В настоящее время доступны несколько вариантов аппаратного ускорения ZK, такие как графические процессоры (GPUs), ПЛИС или ASIC, у каждого из которых есть свои преимущества и недостатки.
Чтобы лучше понять различия в процессах разработки между аппаратными средствами GPU, FPGA и ASIC, рассмотрим простой пример: реализацию параллельного умножения.
Каждая аппаратная опция имеет свои сильные и слабые стороны, что делает их подходящими для различных этапов развития технологии ZK. Цель Cysic - стать конечным решением для ускорения аппаратного обеспечения ZK, используя фазированную стратегию:
Давайте исследуем эти различные подобласти, чтобы лучше понять различия между решениями по ускорению ZK и подходом к разработке Cysic.
ZK Mining Pool and SaaS Platform: Cysic Network
И Scroll, и Polygon zkEVM предложили концепцию «децентрализованного Prover» в своих планах, что в основном означает создание майнинговых пулов ZK. Такой рыночно-ориентированный подход помогает проектам ZK Rollup снизить свою нагрузку, стимулируя при этом майнеров и операторов майнинговых пулов постоянно оптимизировать решения по ускорению ZK. В планах Cysic разработка майнингового пула и SaaS-платформы под названием Cysic Network, которая интегрирует вычислительные мощности Cysic и привлечет сторонние ресурсы с помощью стимулов для майнинга, включая неиспользуемые GPU и устройства zk DePIN, принадлежащие пользователям. Вся рабочий процесс верификации работает следующим образом:
Подробный процесс взаимодействия следующий
В этом процессе для определенных действий, таких как стейкинг активов, распределение поощрений и отправка задач, требуется специальная платформа, поддерживаемая инфраструктурой блокчейна. Чтобы удовлетворить эту потребность, Cysic Network разработала специальную публичную цепочку с уникальным алгоритмом консенсуса под названием Proof of Compute (PoC). Этот алгоритм использует функцию VRF и историческую производительность Prover, такую как доступность устройства, количество отправленных подтверждений, точность подтверждения и т. д., для выбора производителей блоков, ответственных за создание блоков (эти блоки, вероятно, записывают информацию об устройстве и распределяют поощрения в виде токенов). Помимо майнинг-пула ZK и платформы SaaS, Cysic широко развернула решения для ускорения ZK на основе различного оборудования. Давайте рассмотрим достижения Cysic в технологиях GPU, FPGA и ASIC.
Суть аппаратного ускорения ZK (Zero-Knowledge) заключается в максимизации параллелизации ключевых вычислений. С аппаратной точки зрения ЦП предназначены для максимальной гибкости и универсального использования. Однако значительная часть чип-площади ЦП посвящена функциям управления и различным уровням кэш-памяти, что ограничивает его параллельные вычислительные возможности. В отличие от этого, большая часть чип-площади ГПУ выделяется под вычисления, что позволяет ему поддерживать масштабные параллельные вычисления. ГПУ теперь широко доступны, и библиотеки, такие как Nvidia CUDA, позволяют разработчикам использовать параллелизм ГПУ, не имея глубоких знаний об аппаратной основе. SDK CUDA предоставляет фреймворк для ускорения вычислений MSM (Multi-Scalar Multiplication) и NTT (Number Theoretic Transform) с использованием библиотек CUDA ZK.
FPGA (Field-Programmable Gate Array) использует другой подход, состоящий из массивов множества небольших процессоров. Для программирования ПЛИС разработчики должны использовать специализированный язык описания аппаратного обеспечения (HDL), который затем компилируется в комбинации транзисторных схем. По сути, FPGA реализует определенные алгоритмы непосредственно через транзисторные схемы, минуя процесс компиляции традиционной системы команд. Такой подход обеспечивает гораздо большую настройку и гибкость по сравнению с графическими процессорами. В настоящее время цены на FPGA составляют около одной трети от цен на графические процессоры, и они могут быть более чем в десять раз более энергоэффективными. Это преимущество энергоэффективности отчасти связано с тем, что графические процессоры необходимо подключать к хост-устройству, которое обычно потребляет много энергии. FPGA может добавлять больше вычислительных модулей для удовлетворения требований MSM и NTT без увеличения энергопотребления, что делает ее особенно подходящей для сценариев с большим объемом вычислений, высокой пропускной способностью данных и низким временем отклика. Однако самой большой проблемой FPGA является нехватка разработчиков с необходимым опытом программирования. Для проектных команд ZK собрать команду, обладающую как опытом в области криптографии, так и инженерными знаниями в области FPGA, является чрезвычайно сложной задачей.
ASIC (Application-Specific Integrated Circuit) - самый специализированный из трех, по сути, реализует программу исключительно в аппаратуре. После разработки ASIC аппаратная конфигурация зафиксирована и не может быть изменена, что означает, что он может выполнять только определенные задачи. Преимущества FPGA в ускорении MSM и NTT также применимы к ASIC, но поскольку ASIC разработан для конкретного приложения, он обеспечивает максимальную эффективность и наименьшее энергопотребление среди всех вариантов аппаратного обеспечения. Для основных ZK-схем сегодня Cysic стремится достичь времени доказательства от 1 до 5 секунд, что может обеспечить только ASIC. Хотя эти преимущества крайне привлекательны, технология ZK быстро развивается, а циклы проектирования и производства ASIC обычно занимают 1-2 года и стоят от 10 до 20 миллионов долларов. Поэтому масштабное производство должно ждать стабилизации технологии ZK, чтобы избежать производства устаревших микросхем.
Для решения этих проблем Cysic сделала всесторонние инвестиции в три категории аппаратных средств: GPU, FPGA и ASIC. В области GPU-ускорения Cysic адаптировала себя к появлению различных новых ZK-систем доказательств через свой собственный разработанный CUDA SDK. Собирая ресурсы сообщества, Cysic подключила десятки тысяч топовых GPU в свою сеть GPU-вычислений, достигая улучшения скорости на 50%-80% или больше по сравнению с последними открытыми фреймворками. В области FPGA Cysic разработала решения, устанавливающие мировые стандарты производительности для MSM, NTT и Poseidon Merkle tree модулей, охватывающие наиболее критические компоненты ZK-вычислений. Эти решения были прототипно протестированы и подтверждены несколькими ведущими проектами ZK. Собственный продукт Cysic SolarMSM может выполнять вычисления MSM масштаба 2^30 за всего 0.195 секунды, а SolarNTT может выполнять вычисления NTT масштаба 2^30 за 0.218 секунды, что делает их самыми быстродействующими результатами аппаратного ускорения на FPGA в настоящее время.
В сфере ASIC, хотя широкое принятие ZK ASIC все еще может занять некоторое время, Cysic уже заняла свою позицию на этом развивающемся рынке, разработав собственные микросхемы и устройства ZK DePIN. Чтобы привлечь пользователей-потребителей и удовлетворить разнообразные требования к производительности и стоимости различных проектов ZK, Cysic планирует представить два аппаратных продукта ZK: ZK Air и ZK Pro.
Через эти два устройства Cysic стремится создать стабильную и надежную сеть ZK-DePIN. Оба ZK Air и ZK Pro в настоящее время находятся в стадии разработки, с ожидаемым выпуском в 2025 году. Кроме того, сеть Cysic позволит потребительским пользователям войти на рынок аппаратного ускорения ZK с очень низкими барьерами для входа. В сочетании с высоким спросом на вычислительную мощность со стороны команд проектов ZK, это может зажечь новую волну энтузиазма, аналогичную буму майнинга биткойнов, что потенциально может привести к взрывному росту на рынке вычислений ZK.
В апреле Виталик посетил Гонконгский саммит блокчейна и выступил с речью под названием «Достижение пределов дизайна протокола», в которой он подчеркнул потенциал ZK-SNARKs в рамках дорожной карты Danksharding Ethereum и обсудил многообещающую роль чипов ASIC в ускорении процессов ZK. Ранее сооснователь Scroll Чжан И предположил, что потенциальные применения ZK могут быть даже больше в традиционных секторах, чем в Web3, с существенным спросом в областях доверенных вычислений, баз данных, проверяемого аппаратного обеспечения, аутентификации контента и zkML. Если генерация ZK-доказательств в режиме реального времени станет возможной, это может привести к трансформирующим изменениям как в Web3, так и в традиционных отраслях. Однако с точки зрения эффективности и стоимости широкое распространение ZK все еще находится на некотором расстоянии.
В 2022 году ведущие венчурные фирмы a16z и Paradigm опубликовали отчеты, подчеркивающие важность аппаратного ускорения ZK. Paradigm даже предсказывает, что будущие доходы для майнеров ZK могут соперничать с доходами майнеров Bitcoin или Ethereum, с решениями аппаратного ускорения на основе GPU, FPGA и ASIC, готовыми захватить значительную часть рынка. Вслед за появлением мейнстримных ZK Rollups, таких как Scroll и Starknet, аппаратное ускорение стало горячей темой, а интерес усилился с приближающимся запуском проектов, таких как Cysic.
Учитывая огромный спрос на ZK, вполне вероятно, что майнинговые пулы ZK и модели SaaS поколения ZKP в реальном времени могут дать начало новой отрасли. На этом развивающемся рынке производители аппаратного обеспечения ZK с большими возможностями и преимуществом первопроходца потенциально могут стать следующим Bitmain, доминирующим в области аппаратного ускорения. Cysic выделяется как один из самых многообещающих игроков в этой области. Команда завоевала заметные награды от платформы для технологических соревнований ZKP ZPrize и начала наставничество для ZPrize в 2023 году. Их дорожная карта включает в себя майнинговые пулы ZK ToB (business-to-business) и аппаратное обеспечение ZK-Depin ToC (business-to-consumer), что привлекает значительные инвестиции от ведущих венчурных фондов, таких как Polychain, ABCDE, OKX Ventures и Hashkey, что привело к финансированию почти в размере 20 миллионов долларов.
Поскольку Cysic готовится запустить свой тестовую сеть в конце июля и открыть свой пул для майнинга ZK, обсуждения о компании набирают обороты в различных сообществах. Целью этой статьи является знакомство большего числа людей с концепциями продуктов и бизнес-моделью Cysic, предоставляя доступный обзор принципов аппаратного ускорения ZK. В следующих разделах мы кратко опишем ключевые аспекты Cysic, что облегчит понимание для читателей.
Система доказательства ZK (Zero-Knowledge) является сложной, но мы можем упростить ее понимание, разбив ее на функции и рабочий процесс. Вот базовый обзор того, как работает система, разработанная для применения ZK к обычным вычислениям: Сначала пользователь взаимодействует с системой ZK через интерфейс фронт-энда, представляя контент, который они хотят доказать. Фронт-энд затем преобразует этот контент в формат, подходящий для обработки системой доказательства ZK. Система использует определенную систему доказательства или фреймворк (например, Halo2 или Plonk) для генерации доказательства ZK. Этот процесс включает несколько ключевых шагов:
Для систем, таких как zkEVM, обычно используемых в решениях Ethereum Layer 2, смарт-контракты сначала компилируются в байт-код EVM (Ethereum Virtual Machine). Затем каждый опкод преобразуется в логические вентили или полиномиальные ограничения перед дальнейшей обработкой бекенд-системой ZK proof.
Важно отметить, что zk-SNARKs (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) являются наиболее часто используемой технологией ZKP в блокчейне на сегодняшний день. Многие ZK-роллапы используют лаконичность SNARK, а не их свойство нулевого разглашения. Лаконичность относится к способности ZKP сжимать большие объемы данных в несколько сотен байт, что значительно снижает затраты на проверку. Это приводит к асимметрии между рабочей нагрузкой Проверяющего и Верификатора: в то время как Проверяющему создание ZKP обходится дорого, Проверяющему относительно недорого его проверяет. Используя эту асимметрию, сценарий с одним проверяющим и несколькими проверяющими может значительно снизить общую стоимость на стороне проверяющего. Эта модель особенно выгодна для децентрализованной верификации, как это предусмотрено решениями уровня 2 Ethereum.
Однако эту модель переложения затрат на проверку на процесс генерации ZKP нельзя считать панацеей. Для проектов ZK Rollup высокая стоимость генерации ZKP неизбежно отразится на пользовательском опыте и комиссиях за транзакции, что может затруднить долгосрочное принятие ZK Rollups. Несмотря на потенциал ZK в бездоверительной и децентрализованной верификации, текущие экономические условия не поддерживают крупномасштабную реализацию zkEVM, zkVM, ZK Rollups или ZK-мостов из-за временных ограничений, связанных с генерацией доказательств. Это привело к появлению проектов ускорения ZK, таких как Cysic, Ingonyama и Irreducible, каждый из которых работает над снижением стоимости генерации ZKP с разных сторон. В следующем разделе мы кратко обсудим основные вычислительные затраты и техники ускорения генерации ZKP, а также почему Cysic имеет значительный потенциал в пространстве ускорения ZK.
Широко известно, что генерация доказательств в системах ZK занимает много времени у Проверяющего. В протоколе ZK-SNARK Проверяющий может проверить доказательство всего за одну секунду, но Генератору может потребоваться полдня или даже целый день, чтобы сгенерировать это доказательство. Для оптимизации использования вычислений ZKP необходимо преобразовать формат вычисления из классического программирования в формат, дружественный ZK.
В настоящее время существует два основных метода достижения этой цели: один включает в себя написание схем с использованием платформ системы доказательства, таких как Halo2, а другой включает использование предметно-ориентированных языков (DSL), таких как Cairo или Circom, для перевода вычислений в промежуточный формат, который затем может быть отправлен в систему доказательств. Система доказательств генерирует ZK-доказательства на основе этих схем или промежуточных форматов, скомпилированных DSL. Чем сложнее операции, тем больше времени требуется для создания доказательства. Более того, некоторые операции по своей сути недружественны к ZK и требуют дополнительных усилий для реализации. Например, хеш-функции, такие как SHA или Keccak, несовместимы с ZKP, что означает, что их использование увеличивает время генерации доказательств. Даже операции, которые недорого выполнять на классических компьютерах, могут быть неэффективными для ZKP.
За исключением этих задач, недружественных к ZK, узкие места в процессе генерации доказательств довольно похожи в разных системах доказательств. Есть две основные вычислительные задачи, которые потребляют большую часть ресурсов при генерации ZK-доказательств: MSM (Multi-Scalar Multiplication) и NTT (Number Theoretic Transform). На эти две задачи может приходиться 80-95% времени генерации доказательств, в зависимости от схемы обязательств ZKP и конкретной реализации. MSM включает в себя выполнение мультискалярного умножения на эллиптических кривых, в то время как NTT представляет собой БПФ (быстрое преобразование Фурье) на конечных полях, используемое для ускорения умножения полиномов. Различные комбинации этих задач могут привести к различному распределению нагрузки между БПФ и МСМ. Например, Старк использует FRI, схему обязательств на основе хэша, которая не включает MSM, в отличие от схем на основе эллиптических кривых, таких как KZG или IPA. Как правило, чем больше операций БПФ требуется, тем меньше операций МСМ, и наоборот.
Операции MSM характеризуются предсказуемым доступом к памяти, что позволяет высокую параллелизацию, но требует значительных ресурсов памяти. Однако MSM также представляет вызовы масштабируемости; даже с параллелизацией он все равно может быть медленным. Хотя аппаратное ускорение может помочь ускорить MSM, оно требует значительных ресурсов памяти и параллельных вычислений.
NTT, с другой стороны, включает случайный доступ к памяти, что делает его менее подходящим для аппаратного ускорения и вызывает трудности в обработке в распределенных системах. Это связано с тем, что случайный доступ NTT часто требует доступа к данным с других узлов в распределенной среде. Когда взаимодействие по сети необходимо, производительность может значительно снижаться.
Поэтому доступ и перемещение хранимых данных становятся основными узкими местами, ограничивая возможность параллелизации операций NTT. Большинство усилий по ускорению NTT сосредоточены на управлении взаимодействием вычислений с памятью.
Фактически, наиболее простой способ устранить проблему эффективности MSM и NTT - это вообще отказаться от этих операций. Некоторые недавно предложенные алгоритмы, такие как Hyperplonk, модифицируют Plonk, чтобы устранить операции NTT, что делает Hyperplonk более легким для ускорения, хотя он вводит новые узкие места. Другие примеры включают вычислительно дорогостоящий протокол проверки сумм или алгоритм STARK, который устраняет MSM, но добавляет значительные вычисления хеша через свой протокол FRI.
Хотя программные и алгоритмические оптимизации являются необходимыми и ценными, они имеют очевидные ограничения. Для полной оптимизации эффективности генерации ZKP жизненно важно аппаратное ускорение, подобно тому, как ASIC и GPU в конечном итоге доминировали на рынках майнинга BTC и ETH.
Вопрос тогда становится: какое оборудование лучше всего подходит для ускорения генерации ZKP? В настоящее время доступны несколько вариантов аппаратного ускорения ZK, такие как графические процессоры (GPUs), ПЛИС или ASIC, у каждого из которых есть свои преимущества и недостатки.
Чтобы лучше понять различия в процессах разработки между аппаратными средствами GPU, FPGA и ASIC, рассмотрим простой пример: реализацию параллельного умножения.
Каждая аппаратная опция имеет свои сильные и слабые стороны, что делает их подходящими для различных этапов развития технологии ZK. Цель Cysic - стать конечным решением для ускорения аппаратного обеспечения ZK, используя фазированную стратегию:
Давайте исследуем эти различные подобласти, чтобы лучше понять различия между решениями по ускорению ZK и подходом к разработке Cysic.
ZK Mining Pool and SaaS Platform: Cysic Network
И Scroll, и Polygon zkEVM предложили концепцию «децентрализованного Prover» в своих планах, что в основном означает создание майнинговых пулов ZK. Такой рыночно-ориентированный подход помогает проектам ZK Rollup снизить свою нагрузку, стимулируя при этом майнеров и операторов майнинговых пулов постоянно оптимизировать решения по ускорению ZK. В планах Cysic разработка майнингового пула и SaaS-платформы под названием Cysic Network, которая интегрирует вычислительные мощности Cysic и привлечет сторонние ресурсы с помощью стимулов для майнинга, включая неиспользуемые GPU и устройства zk DePIN, принадлежащие пользователям. Вся рабочий процесс верификации работает следующим образом:
Подробный процесс взаимодействия следующий
В этом процессе для определенных действий, таких как стейкинг активов, распределение поощрений и отправка задач, требуется специальная платформа, поддерживаемая инфраструктурой блокчейна. Чтобы удовлетворить эту потребность, Cysic Network разработала специальную публичную цепочку с уникальным алгоритмом консенсуса под названием Proof of Compute (PoC). Этот алгоритм использует функцию VRF и историческую производительность Prover, такую как доступность устройства, количество отправленных подтверждений, точность подтверждения и т. д., для выбора производителей блоков, ответственных за создание блоков (эти блоки, вероятно, записывают информацию об устройстве и распределяют поощрения в виде токенов). Помимо майнинг-пула ZK и платформы SaaS, Cysic широко развернула решения для ускорения ZK на основе различного оборудования. Давайте рассмотрим достижения Cysic в технологиях GPU, FPGA и ASIC.
Суть аппаратного ускорения ZK (Zero-Knowledge) заключается в максимизации параллелизации ключевых вычислений. С аппаратной точки зрения ЦП предназначены для максимальной гибкости и универсального использования. Однако значительная часть чип-площади ЦП посвящена функциям управления и различным уровням кэш-памяти, что ограничивает его параллельные вычислительные возможности. В отличие от этого, большая часть чип-площади ГПУ выделяется под вычисления, что позволяет ему поддерживать масштабные параллельные вычисления. ГПУ теперь широко доступны, и библиотеки, такие как Nvidia CUDA, позволяют разработчикам использовать параллелизм ГПУ, не имея глубоких знаний об аппаратной основе. SDK CUDA предоставляет фреймворк для ускорения вычислений MSM (Multi-Scalar Multiplication) и NTT (Number Theoretic Transform) с использованием библиотек CUDA ZK.
FPGA (Field-Programmable Gate Array) использует другой подход, состоящий из массивов множества небольших процессоров. Для программирования ПЛИС разработчики должны использовать специализированный язык описания аппаратного обеспечения (HDL), который затем компилируется в комбинации транзисторных схем. По сути, FPGA реализует определенные алгоритмы непосредственно через транзисторные схемы, минуя процесс компиляции традиционной системы команд. Такой подход обеспечивает гораздо большую настройку и гибкость по сравнению с графическими процессорами. В настоящее время цены на FPGA составляют около одной трети от цен на графические процессоры, и они могут быть более чем в десять раз более энергоэффективными. Это преимущество энергоэффективности отчасти связано с тем, что графические процессоры необходимо подключать к хост-устройству, которое обычно потребляет много энергии. FPGA может добавлять больше вычислительных модулей для удовлетворения требований MSM и NTT без увеличения энергопотребления, что делает ее особенно подходящей для сценариев с большим объемом вычислений, высокой пропускной способностью данных и низким временем отклика. Однако самой большой проблемой FPGA является нехватка разработчиков с необходимым опытом программирования. Для проектных команд ZK собрать команду, обладающую как опытом в области криптографии, так и инженерными знаниями в области FPGA, является чрезвычайно сложной задачей.
ASIC (Application-Specific Integrated Circuit) - самый специализированный из трех, по сути, реализует программу исключительно в аппаратуре. После разработки ASIC аппаратная конфигурация зафиксирована и не может быть изменена, что означает, что он может выполнять только определенные задачи. Преимущества FPGA в ускорении MSM и NTT также применимы к ASIC, но поскольку ASIC разработан для конкретного приложения, он обеспечивает максимальную эффективность и наименьшее энергопотребление среди всех вариантов аппаратного обеспечения. Для основных ZK-схем сегодня Cysic стремится достичь времени доказательства от 1 до 5 секунд, что может обеспечить только ASIC. Хотя эти преимущества крайне привлекательны, технология ZK быстро развивается, а циклы проектирования и производства ASIC обычно занимают 1-2 года и стоят от 10 до 20 миллионов долларов. Поэтому масштабное производство должно ждать стабилизации технологии ZK, чтобы избежать производства устаревших микросхем.
Для решения этих проблем Cysic сделала всесторонние инвестиции в три категории аппаратных средств: GPU, FPGA и ASIC. В области GPU-ускорения Cysic адаптировала себя к появлению различных новых ZK-систем доказательств через свой собственный разработанный CUDA SDK. Собирая ресурсы сообщества, Cysic подключила десятки тысяч топовых GPU в свою сеть GPU-вычислений, достигая улучшения скорости на 50%-80% или больше по сравнению с последними открытыми фреймворками. В области FPGA Cysic разработала решения, устанавливающие мировые стандарты производительности для MSM, NTT и Poseidon Merkle tree модулей, охватывающие наиболее критические компоненты ZK-вычислений. Эти решения были прототипно протестированы и подтверждены несколькими ведущими проектами ZK. Собственный продукт Cysic SolarMSM может выполнять вычисления MSM масштаба 2^30 за всего 0.195 секунды, а SolarNTT может выполнять вычисления NTT масштаба 2^30 за 0.218 секунды, что делает их самыми быстродействующими результатами аппаратного ускорения на FPGA в настоящее время.
В сфере ASIC, хотя широкое принятие ZK ASIC все еще может занять некоторое время, Cysic уже заняла свою позицию на этом развивающемся рынке, разработав собственные микросхемы и устройства ZK DePIN. Чтобы привлечь пользователей-потребителей и удовлетворить разнообразные требования к производительности и стоимости различных проектов ZK, Cysic планирует представить два аппаратных продукта ZK: ZK Air и ZK Pro.
Через эти два устройства Cysic стремится создать стабильную и надежную сеть ZK-DePIN. Оба ZK Air и ZK Pro в настоящее время находятся в стадии разработки, с ожидаемым выпуском в 2025 году. Кроме того, сеть Cysic позволит потребительским пользователям войти на рынок аппаратного ускорения ZK с очень низкими барьерами для входа. В сочетании с высоким спросом на вычислительную мощность со стороны команд проектов ZK, это может зажечь новую волну энтузиазма, аналогичную буму майнинга биткойнов, что потенциально может привести к взрывному росту на рынке вычислений ZK.