a16z lanza Lattice Jolt: pruebas 3 veces más rápidas y resistentes a ataques cuánticos
PanewslabAutor: a16z crypto
Compilación: Shenchao TechFlow
Introducción de Shenchao: Las zkVM siempre han sido criticadas por ser "demasiado lentas en las pruebas y demasiado grandes en tamaño". Esta vez, a16z reemplaza las curvas elípticas por criptografía basada en retículos, lo que hace que las pruebas sean 3 veces más rápidas y reduce el tamaño de la prueba a menos de 100 KB. Este es actualmente el único esquema post-cuántico que supera en velocidad a los esquemas tradicionales de curvas elípticas, con un impacto directo en el coste de verificación en cadena y en las aplicaciones de privacidad.

Hoy lanzamos oficialmente Lattice Jolt, la última versión de nuestra zkVM (máquina virtual de conocimiento cero) de código abierto. Jolt ya era la zkVM más rápida y sencilla del momento, y su arquitectura no ha cambiado. Pero la criptografía subyacente sí: hemos pasado de curvas elípticas a criptografía basada en retículos. Este único cambio aporta tres cosas a la vez:
- Jolt se vuelve seguro post-cuántico.
- La velocidad del probador y del verificador aumenta entre 2 y 3 veces.
- Lattice Jolt se convierte en la zkVM post-cuántica con la prueba más corta: actualmente menos de 100 KB, y se puede comprimir aún más. Las pruebas deben subirse a la cadena y transmitirse entre redes; cuanto más pequeña sea la prueba, menor será el coste de verificación.
Estas características cubren todos los casos de uso de las zkVM. El mismo probador puede procesar miles de millones de ciclos de CPU en una GPU y también demostrar millones de ciclos en un teléfono móvil. En ambos casos, los desarrolladores escriben programas normales, sin necesidad de escribir circuitos a mano que requieren conocimientos especializados. Por eso decimos que Jolt es un "SNARK universal".
Pero la historia más importante es lo que Lattice Jolt significa para el diseño y la adopción de SNARK. Actualmente, casi todos los SNARK post-cuánticos en producción se basan en funciones hash. Lattice Jolt demuestra que los SNARK basados en retículos pueden ser más rápidos y compactos. Las firmas digitales están experimentando la misma transición: los esquemas hash son la opción conservadora, pero los esquemas basados en retículos son los que el mundo está desplegando a gran escala. Esperamos que los SNARK sigan el mismo camino, y la segunda mitad de esta entrada de blog explica por qué.
Sustituyendo curvas elípticas por retículos
El esquema de compromiso polinómico anterior de Jolt se llamaba Dory, y era el único componente de todo el sistema que dependía de criptografía de curvas elípticas. Lattice Jolt sustituye Dory por Akita, un nuevo esquema de compromiso polinómico basado en la suposición de retículos Module-SIS. Lattice Jolt se basa en esta suposición estándar y bien estudiada, apuntando a una seguridad completa de 128 bits.
Module-SIS y su hermano Module-LWE pertenecen a la misma familia de suposiciones hacia la que está migrando la infraestructura digital mundial. Estas suposiciones no solo sustentan el estándar de firma digital ML-DSA, sino también el estándar de establecimiento de claves ML-KEM, que ya es el primitivo post-cuántico más ampliamente desplegado a nivel mundial.
El desarrollo y la implementación de Akita fueron liderados por investigadores e ingenieros de LayerZero, con la participación de investigadores de la Universidad Carnegie Mellon, la Universidad del Sur de California y nuestro equipo de ingeniería e investigación en a16z crypto.
Por qué Lattice Jolt es más rápido
Lattice Jolt no solo es seguro post-cuántico, sino que es más rápido que la versión de curvas elípticas a la que sustituye.
La aceleración proviene principalmente de una razón sencilla. Las curvas elípticas obligaban a Jolt a trabajar en campos de 256 bits, mientras que la criptografía basada en retículos alcanza el mismo nivel de seguridad en campos de 128 bits. El trabajo principal del probador de Jolt es la multiplicación de elementos de campo (esencialmente multiplicación de números muy grandes), por lo que al reducir a la mitad el tamaño de los números, cada multiplicación se vuelve varias veces más rápida.
Jolt con Dory ya era rápido: nuestra última actualización de rendimiento mostró que Jolt podía demostrar aproximadamente 700.000 ciclos RISC-V (RV64IMAC) por segundo en un portátil, y las optimizaciones posteriores llevaron la versión de curvas de Jolt a más de 1 millón de ciclos por segundo.
Lattice Jolt puede demostrar más de 2 millones de ciclos por segundo en la misma máquina.
Durante la mayor parte de los últimos seis meses, no solo nos dedicamos a desarrollar Akita e integrarlo en Jolt, sino que también reescribimos el código de Jolt desde cero. Jolt ya funcionaba bien en GPU, pero esta reescritura facilitó la construcción y optimización de la implementación en GPU.
El primer resultado es una implementación en Apple Metal, que aporta una gran aceleración al hardware de Apple. (Metal es el marco de Apple para ejecutar código en las GPU integradas en dispositivos como MacBook e iPhone).
- Lattice Jolt acelerado por GPU puede demostrar más de 10 millones de ciclos RV64IMAC por segundo en un MacBook.
- Lattice Jolt puramente en CPU puede demostrar más de 2 millones de ciclos por segundo en la misma máquina.
- Incluso la versión de curvas de Jolt ahora puede alcanzar unos 4 millones de ciclos por segundo en un MacBook con Metal.
Es decir, con un solo lanzamiento, Jolt en MacBook pasó de aproximadamente 1 millón de ciclos por segundo (versión de curvas, solo CPU) a más de 10 millones de ciclos por segundo (versión de retículos, con Metal).
Pongamos estas cifras en contexto: hace cuatro años, cuando escribimos por primera vez sobre el coste de los probadores SNARK, demostrar un cálculo era millones de veces más caro que ejecutarlo directamente. Lattice Jolt reduce ese coste a aproximadamente diez mil veces. Y aún no hemos llegado al límite: sigue habiendo margen de optimización a nivel de ingeniería y de protocolo.
El tamaño de la prueba es tan importante como la velocidad del probador. Con menos de 100 KB, la prueba de Lattice Jolt ya es mucho más pequeña que la de otras zkVM post-cuánticas, cuyas pruebas varían desde más de 200 KB hasta aproximadamente 600 KB o más.
Al cambiar a retículos, el ya excelente uso de memoria de Jolt mejora aún más: el uso de espacio del probador baja de unos 300 bytes por ciclo a 200 bytes. Esto significa que se pueden demostrar millones de ciclos RISC-V en un teléfono móvil.
Próximamente se publicará un artículo complementario que añadirá conocimiento cero a Lattice Jolt, una propiedad necesaria para las aplicaciones de privacidad.
Por qué retículos y no hash
Durante años, la atención de la comunidad SNARK (y básicamente todos los despliegues en producción) se ha centrado en los SNARK basados en hash como la vía hacia la seguridad post-cuántica.
Pero también ha habido una línea continua de investigación sobre SNARK y compromisos basados en retículos, que incluye LaBRADOR, Greyhound, LatticeFold, SuperNeo y el predecesor directo de Akita, Hachi. Lattice Jolt se basa en esta investigación, incorporando la capa de compromisos basados en retículos a una arquitectura zkVM de alto rendimiento, y demostrando que los SNARK basados en retículos no tienen rival en velocidad y compacidad.
Esto no debería sorprender. Como ya se ha mencionado, el mismo patrón ya se ha producido con las firmas digitales.
Los criptógrafos han construido firmas basadas en muchas suposiciones. Las firmas hash suelen considerarse la opción más conservadora: sus suposiciones de seguridad son simples y antiguas. Pero el mundo se está inclinando mayoritariamente por las firmas basadas en retículos, porque son más cortas y rápidas:
- Las firmas ML-DSA tienen un tamaño de unos pocos KB.
- La alternativa hash estandarizada por el NIST, SLH-DSA, es varias veces más grande.
- Para el cifrado y el intercambio de claves, la situación es aún más clara: no existe ninguna opción hash (hay pruebas de que es imposible), y el despliegue post-cuántico se basa abrumadoramente en retículos. ML-KEM (el principal estándar de establecimiento de claves confirmado por el NIST en 2024) ya está desplegado por defecto en los principales navegadores y aplicaciones de mensajería, y se utiliza en un gran número de conexiones TLS en Internet.
La analogía entre SNARK y firmas no es superficial. Una firma digital es esencialmente una prueba de conocimiento de una clave privada sobre un mensaje autorizado. Los SNARK extienden este paradigma desde una declaración muy limitada a cálculos arbitrarios. Por lo tanto, sería extraño que el panorama criptográfico a largo plazo de los SNARK fuera completamente diferente del de las firmas y el cifrado.
También conviene aclarar un malentendido: a menudo se dice que los SNARK hash son la opción post-cuántica conservadora porque "solo dependen de funciones hash". Esto solo es cierto si la función hash subyacente no es algebraica.
Hoy en día, la mayoría de los despliegues de SNARK basados en hash dependen de construcciones hash algebraicas amigables con SNARK (como Poseidon) para demostrar de forma económica que el hash se ha evaluado correctamente. Esto es especialmente importante para la recursión (aquí, recursión significa demostrar que se posee una prueba SNARK válida). Estas construcciones tienen más estructura que las funciones hash estándar, y su criptoanálisis aún no está maduro.
En resumen, no tenemos confianza en la seguridad de las funciones hash algebraicas. Aun así, hoy en día se utilizan ampliamente en sistemas SNARK en producción. (Sin embargo, hay una señal de progreso: la Fundación Ethereum anunció recientemente que dejará de usarlas).
El hash algebraico no es la única suposición oculta en los SNARK basados en hash desplegados: muchos sistemas históricamente han utilizado límites especulativos de proximity-gap para establecer niveles de seguridad concretos, en lugar de utilizar límites completamente demostrados. Algunos de los límites que se consideraban más sólidos resultaron ser incorrectos.
Incluso evitando los SNARK basados en hash especulativos mencionados, su objetivo de seguridad suele ser inferior a 128 bits, porque la seguridad completa de 128 bits conlleva un coste de rendimiento significativo. ¿Por qué? Los SNARK basados en hash no pueden alcanzar 128 bits de seguridad en campos de 128 bits, porque su error de solidez escala como n/|F|, donde n es aproximadamente el tamaño de la declaración que se demuestra y |F| es el tamaño del campo. Por lo tanto, demostrar una declaración de mil millones de pasos en un campo de 128 bits perdería unos 30 bits de seguridad, dejándola por debajo de 100 bits. En cambio, el error de solidez de Lattice Jolt escala como log(n)/|F|, conservando casi toda la seguridad de 128 bits en el mismo campo (la pequeña pérdida de log(n) se puede recuperar con técnicas estándar).
Irónicamente, algunos sistemas que se promocionan como opciones post-cuánticas "conservadoras" en realidad dependen simultáneamente de funciones hash algebraicas, límites especulativos de proximity-gap y objetivos de seguridad inferiores a 128 bits. Por lo tanto, aunque los SNARK basados en hash son una dirección importante, no son automáticamente la opción de bajo riesgo que muchos creen.
Un Jolt, tres bases: curvas, retículos y hash
Siempre hemos pensado que Jolt no debería estar ligado a una única base criptográfica. Deberíamos tener SNARK maduros y de alto rendimiento basados en curvas, hash y retículos. Diferentes suposiciones y características de rendimiento serán adecuadas para diferentes escenarios.
Pero si tomamos como referencia las firmas digitales, los SNARK basados en retículos se convertirán en la opción post-cuántica más ampliamente desplegada.
Jolt se encuentra en una posición excepcionalmente ventajosa en esta transición. El diseño original de Jolt aprovechaba propiedades de las curvas elípticas especialmente útiles para los compromisos, incluido el compromiso rápido de vectores dispersos. Los compromisos basados en retículos tienen la misma propiedad: cuando la mayoría de las entradas de un vector son cero o pequeñas, el coste de comprometerse con el vector es bajo, y Jolt casi solo se compromete con este tipo de vectores. Esta propiedad nos permitió sustituir Dory por Akita manteniendo el resto de Jolt sin cambios.
Construiremos una versión de Jolt basada en hash. Pero en comparación con Jolt basado en curvas y en retículos, la versión basada en hash es menos eficiente en espacio, tiene pruebas más grandes y presenta varios problemas de complejidad. Esto se debe a que los SNARK basados en hash más prometedores trabajan en campos binarios. Este sistema numérico facilita la demostración de la evaluación de hash, pero no coincide con la forma en que la CPU realiza la aritmética. Este desajuste hace que demostrar multiplicaciones normales de CPU sea costoso. Aun así, el ecosistema debería tener zkVM bajo cada familia principal de suposiciones, como ocurre en el ámbito de las firmas digitales.
SNARK universal
Lattice Jolt satisface de una sola vez todas las necesidades de los desarrolladores de zkVM: post-cuántico, transparente, rápido, compacto y eficiente en espacio. Lleva la línea de investigación de SNARK basados en retículos, desde LaBRADOR hasta Hachi, a una zkVM de nivel de producción, sin renunciar a ninguna de las ventajas que hicieron rápido a Jolt en un principio.
Nuestro objetivo no es solo abrir el código de la zkVM de mayor rendimiento para que cualquiera pueda usarla, sino también eliminar en gran medida la necesidad de ajustar manualmente los SNARK para aplicaciones específicas. Esto no exige que Jolt sea tan rápido como los probadores ajustados a mano. Ese es un objetivo imposible, como pedir que una CPU iguale a un ASIC especializado en cada tarea. Solo exige que Jolt sea lo suficientemente rápido como para ofrecer una experiencia de usuario aceptable.
Para las declaraciones "pequeñas" relacionadas con pruebas en el lado del cliente (donde hoy dominan los circuitos optimizados a mano), el criterio clave es generar una prueba en aproximadamente un segundo en un teléfono móvil. Jolt ya está cerca de lograrlo, y hay muchos planes de aceleración en marcha.
La era de los SNARK basados en retículos ha llegado.
Este contenido se proporciona únicamente con fines informativos y educativos y no constituye asesoramiento de inversión relacionado con BTCC. BTCC realiza todos los esfuerzos posibles, pero no puede garantizar la veracidad, exactitud u originalidad del contenido anterior.