Glosario cripto

zk-STARK

Definición

Un zk-STARK es una prueba de conocimiento cero sin configuración de confianza que solo usa funciones hash y da pruebas más grandes, resistentes a la cuántica.

STARK son las siglas inglesas de argumento de conocimiento escalable y transparente. Presentados por Eli Ben-Sasson y otros investigadores en 2018, los STARK permiten a un probador convencer a un verificador de que un cálculo enorme se hizo bien, con una verificación mucho más barata que repetir el trabajo. Transparente significa que el sistema no tiene parámetros secretos de configuración: toda la aleatoriedad es pública, así que no hay residuos tóxicos que puedan usarse para falsificar pruebas.

Como se basan en funciones hash resistentes a colisiones y no en emparejamientos de curvas elípticas, se consideran plausiblemente seguros frente a ordenadores cuánticos. Escalan bien para cálculos muy grandes, por eso impulsan rollups de validez como Starknet y varias zkVM. La generación de pruebas es rápida y se paraleliza bien en hardware moderno.

Su gran inconveniente es el tamaño: una prueba STARK ocupa normalmente de decenas a cientos de kilobytes, frente a unos pocos cientos de bytes de un SNARK como Groth16, lo que encarece verificarla en Ethereum. Por eso muchos sistemas envuelven el STARK dentro de un SNARK antes de publicarlo en la cadena, lo que reintroduce parte de los supuestos que los STARK evitan.

Ejemplo

Un rollup demuestra un lote de 100.000 transferencias con un STARK y luego lo comprime en un SNARK pequeño para que el contrato de Ethereum verifique todo el lote con un coste de gas moderado.

Términos relacionados