Las pruebas de conocimiento cero ("ZK-proofs") son un éxito emergente para la criptografía y la blockchain con múltiples casos de uso, entre ellos la mejora de la privacidad y la escalabilidad de las transacciones. La tecnología ZK permite a dos partes acordar que una afirmación es cierta, sin que se revele o discuta ningún detalle de la misma - de ahí el uso del término "conocimiento cero". 

Sin embargo, las pruebas de ZK pueden presentar inconvenientes. En noviembre de 2023, la empresa de ciberseguridad ChainLight hizo público el descubrimiento de un fallo de solidez en la implementación de zkSync en la mainnet Era. La explotación de ese fallo podría haber provocado la pérdida de USD 1,900 millones en fondos.

Cointelegraph habló con el investigador de ChainLight Tim Becker para comprender mejor los riesgos de seguridad de la implementación de las pruebas de ZK. Becker dijo que una parte importante del problema con la tecnología ZK es simplemente lo nueva que es.

"Creo que todo el mundo sabe que la tecnología ZK es relativamente nueva, pero no muchos entienden exactamente lo nueva que es", dijo Becker. "Yo diría que incluso hace unos pocos años, la mayoría de la gente pensaba que algo como una ZK EVM [Ethereum Virtual Machine] estaba al menos a una década de distancia. Pero acabamos consiguiéndolo en apenas dos o tres años".

Un ejemplo de un proceso de registro basado en la prueba ZK.

Los enormes avances de la tecnología de prueba de ZK son una gran parte de lo que la hace arriesgada. Como explicó Becker, el desarrollo de las pruebas ZK estaba muy descentralizado, lo que aceleró considerablemente el proceso, pero también creó algunas complicaciones adicionales con las que el sector está lidiando ahora.

"Es muy nuevo, las herramientas para desarrolladores están aún en pañales y todos los proyectos tienen sus propias stacks tecnológicos que están desarrollando de forma independiente. Faltan herramientas para ZK que sean fáciles de usar para los desarrolladores de toda la comunidad, y eso aumenta la probabilidad de que se introduzcan vulnerabilidades".

Cómo solucionar un problema como el de las pruebas de ZK

Aunque en el pasado se han descubierto problemas con las pruebas de ZK y siguen identificándolos los propios proyectos o empresas de seguridad como ChainLight, los ejemplos reales de exploits siguen siendo muy escasos.

Por esta razón, la posibilidad de caer en la complacencia es real. Becker entiende muy bien esta tendencia.
"Algunas personas cuestionarán la idea de que el ZK es especialmente arriesgado. Señalarán que aún no se ha explotado ningún protocolo ZK importante. Pero creo que no entienden bien la razón de ello", afirma.

"Yo diría que la razón principal por la que es así es porque todos estos rollups de ZK tienen las llamadas ruedas de entrenamiento, que básicamente son capas de seguridad adicionales más allá del sistema a prueba de ZK que hacen que explotar el protocolo sea poco práctico para un atacante y, en cambio, incentivan a los atacantes a reportarlos".

Becker afirma que estas ruedas de entrenamiento no son algo en lo que se pueda confiar a perpetuidad porque comprometen un protocolo y sus ambiciones de otras maneras.

"Estas capas de seguridad son necesariamente soluciones temporales a corto plazo, mientras la tecnología se asegura y se desprotege. Esto se debe fundamentalmente a que sacrifican algunas propiedades muy importantes que estas redes quieren tener a largo plazo, como la descentralización y otras capacidades tecnológicas", afirmó.

Un punto de fricción que señaló Becker son los retrasos de ejecución incorporados a las transacciones de prueba de ZK. Estos retrasos dan tiempo a las redes antes de finalizar las órdenes, lo que les permite detectar transacciones erróneas. Por supuesto, esto confunde cualquier ventaja potencial de velocidad o escalabilidad derivada del uso de pruebas de ZK.

Con el tiempo, las limitaciones causadas por las ruedas de entrenamiento obligarán a dejarlas de lado. El truco estará en hacerlo sólo cuando las pruebas ZK hayan madurado lo suficiente como para hacerlo sin exponer los propios protocolos.

