En abril, Vitalik asistió a la Cumbre de Blockchain de Hong Kong y pronunció un discurso titulado "Alcanzando los límites del diseño de protocolo", donde destacó el potencial de ZK-SNARKs dentro de la hoja de ruta Danksharding de Ethereum y discutió el papel prometedor de los chips ASIC en la aceleración de los procesos ZK. Anteriormente, el cofundador de Scroll, Zhang Ye, sugirió que las posibles aplicaciones de ZK podrían ser incluso mayores en sectores tradicionales que en Web3, con una demanda significativa en áreas como la informática confiable, las bases de datos, el hardware verificable, la autenticación de contenido y zkML. Si la generación de pruebas ZK en tiempo real se vuelve factible, podría llevar a cambios transformadores tanto en Web3 como en las industrias tradicionales. Sin embargo, desde el punto de vista de la eficiencia y el costo, la adopción generalizada de ZK aún está lejos.
En 2022, las principales empresas de capital de riesgo a16z y Paradigm publicaron informes subrayando la importancia de la aceleración de hardware ZK. Paradigm llegó tan lejos como para predecir que las ganancias futuras para los mineros de ZK podrían rivalizar con las de los mineros de Bitcoin o Ethereum, con soluciones de aceleración de hardware basadas en GPU, FPGA y ASIC listas para capturar un mercado significativo. Tras el surgimiento de ZK Rollups como Scroll y Starknet, la aceleración de hardware se ha convertido en un tema candente, y el interés se ha intensificado con el próximo lanzamiento de proyectos como Cysic.
Dada la gran demanda de ZK, es probable que los grupos de minería de ZK y los modelos de generación de ZKP en tiempo real puedan dar lugar a una nueva industria. En este mercado emergente, los fabricantes de hardware de ZK con sólidas capacidades y ventajas de ser los primeros en moverse podrían convertirse potencialmente en el próximo Bitmain, dominando el campo de la aceleración de hardware. Cysic se destaca como uno de los jugadores más prometedores en este espacio. El equipo ha ganado premios destacados de la plataforma de competencia tecnológica ZKP ZPrize y comenzó a ser mentor de ZPrize en 2023. Su hoja de ruta incluye piscinas de minería de ZK de ToB (de empresa a empresa) y hardware ZK-Depin de ToC (de empresa a consumidor), atrayendo una inversión sustancial de los principales VCs como Polychain, ABCDE, OKX Ventures y Hashkey, lo que resulta en casi $20 millones en financiamiento.
A medida que Cysic se prepara para lanzar su testnet a finales de julio y abrir su grupo de minería de ZK, las discusiones sobre la empresa se están intensificando en diversas comunidades. Este artículo tiene como objetivo presentar a más personas los conceptos de productos y el modelo de negocio de Cysic, al tiempo que proporciona una visión general accesible de los principios de aceleración de hardware de ZK. En las secciones siguientes, delinearemos brevemente los aspectos clave de Cysic, lo que facilitará a los lectores su comprensión.
El sistema de prueba ZK (Zero-Knowledge) es complejo, pero podemos simplificar su comprensión desglosándolo a través de sus funciones y flujo de trabajo. Aquí hay una descripción general básica de cómo funciona un sistema diseñado para aplicar ZK a cálculos ordinarios: Primero, el usuario interactúa con el sistema ZK a través de una interfaz frontal, enviando el contenido que desea demostrar. Luego, la interfaz frontal convierte este contenido en un formato adecuado para ser procesado por el sistema de prueba ZK. El sistema utiliza un sistema de prueba o marco específico (como Halo2 o Plonk) para generar una Prueba ZK. Este proceso incluye varios pasos clave:
Para sistemas como zkEVM, comúnmente utilizados en soluciones de capa 2 de Ethereum, los contratos inteligentes se compilan primero en bytecode de EVM (Máquina Virtual de Ethereum). Luego, cada opcode se convierte en circuitos de compuerta lógica o restricciones polinomiales antes de ser procesado más adelante por el sistema de prueba ZK en el backend.
Es importante tener en cuenta que zk-SNARKs (Argumento de Conocimiento Sucinto No Interactivo Zero-Knowledge) es la tecnología ZKP más comúnmente utilizada en la cadena de bloques hoy en día. Muchos ZK Rollups aprovechan la concisión de SNARKs en lugar de su propiedad de conocimiento cero. La concisión se refiere a la capacidad de ZKP para comprimir grandes cantidades de datos en unos pocos cientos de bytes, lo que reduce significativamente los costos de verificación. Esto resulta en una asimetría entre la carga de trabajo del Proveedor y el Verificador: aunque es costoso para el Proveedor generar el ZKP, es relativamente barato para el Verificador verificarlo. Al aprovechar esta asimetría, un escenario con un Proveedor y múltiples Verificadores puede reducir significativamente el costo total en el lado del Verificador. Este modelo es particularmente ventajoso para la verificación descentralizada, como se concibe en las soluciones de la Capa 2 de Ethereum.
Sin embargo, este modelo de transferencia de costos de verificación al proceso de generación de ZKP no es una solución definitiva. Para proyectos de ZK Rollup, el alto costo de generar ZKP inevitablemente se trasladará a la experiencia del usuario y las tarifas de transacción, lo que podría obstaculizar la adopción a largo plazo de ZK Rollups. A pesar del potencial de ZK en la verificación sin confianza y descentralizada, las condiciones económicas actuales no respaldan la implementación a gran escala de zkEVM, zkVM, ZK Rollups o ZK bridges debido a las limitaciones de tiempo asociadas con la generación de pruebas. Esto ha llevado al surgimiento de proyectos de aceleración de ZK como Cysic, Ingonyama e Irreducible, cada uno trabajando para reducir el costo de generación de ZKP desde diferentes ángulos. En la siguiente sección, discutiremos brevemente los principales costos computacionales y técnicas de aceleración para la generación de ZKP, y por qué Cysic tiene un potencial significativo en el espacio de aceleración de ZK.
Es ampliamente conocido que generar pruebas en sistemas ZK consume mucho tiempo para el Proveedor. En el protocolo ZK-SNARK, un Verificador podría ser capaz de verificar una prueba en solo un segundo, pero al Proveedor le podría llevar medio día o incluso un día completo generar esa prueba. Para optimizar el uso de las computaciones ZKP, es necesario convertir el formato de computación desde la programación clásica a un formato compatible con ZK.
Actualmente existen dos métodos principales para lograr esto: uno consiste en escribir circuitos utilizando marcos de sistemas de prueba como Halo2, mientras que el otro consiste en utilizar lenguajes específicos de dominio (DSL) como Cairo o Circom, para traducir cálculos en un formato intermedio que luego se puede enviar al sistema de prueba. El sistema de prueba genera pruebas ZK basadas en estos circuitos o los formatos intermedios compilados por los DSL. Cuanto más complejas sean las operaciones, más tiempo tomará generar la prueba. Además, algunas operaciones son inherentemente incompatibles con ZK y requieren esfuerzos adicionales para implementar. Por ejemplo, las funciones hash como SHA o Keccak son incompatibles con ZKP, lo que significa que su uso aumenta el tiempo de generación de pruebas. Incluso las operaciones que son económicas de ejecutar en computadoras clásicas pueden no ser eficientes para ZKP.
Excluyendo estas tareas no amigables con ZK, los cuellos de botella en el proceso de generación de pruebas son bastante similares en diferentes sistemas de prueba. Hay dos tareas computacionales principales que consumen la mayoría de los recursos en la generación de pruebas de ZK: MSM (Multiplicación de Múltiples Escalares) y NTT (Transformación Teórica de Números). Estas dos tareas pueden representar entre el 80 y el 95% del tiempo de generación de pruebas, dependiendo del esquema de compromiso ZKP y de la implementación específica. MSM implica realizar una multiplicación de múltiples escalares en curvas elípticas, mientras que NTT es una FFT (Transformada Rápida de Fourier) en campos finitos utilizada para acelerar la multiplicación de polinomios. Diferentes combinaciones de estas tareas pueden resultar en distribuciones de carga variables entre FFT y MSM. Por ejemplo, Stark utiliza FRI, un esquema de compromiso basado en hash que no implica MSM, a diferencia de los esquemas basados en curvas elípticas como KZG o IPA. En general, cuanto más operaciones de FFT se requieran, menos operaciones de MSM y viceversa.
Las operaciones de MSM se caracterizan por un acceso a la memoria predecible, lo que permite una alta paralelización pero exige recursos de memoria significativos. Sin embargo, MSM también presenta desafíos de escalabilidad; incluso con la paralelización, puede seguir siendo lento. Aunque la aceleración de hardware puede ayudar a acelerar MSM, requiere recursos sustanciales de memoria y computación paralela.
NTT, por otro lado, implica acceso aleatorio a la memoria, lo que lo hace menos adecuado para la aceleración de hardware y desafiante de manejar en sistemas distribuidos. Esto se debe a que la naturaleza de acceso aleatorio de NTT a menudo requiere acceder a datos de otros nodos en un entorno distribuido. Cuando es necesaria la interacción en red, el rendimiento puede verse afectado drásticamente.
Por lo tanto, el acceso y movimiento de los datos almacenados se convierten en importantes cuellos de botella, limitando la capacidad de paralelizar las operaciones de NTT. La mayoría de los esfuerzos para acelerar NTT se centran en gestionar cómo interactúa la computación con la memoria.
De hecho, la forma más sencilla de abordar el cuello de botella de eficiencia de MSM y NTT es eliminar por completo estas operaciones. Algunos algoritmos recién propuestos, como Hyperplonk, modifican Plonk para eliminar las operaciones NTT, lo que facilita la aceleración de Hyperplonk, aunque introduce nuevos cuellos de botella. Otros ejemplos incluyen el protocolo de verificación de suma computacionalmente costoso o el algoritmo STARK, que elimina MSM pero agrega una computación de hash significativa a través de su protocolo FRI.
Si bien las optimizaciones de software y algorítmicas son esenciales y valiosas, tienen limitaciones claras. Para optimizar completamente la eficiencia de la generación de ZKP, la aceleración de hardware es crucial, al igual que las ASIC y las GPU que eventualmente dominaron los mercados de minería de BTC y ETH.
Entonces la pregunta es: ¿cuál es el mejor hardware para acelerar la generación de ZKP? Actualmente, hay varias opciones de hardware disponibles para la aceleración de ZK, como GPUs, FPGAs o ASICs, cada una con sus propias ventajas y desventajas.
Para comprender mejor las diferencias en los procesos de desarrollo en GPU, FPGA y hardware ASIC, consideremos un ejemplo sencillo: la implementación de una multiplicación paralela.
Cada opción de hardware tiene sus fortalezas y debilidades, lo que las hace adecuadas para diferentes etapas del desarrollo de la tecnología ZK. El objetivo de Cysic es convertirse en la solución definitiva para la aceleración de hardware ZK, utilizando una estrategia gradual:
Exploraremos estos diversos subcampos para comprender mejor las diferencias entre las soluciones de aceleración ZK y el enfoque de desarrollo de Cysic.
ZK Grupo Minero y Plataforma SaaS: Red Cysic
Tanto Scroll como Polygon zkEVM han propuesto el concepto de un 'Probador descentralizado' en sus hojas de ruta, lo que significa esencialmente la construcción de piscinas de minería ZK. Este enfoque impulsado por el mercado ayuda a los proyectos de ZK Rollup a reducir su carga de trabajo a la vez que incentiva a los mineros y a los operadores de piscinas de minería a optimizar continuamente las soluciones de aceleración ZK. La hoja de ruta de Cysic incluye el desarrollo de una piscina de minería ZK y una plataforma SaaS llamada Cysic Network, que integrará la potencia informática de Cysic y atraerá recursos de terceros a través de incentivos de minería, incluidas las GPUs inactivas y los dispositivos zk DePIN de propiedad del consumidor. Todo el flujo de trabajo de verificación funciona de la siguiente manera:
El proceso detallado de interacción es el siguiente
En este proceso, ciertas acciones, como el staking de activos, la distribución de incentivos y la presentación de tareas, requieren una plataforma dedicada respaldada por infraestructura de blockchain. Para satisfacer esta necesidad, Cysic Network ha desarrollado una cadena pública dedicada con un algoritmo de consenso único llamado Prueba de Cómputo (PoC). Este algoritmo utiliza la función VRF y el rendimiento histórico del probador, como la disponibilidad del dispositivo, la cantidad de pruebas presentadas, precisión de la prueba, etc., para seleccionar los productores de bloques responsables de crear bloques (estos bloques probablemente registran información del dispositivo y distribuyen incentivos de tokens). Más allá del grupo de minería ZK y la plataforma SaaS, Cysic ha realizado implementaciones extensas en soluciones de aceleración ZK basadas en hardware diferente. Vamos a explorar los logros de Cysic en tecnología de GPU, FPGA y ASIC.
La esencia de la aceleración de hardware ZK (Zero-Knowledge) radica en maximizar la paralelización de los cálculos clave. Desde una perspectiva de hardware, las CPUs están diseñadas para obtener la máxima flexibilidad y uso general. Sin embargo, una parte significativa del área de la CPU está dedicada a funciones de control y varios niveles de caché, lo que limita sus capacidades de cómputo paralelo. En contraste, una proporción mayor del área del chip de una GPU se destina a la computación, lo que le permite admitir el procesamiento paralelo a gran escala. Las GPUs ahora están ampliamente disponibles, y bibliotecas como Nvidia CUDA permiten a los desarrolladores aprovechar el paralelismo de las GPU sin necesidad de tener un profundo conocimiento del hardware subyacente. El SDK de CUDA proporciona un marco para acelerar los cálculos de MSM (Multi-Scalar Multiplication) y NTT (Number Theoretic Transform) utilizando las bibliotecas CUDA ZK.
FPGA (Field-Programmable Gate Array) adopta un enfoque diferente, que comprende matrices de numerosas unidades de procesamiento pequeñas. Para programar un FPGA, los desarrolladores deben usar un lenguaje de descripción de hardware (HDL) especializado, que luego se compila en combinaciones de circuitos de transistores. Esencialmente, FPGA implementa algoritmos específicos directamente a través de circuitos de transistores, evitando el proceso de compilación del sistema de instrucciones tradicional. Este enfoque ofrece mucha más personalización y flexibilidad en comparación con las GPU. Actualmente, los precios de FPGA son aproximadamente un tercio de los precios de las GPU, y pueden ser más de diez veces más eficientes en energía. Esta ventaja en eficiencia energética se debe en parte a que las GPU necesitan estar conectadas a un dispositivo anfitrión, que consume típicamente mucha energía. FPGA puede agregar más módulos de cómputo para satisfacer las demandas de MSM y NTT sin aumentar el consumo de energía, lo que lo hace especialmente adecuado para escenarios de prueba ZK que son intensivos en cómputo, requieren un alto rendimiento de datos y necesitan tiempos de respuesta bajos. Sin embargo, el mayor desafío con FPGA es la escasez de desarrolladores con la experiencia de programación necesaria. Para los equipos de proyectos ZK, reunir un equipo con experiencia tanto en criptografía como en ingeniería de FPGA es extremadamente desafiante.
ASIC (Circuito Integrado Específico de Aplicación) es el más especializado de los tres, implementando esencialmente un programa completamente en hardware. Una vez que se diseña un ASIC, la configuración del hardware queda fija y no se puede alterar, lo que significa que solo puede realizar tareas específicas. Las ventajas de FPGA en la aceleración de MSM y NTT también se aplican a ASIC, pero debido a que ASIC está diseñado para una aplicación específica, ofrece la mayor eficiencia y el menor consumo de energía entre todas las opciones de hardware. Para los circuitos ZK de uso general en la actualidad, Cysic tiene como objetivo lograr tiempos de prueba de 1-5 segundos, que solo ASIC puede ofrecer. Si bien estos beneficios son muy atractivos, la tecnología ZK está evolucionando rápidamente, y los ciclos de diseño y producción de ASIC suelen tardar de 1 a 2 años y costar entre 10 y 20 millones de dólares. Por lo tanto, la producción a gran escala debe esperar hasta que la tecnología ZK se estabilice para evitar producir chips que rápidamente se vuelvan obsoletos.
Para abordar estos desafíos, Cysic ha invertido de manera integral en las tres categorías de hardware: GPU, FPGA y ASIC. En cuanto a la aceleración de GPU, Cysic se ha adaptado a la aparición de varios nuevos sistemas de prueba ZK a través de su propio SDK de aceleración de CUDA. Al consolidar los recursos de la comunidad, Cysic ha conectado decenas de miles de GPU de primer nivel en su red de computación de GPU, logrando mejoras de velocidad del 50% al 80% o más en comparación con los últimos marcos de código abierto. En el espacio FPGA, Cysic ha desarrollado soluciones que establecen puntos de referencia de rendimiento globales para los módulos de árbol Merkle MSM, NTT y Poseidon, que cubren los componentes más críticos del cálculo ZK. Estas soluciones han sido probadas y validadas mediante prototipos por varios proyectos líderes de ZK. El SolarMSM patentado de Cysic puede completar cálculos MSM de escala 2^30 en solo 0,195 segundos, mientras que SolarNTT puede realizar cálculos NTT de escala 2^30 en 0,218 segundos, lo que los convierte en los resultados de aceleración de hardware FPGA de mayor rendimiento disponibles en la actualidad.
En el campo de los ASIC, si bien la adopción generalizada de los ZK ASIC puede tardar algún tiempo, Cysic ya se ha posicionado en este mercado emergente desarrollando sus propios chips y dispositivos ZK DePIN. Para atraer a los usuarios consumidores y satisfacer los diversos requisitos de rendimiento y costos de diferentes proyectos ZK, Cysic planea presentar dos productos de hardware ZK: ZK Air y ZK Pro.
A través de estos dos dispositivos, Cysic tiene como objetivo crear una red ZK-DePIN estable y confiable. Tanto ZK Air como ZK Pro están actualmente en desarrollo, con un lanzamiento previsto en 2025. Además, la Red Cysic permitirá a los usuarios consumidores ingresar al mercado de aceleración de hardware ZK con barreras de entrada muy bajas. Junto con la alta demanda de potencia computacional de los equipos de proyectos ZK, esto podría encender una nueva ola de entusiasmo similar al auge de la minería de Bitcoin, lo que podría llevar a un crecimiento explosivo en el mercado de computación ZK.
En abril, Vitalik asistió a la Cumbre de Blockchain de Hong Kong y pronunció un discurso titulado "Alcanzando los límites del diseño de protocolo", donde destacó el potencial de ZK-SNARKs dentro de la hoja de ruta Danksharding de Ethereum y discutió el papel prometedor de los chips ASIC en la aceleración de los procesos ZK. Anteriormente, el cofundador de Scroll, Zhang Ye, sugirió que las posibles aplicaciones de ZK podrían ser incluso mayores en sectores tradicionales que en Web3, con una demanda significativa en áreas como la informática confiable, las bases de datos, el hardware verificable, la autenticación de contenido y zkML. Si la generación de pruebas ZK en tiempo real se vuelve factible, podría llevar a cambios transformadores tanto en Web3 como en las industrias tradicionales. Sin embargo, desde el punto de vista de la eficiencia y el costo, la adopción generalizada de ZK aún está lejos.
En 2022, las principales empresas de capital de riesgo a16z y Paradigm publicaron informes subrayando la importancia de la aceleración de hardware ZK. Paradigm llegó tan lejos como para predecir que las ganancias futuras para los mineros de ZK podrían rivalizar con las de los mineros de Bitcoin o Ethereum, con soluciones de aceleración de hardware basadas en GPU, FPGA y ASIC listas para capturar un mercado significativo. Tras el surgimiento de ZK Rollups como Scroll y Starknet, la aceleración de hardware se ha convertido en un tema candente, y el interés se ha intensificado con el próximo lanzamiento de proyectos como Cysic.
Dada la gran demanda de ZK, es probable que los grupos de minería de ZK y los modelos de generación de ZKP en tiempo real puedan dar lugar a una nueva industria. En este mercado emergente, los fabricantes de hardware de ZK con sólidas capacidades y ventajas de ser los primeros en moverse podrían convertirse potencialmente en el próximo Bitmain, dominando el campo de la aceleración de hardware. Cysic se destaca como uno de los jugadores más prometedores en este espacio. El equipo ha ganado premios destacados de la plataforma de competencia tecnológica ZKP ZPrize y comenzó a ser mentor de ZPrize en 2023. Su hoja de ruta incluye piscinas de minería de ZK de ToB (de empresa a empresa) y hardware ZK-Depin de ToC (de empresa a consumidor), atrayendo una inversión sustancial de los principales VCs como Polychain, ABCDE, OKX Ventures y Hashkey, lo que resulta en casi $20 millones en financiamiento.
A medida que Cysic se prepara para lanzar su testnet a finales de julio y abrir su grupo de minería de ZK, las discusiones sobre la empresa se están intensificando en diversas comunidades. Este artículo tiene como objetivo presentar a más personas los conceptos de productos y el modelo de negocio de Cysic, al tiempo que proporciona una visión general accesible de los principios de aceleración de hardware de ZK. En las secciones siguientes, delinearemos brevemente los aspectos clave de Cysic, lo que facilitará a los lectores su comprensión.
El sistema de prueba ZK (Zero-Knowledge) es complejo, pero podemos simplificar su comprensión desglosándolo a través de sus funciones y flujo de trabajo. Aquí hay una descripción general básica de cómo funciona un sistema diseñado para aplicar ZK a cálculos ordinarios: Primero, el usuario interactúa con el sistema ZK a través de una interfaz frontal, enviando el contenido que desea demostrar. Luego, la interfaz frontal convierte este contenido en un formato adecuado para ser procesado por el sistema de prueba ZK. El sistema utiliza un sistema de prueba o marco específico (como Halo2 o Plonk) para generar una Prueba ZK. Este proceso incluye varios pasos clave:
Para sistemas como zkEVM, comúnmente utilizados en soluciones de capa 2 de Ethereum, los contratos inteligentes se compilan primero en bytecode de EVM (Máquina Virtual de Ethereum). Luego, cada opcode se convierte en circuitos de compuerta lógica o restricciones polinomiales antes de ser procesado más adelante por el sistema de prueba ZK en el backend.
Es importante tener en cuenta que zk-SNARKs (Argumento de Conocimiento Sucinto No Interactivo Zero-Knowledge) es la tecnología ZKP más comúnmente utilizada en la cadena de bloques hoy en día. Muchos ZK Rollups aprovechan la concisión de SNARKs en lugar de su propiedad de conocimiento cero. La concisión se refiere a la capacidad de ZKP para comprimir grandes cantidades de datos en unos pocos cientos de bytes, lo que reduce significativamente los costos de verificación. Esto resulta en una asimetría entre la carga de trabajo del Proveedor y el Verificador: aunque es costoso para el Proveedor generar el ZKP, es relativamente barato para el Verificador verificarlo. Al aprovechar esta asimetría, un escenario con un Proveedor y múltiples Verificadores puede reducir significativamente el costo total en el lado del Verificador. Este modelo es particularmente ventajoso para la verificación descentralizada, como se concibe en las soluciones de la Capa 2 de Ethereum.
Sin embargo, este modelo de transferencia de costos de verificación al proceso de generación de ZKP no es una solución definitiva. Para proyectos de ZK Rollup, el alto costo de generar ZKP inevitablemente se trasladará a la experiencia del usuario y las tarifas de transacción, lo que podría obstaculizar la adopción a largo plazo de ZK Rollups. A pesar del potencial de ZK en la verificación sin confianza y descentralizada, las condiciones económicas actuales no respaldan la implementación a gran escala de zkEVM, zkVM, ZK Rollups o ZK bridges debido a las limitaciones de tiempo asociadas con la generación de pruebas. Esto ha llevado al surgimiento de proyectos de aceleración de ZK como Cysic, Ingonyama e Irreducible, cada uno trabajando para reducir el costo de generación de ZKP desde diferentes ángulos. En la siguiente sección, discutiremos brevemente los principales costos computacionales y técnicas de aceleración para la generación de ZKP, y por qué Cysic tiene un potencial significativo en el espacio de aceleración de ZK.
Es ampliamente conocido que generar pruebas en sistemas ZK consume mucho tiempo para el Proveedor. En el protocolo ZK-SNARK, un Verificador podría ser capaz de verificar una prueba en solo un segundo, pero al Proveedor le podría llevar medio día o incluso un día completo generar esa prueba. Para optimizar el uso de las computaciones ZKP, es necesario convertir el formato de computación desde la programación clásica a un formato compatible con ZK.
Actualmente existen dos métodos principales para lograr esto: uno consiste en escribir circuitos utilizando marcos de sistemas de prueba como Halo2, mientras que el otro consiste en utilizar lenguajes específicos de dominio (DSL) como Cairo o Circom, para traducir cálculos en un formato intermedio que luego se puede enviar al sistema de prueba. El sistema de prueba genera pruebas ZK basadas en estos circuitos o los formatos intermedios compilados por los DSL. Cuanto más complejas sean las operaciones, más tiempo tomará generar la prueba. Además, algunas operaciones son inherentemente incompatibles con ZK y requieren esfuerzos adicionales para implementar. Por ejemplo, las funciones hash como SHA o Keccak son incompatibles con ZKP, lo que significa que su uso aumenta el tiempo de generación de pruebas. Incluso las operaciones que son económicas de ejecutar en computadoras clásicas pueden no ser eficientes para ZKP.
Excluyendo estas tareas no amigables con ZK, los cuellos de botella en el proceso de generación de pruebas son bastante similares en diferentes sistemas de prueba. Hay dos tareas computacionales principales que consumen la mayoría de los recursos en la generación de pruebas de ZK: MSM (Multiplicación de Múltiples Escalares) y NTT (Transformación Teórica de Números). Estas dos tareas pueden representar entre el 80 y el 95% del tiempo de generación de pruebas, dependiendo del esquema de compromiso ZKP y de la implementación específica. MSM implica realizar una multiplicación de múltiples escalares en curvas elípticas, mientras que NTT es una FFT (Transformada Rápida de Fourier) en campos finitos utilizada para acelerar la multiplicación de polinomios. Diferentes combinaciones de estas tareas pueden resultar en distribuciones de carga variables entre FFT y MSM. Por ejemplo, Stark utiliza FRI, un esquema de compromiso basado en hash que no implica MSM, a diferencia de los esquemas basados en curvas elípticas como KZG o IPA. En general, cuanto más operaciones de FFT se requieran, menos operaciones de MSM y viceversa.
Las operaciones de MSM se caracterizan por un acceso a la memoria predecible, lo que permite una alta paralelización pero exige recursos de memoria significativos. Sin embargo, MSM también presenta desafíos de escalabilidad; incluso con la paralelización, puede seguir siendo lento. Aunque la aceleración de hardware puede ayudar a acelerar MSM, requiere recursos sustanciales de memoria y computación paralela.
NTT, por otro lado, implica acceso aleatorio a la memoria, lo que lo hace menos adecuado para la aceleración de hardware y desafiante de manejar en sistemas distribuidos. Esto se debe a que la naturaleza de acceso aleatorio de NTT a menudo requiere acceder a datos de otros nodos en un entorno distribuido. Cuando es necesaria la interacción en red, el rendimiento puede verse afectado drásticamente.
Por lo tanto, el acceso y movimiento de los datos almacenados se convierten en importantes cuellos de botella, limitando la capacidad de paralelizar las operaciones de NTT. La mayoría de los esfuerzos para acelerar NTT se centran en gestionar cómo interactúa la computación con la memoria.
De hecho, la forma más sencilla de abordar el cuello de botella de eficiencia de MSM y NTT es eliminar por completo estas operaciones. Algunos algoritmos recién propuestos, como Hyperplonk, modifican Plonk para eliminar las operaciones NTT, lo que facilita la aceleración de Hyperplonk, aunque introduce nuevos cuellos de botella. Otros ejemplos incluyen el protocolo de verificación de suma computacionalmente costoso o el algoritmo STARK, que elimina MSM pero agrega una computación de hash significativa a través de su protocolo FRI.
Si bien las optimizaciones de software y algorítmicas son esenciales y valiosas, tienen limitaciones claras. Para optimizar completamente la eficiencia de la generación de ZKP, la aceleración de hardware es crucial, al igual que las ASIC y las GPU que eventualmente dominaron los mercados de minería de BTC y ETH.
Entonces la pregunta es: ¿cuál es el mejor hardware para acelerar la generación de ZKP? Actualmente, hay varias opciones de hardware disponibles para la aceleración de ZK, como GPUs, FPGAs o ASICs, cada una con sus propias ventajas y desventajas.
Para comprender mejor las diferencias en los procesos de desarrollo en GPU, FPGA y hardware ASIC, consideremos un ejemplo sencillo: la implementación de una multiplicación paralela.
Cada opción de hardware tiene sus fortalezas y debilidades, lo que las hace adecuadas para diferentes etapas del desarrollo de la tecnología ZK. El objetivo de Cysic es convertirse en la solución definitiva para la aceleración de hardware ZK, utilizando una estrategia gradual:
Exploraremos estos diversos subcampos para comprender mejor las diferencias entre las soluciones de aceleración ZK y el enfoque de desarrollo de Cysic.
ZK Grupo Minero y Plataforma SaaS: Red Cysic
Tanto Scroll como Polygon zkEVM han propuesto el concepto de un 'Probador descentralizado' en sus hojas de ruta, lo que significa esencialmente la construcción de piscinas de minería ZK. Este enfoque impulsado por el mercado ayuda a los proyectos de ZK Rollup a reducir su carga de trabajo a la vez que incentiva a los mineros y a los operadores de piscinas de minería a optimizar continuamente las soluciones de aceleración ZK. La hoja de ruta de Cysic incluye el desarrollo de una piscina de minería ZK y una plataforma SaaS llamada Cysic Network, que integrará la potencia informática de Cysic y atraerá recursos de terceros a través de incentivos de minería, incluidas las GPUs inactivas y los dispositivos zk DePIN de propiedad del consumidor. Todo el flujo de trabajo de verificación funciona de la siguiente manera:
El proceso detallado de interacción es el siguiente
En este proceso, ciertas acciones, como el staking de activos, la distribución de incentivos y la presentación de tareas, requieren una plataforma dedicada respaldada por infraestructura de blockchain. Para satisfacer esta necesidad, Cysic Network ha desarrollado una cadena pública dedicada con un algoritmo de consenso único llamado Prueba de Cómputo (PoC). Este algoritmo utiliza la función VRF y el rendimiento histórico del probador, como la disponibilidad del dispositivo, la cantidad de pruebas presentadas, precisión de la prueba, etc., para seleccionar los productores de bloques responsables de crear bloques (estos bloques probablemente registran información del dispositivo y distribuyen incentivos de tokens). Más allá del grupo de minería ZK y la plataforma SaaS, Cysic ha realizado implementaciones extensas en soluciones de aceleración ZK basadas en hardware diferente. Vamos a explorar los logros de Cysic en tecnología de GPU, FPGA y ASIC.
La esencia de la aceleración de hardware ZK (Zero-Knowledge) radica en maximizar la paralelización de los cálculos clave. Desde una perspectiva de hardware, las CPUs están diseñadas para obtener la máxima flexibilidad y uso general. Sin embargo, una parte significativa del área de la CPU está dedicada a funciones de control y varios niveles de caché, lo que limita sus capacidades de cómputo paralelo. En contraste, una proporción mayor del área del chip de una GPU se destina a la computación, lo que le permite admitir el procesamiento paralelo a gran escala. Las GPUs ahora están ampliamente disponibles, y bibliotecas como Nvidia CUDA permiten a los desarrolladores aprovechar el paralelismo de las GPU sin necesidad de tener un profundo conocimiento del hardware subyacente. El SDK de CUDA proporciona un marco para acelerar los cálculos de MSM (Multi-Scalar Multiplication) y NTT (Number Theoretic Transform) utilizando las bibliotecas CUDA ZK.
FPGA (Field-Programmable Gate Array) adopta un enfoque diferente, que comprende matrices de numerosas unidades de procesamiento pequeñas. Para programar un FPGA, los desarrolladores deben usar un lenguaje de descripción de hardware (HDL) especializado, que luego se compila en combinaciones de circuitos de transistores. Esencialmente, FPGA implementa algoritmos específicos directamente a través de circuitos de transistores, evitando el proceso de compilación del sistema de instrucciones tradicional. Este enfoque ofrece mucha más personalización y flexibilidad en comparación con las GPU. Actualmente, los precios de FPGA son aproximadamente un tercio de los precios de las GPU, y pueden ser más de diez veces más eficientes en energía. Esta ventaja en eficiencia energética se debe en parte a que las GPU necesitan estar conectadas a un dispositivo anfitrión, que consume típicamente mucha energía. FPGA puede agregar más módulos de cómputo para satisfacer las demandas de MSM y NTT sin aumentar el consumo de energía, lo que lo hace especialmente adecuado para escenarios de prueba ZK que son intensivos en cómputo, requieren un alto rendimiento de datos y necesitan tiempos de respuesta bajos. Sin embargo, el mayor desafío con FPGA es la escasez de desarrolladores con la experiencia de programación necesaria. Para los equipos de proyectos ZK, reunir un equipo con experiencia tanto en criptografía como en ingeniería de FPGA es extremadamente desafiante.
ASIC (Circuito Integrado Específico de Aplicación) es el más especializado de los tres, implementando esencialmente un programa completamente en hardware. Una vez que se diseña un ASIC, la configuración del hardware queda fija y no se puede alterar, lo que significa que solo puede realizar tareas específicas. Las ventajas de FPGA en la aceleración de MSM y NTT también se aplican a ASIC, pero debido a que ASIC está diseñado para una aplicación específica, ofrece la mayor eficiencia y el menor consumo de energía entre todas las opciones de hardware. Para los circuitos ZK de uso general en la actualidad, Cysic tiene como objetivo lograr tiempos de prueba de 1-5 segundos, que solo ASIC puede ofrecer. Si bien estos beneficios son muy atractivos, la tecnología ZK está evolucionando rápidamente, y los ciclos de diseño y producción de ASIC suelen tardar de 1 a 2 años y costar entre 10 y 20 millones de dólares. Por lo tanto, la producción a gran escala debe esperar hasta que la tecnología ZK se estabilice para evitar producir chips que rápidamente se vuelvan obsoletos.
Para abordar estos desafíos, Cysic ha invertido de manera integral en las tres categorías de hardware: GPU, FPGA y ASIC. En cuanto a la aceleración de GPU, Cysic se ha adaptado a la aparición de varios nuevos sistemas de prueba ZK a través de su propio SDK de aceleración de CUDA. Al consolidar los recursos de la comunidad, Cysic ha conectado decenas de miles de GPU de primer nivel en su red de computación de GPU, logrando mejoras de velocidad del 50% al 80% o más en comparación con los últimos marcos de código abierto. En el espacio FPGA, Cysic ha desarrollado soluciones que establecen puntos de referencia de rendimiento globales para los módulos de árbol Merkle MSM, NTT y Poseidon, que cubren los componentes más críticos del cálculo ZK. Estas soluciones han sido probadas y validadas mediante prototipos por varios proyectos líderes de ZK. El SolarMSM patentado de Cysic puede completar cálculos MSM de escala 2^30 en solo 0,195 segundos, mientras que SolarNTT puede realizar cálculos NTT de escala 2^30 en 0,218 segundos, lo que los convierte en los resultados de aceleración de hardware FPGA de mayor rendimiento disponibles en la actualidad.
En el campo de los ASIC, si bien la adopción generalizada de los ZK ASIC puede tardar algún tiempo, Cysic ya se ha posicionado en este mercado emergente desarrollando sus propios chips y dispositivos ZK DePIN. Para atraer a los usuarios consumidores y satisfacer los diversos requisitos de rendimiento y costos de diferentes proyectos ZK, Cysic planea presentar dos productos de hardware ZK: ZK Air y ZK Pro.
A través de estos dos dispositivos, Cysic tiene como objetivo crear una red ZK-DePIN estable y confiable. Tanto ZK Air como ZK Pro están actualmente en desarrollo, con un lanzamiento previsto en 2025. Además, la Red Cysic permitirá a los usuarios consumidores ingresar al mercado de aceleración de hardware ZK con barreras de entrada muy bajas. Junto con la alta demanda de potencia computacional de los equipos de proyectos ZK, esto podría encender una nueva ola de entusiasmo similar al auge de la minería de Bitcoin, lo que podría llevar a un crecimiento explosivo en el mercado de computación ZK.