Brian Pak es director ejecutivo y cofundador de ChainLight, una empresa de seguridad blockchain que se especializa en auditorías de contratos inteligentes y monitoreo en cadena.

Las palabras conocimiento cero, alguna vez relegadas a artículos académicos y foros de criptografía, se han generalizado con fuerza.

La tecnología ZK permite a una parte, como un protocolo blockchain, demostrarle a otra parte que algo es cierto, como la edad de una persona, manteniendo esa información completamente confidencial.

La criptografía ZK está teniendo éxito en la ampliación de la red de contratos inteligentes Ethereum. Más de una docena de redes basadas en ZK, comúnmente llamadas ZK rollups, se ejecutan sobre Ethereum, con un valor combinado de 4 mil millones de dólares en depósitos.

Pero a pesar del revuelo, hay un gran problema. La falta de conocimiento sobre ZK es una bomba de tiempo.

La mayoría de los desarrolladores de criptomonedas todavía saben muy poco sobre este complejo tema.

Y a medida que más desarrolladores comienzan a experimentar con la tecnología ZK, se crean importantes riesgos de seguridad e incluso se impide que la tecnología alcance su verdadero potencial.

Al mismo tiempo, la tecnología ZK promete revolucionar la industria de la criptografía, por lo que es imperativo poner al día a los desarrolladores y a la comunidad más amplia de usuarios.

Los desarrolladores de ZK están "fuera de su alcance"

En 2022, el cofundador de Ethereum, Vitalik Buterin, señaló los riesgos de seguridad de los paquetes acumulativos de ZK, como errores en el código de restricción del circuito.

Estos códigos son fundamentales en los paquetes acumulativos de ZK, ya que definen y hacen cumplir reglas para las pruebas criptográficas que garantizan la validez de la transacción.

Los errores en estos códigos pueden provocar graves vulnerabilidades de seguridad, como pruebas incorrectas o acceso no autorizado a fondos.

Desde la advertencia de Buterin, los desarrolladores han identificado varias vulnerabilidades más en proyectos que utilizan tecnología ZK.

En noviembre, ChainLight descubrió un error dentro de los circuitos ZK de ZK Sync Era que podría haber permitido a un hacker robar 1.900 millones de dólares.

También en 2018, un criptógrafo de Zcash descubrió una vulnerabilidad en las pruebas de conocimiento cero subyacentes al protocolo. Si no se hubiera corregido, el error podría haber permitido a un atacante crear tokens Zcash falsos sin ser detectado.

Vulnerabilidades como esta son una triste crítica a una nueva forma de tecnología que claramente no es comprendida por suficientes personas.

Muchos desarrolladores que escriben el código y los profesionales de seguridad que tienen que aprobar su seguridad simplemente están fuera de su alcance.

Y no es sorprendente: cualquiera le dirá que se requiere un nivel de doctorado en matemáticas para asimilar los aspectos de seguridad de la tecnología ZK.

Esto significa que el número de personas calificadas para auditar el código ZK es limitado, al igual que los recursos necesarios para capacitarlos.

Y la falta de expertos para auditar adecuadamente el código ZK no es el único problema.

Los paquetes acumulativos de ZK, como zkSync Era y StarkNet, se desarrollan internamente y, como resultado, los procesos de revisión por pares no son tan completos como los estándares que se ven en el mundo académico.

Me mantendré escéptico sobre la seguridad de la tecnología ZK hasta que el proceso de revisión por pares esté más estandarizado.

ZK no está alcanzando su potencial

La falta de comprensión de la tecnología ZK también impide que alcance su máximo potencial.

Esto se debe a la falta de confianza en la tecnología que lleva a los constructores a elegir marcos más familiares.

Por ejemplo, uno de los principales beneficios promocionados de los paquetes acumulativos de ZK es la finalidad instantánea.

Esto significa que tan pronto como se verifica la prueba de un bloque en la red principal de Ethereum, los resultados son definitivos. Esto permite en particular retiros instantáneos de activos y también mejora la seguridad.

Los rollups optimistas, el principal rival de los rollups ZK, requieren un período de espera de siete días para retirar activos.