Mirando al futuro

Una de las mayores tareas de examinar la tecnología blockchain es predecir hacia dónde se moverá la industria a continuación. Pero sea lo que sea lo que siga, Becker ve un futuro brillante para la tecnología ZK una vez que se hayan limado las arrugas.

"Será cuestión de tiempo que la tecnología madure y la seguridad que la rodea sea un poco más estable", afirma Becker.

En cuanto al calendario, Becker dice que es difícil de predecir, debido a que el rápido desarrollo de las pruebas de ZK ha superado las expectativas en el pasado.

"Es difícil decirlo porque la tecnología sigue evolucionando. Aunque hoy tenemos rollups de ZK y EVM, los sistemas de prueba subyacentes siguen cambiando, perfeccionándose y mejorándose. Como consecuencia, las redes se modernizan. Es difícil decir exactamente cuándo se estabilizará todo y permitirá que todas estas herramientas maduren", afirmó.

En última instancia, puede que pase casi una década antes de que la tecnología pueda considerarse madura. Esto significa que tanto los expertos en seguridad como los desarrolladores tendrán que permanecer en alerta durante algún tiempo.

La visión desde el lado del desarrollo

Aleph Zero, una solución de capa 1 para aplicaciones descentralizadas, incorpora tecnología a prueba de ZK en su stack tecnológico. Como tal, la empresa es consciente de los retos que plantean las pruebas de ZK.

Matthew Niemerg, cofundador y presidente de Aleph Zero, dijo a Cointelegraph: "Las pruebas de conocimiento-cero son muy prometedoras, pero la tecnología aún está en sus primeras fases. Como con cualquier nueva innovación, existen retos en torno a la identificación de vulnerabilidades en áreas como el diseño de circuitos, la generación de números aleatorios y las implementaciones criptográficas".

El cofundador añadió que incluso los errores más insignificantes suelen acarrear dificultades importantes.

"Incluso pequeños descuidos pueden comprometer propiedades clave como la integridad, la solidez y la privacidad. Ejemplos del mundo real han mostrado fallos que permiten la falsificación de tokens, ataques a contratos inteligentes y la ruptura del anonimato", añadió Niemerg. "El hecho es que el código está escrito por humanos, que son falibles, incluso si los fundamentos teóricos de las matemáticas son probadamente correctos. Especialmente en un paradigma de código abierto, tu problema puede convertirse rápidamente en el problema de todos".

Niemerg señaló que uno de los primeros casos notables de vulnerabilidad de las pruebas de ZK provino de la conocida moneda de privacidad Zcash (ZEC). En marzo de 2018, Zcash descubrió un problema con su código que permitiría a un hacker falsificar su token nativo.

En octubre de 2018, Zcash parchó la vulnerabilidad con su actualización de red Sapling. En total, la vulnerabilidad de falsificación fue una parte siempre presente de la red Zcash durante dos años enteros. Nunca fue explotada.

"Creemos que nadie más estaba al tanto de la vulnerabilidad y que no se produjo ninguna falsificación", dijo Zcash en un comunicado en febrero de 2019. "Descubrir la vulnerabilidad habría requerido un alto nivel de sofisticación técnica y criptográfica que muy pocas personas poseen".

El factor de miedo para la industria blockchain radica en qué otras vulnerabilidades están ahí fuera, aún sin descubrir. En algún momento, a medida que mejore el conocimiento y la comprensión de la tecnología a prueba de ZK, se descubrirán más de estos problemas.

La cuestión es quién las descubrirá primero: ¿los propios desarrolladores o los hackers?

Aclaración: La información y/u opiniones emitidas en este artículo no representan necesariamente los puntos de vista o la línea editorial de Cointelegraph. La información aquí expuesta no debe ser tomada como consejo financiero o recomendación de inversión. Toda inversión y movimiento comercial implican riesgos y es responsabilidad de cada persona hacer su debida investigación antes de tomar una decisión de inversión