Existe un consenso cada vez mayor de que los paquetes acumulativos de ZK son la solución superior para escalar Ethereum por encima de los paquetes acumulativos optimistas.

Algunos llegan incluso a describirlos como el “santo grial” de las soluciones de escalamiento.

El cofundador de Immutable X, Robbie Ferguson, describió los paquetes acumulativos de ZK como "con diferencia, la forma más fácil de escalar transacciones de alto rendimiento".

Pero, en realidad, la mayoría de los desarrolladores todavía no utilizan la tecnología en su verdadero potencial porque simplemente no se sienten cómodos usando algunas de sus características únicas debido a su complejidad.

Por ejemplo, ninguno de los paquetes acumulativos de ZK existentes tiene realmente la finalidad instantánea anunciada.

La codificación es tan técnica que los desarrolladores pueden tener miedo de cometer un error, lo que les lleva a optar por no implementar una finalidad instantánea.

En cambio, los protocolos tienen el llamado retraso de ejecución, donde hay una ventana de aproximadamente un día para detectar un exploit y revertir los cambios antes de que finalicen.

Con esto, la seguridad de los paquetes acumulativos de ZK conlleva un compromiso importante y renuncia a uno de sus beneficios más importantes.

Sólo mejorar la comprensión de la tecnología ZK permitirá a los constructores maximizar su potencial sin comprometer la seguridad.

Seguridad por diseño

En todo web3, no sólo en la esfera ZK, los proyectos no se toman las auditorías lo suficientemente en serio.

Muchos proyectos ven las auditorías simplemente como sellos de aprobación para parecer respetables, en lugar de los rigurosos ejercicios de seguridad que deberían ser.

Hay varios casos en los que se han introducido errores conocidos en nuevos protocolos DeFi, lo que ha costado millones a los inversores.

Por ejemplo, varios protocolos que bifurcaron el código del protocolo de préstamos Compound v2, como Hundred Finance y Onyx Protocol, lo hicieron a ciegas y no tuvieron en cuenta los vectores de ataque conocidos en el código.

En cambio, los desarrolladores deberían esforzarse por crear protocolos que sean seguros por diseño, lo que significa que están construidos de una manera que, ante todo, proteja contra ataques.

La construcción por diseño comienza con mantenerse actualizado sobre las amenazas en el ecosistema.

Si un proyecto carece de los recursos para una auditoría exhaustiva, aún debe mantenerse al día con los ataques que sufren otros proyectos para que ellos no sean víctimas.

Si bien no construir protocolos que sean seguros por diseño sería un problema para cualquier proyecto, es particularmente perjudicial en el caso de la tecnología ZK.

Por ejemplo, echemos un vistazo a los ZKEVM existentes: paquetes acumulativos de ZK que replican perfectamente el sistema operativo de Ethereum.

Muchos ZKEVM dependen de circuitos definidos manualmente, que requieren participación humana y utilizan bibliotecas jóvenes y no probadas.

La probabilidad de que los desarrolladores cometan errores en este entorno es alta, lo que hace que los paquetes acumulativos de ZK sean más vulnerables al riesgo de ataques.

Con los inversores acumulándose en acumulaciones de ZK, incentivados por posibles lanzamientos aéreos de tokens, se convierten en objetivos lucrativos para el próximo gran atraco a las criptomonedas.

Soluciones

Implementar seguridad desde el principio del ciclo de desarrollo y de forma continua (por ejemplo, mediante recompensas por errores) puede ayudar a solucionar este problema.

No hay duda de que la tecnología ZK cambia las reglas del juego para Ethereum, y el desarrollo constante es fundamental para escalar la cadena de bloques.

Sin embargo, las soluciones ofrecidas por los paquetes acumulativos de ZK se corresponden con su potencial para causar problemas de seguridad.

Las empresas emergentes primero deben ser honestas acerca de si están utilizando la tecnología ZK porque es necesaria o porque se están subiendo al tren.

Si están seguros de que son lo primero, entonces deben ser conscientes de los riesgos y construir con seguridad desde el diseño es absolutamente fundamental.