Glosario cripto
Compromiso KZG
Un compromiso KZG es una huella criptográfica corta de un polinomio que permite verificar valores con pruebas diminutas; protege los blobs de Ethereum.
Llamado así por Aniket Kate, Gregory Zaverucha e Ian Goldberg, que lo presentaron en 2010, el esquema permite comprometerse con un polinomio mediante un único punto de una curva elíptica. Después, el probador puede demostrar que el polinomio toma cierto valor en cualquier punto con una prueba de tamaño constante, por grande que sea el polinomio. La verificación usa emparejamientos sobre curvas como BLS12-381.
Ethereum adoptó los compromisos KZG para las transacciones blob que introdujo el EIP-4844 en 2024. Cada blob de datos de rollups se trata como un polinomio y se compromete con KZG, de modo que los nodos pueden comprobar que los datos coinciden con el compromiso y, en actualizaciones posteriores, muestrear trozos pequeños para verificar la disponibilidad de datos sin descargarlo todo. Los compromisos KZG son además un componente central de muchos sistemas de pruebas SNARK.
KZG necesita una configuración de confianza, que Ethereum resolvió con una gran ceremonia pública, y se apoya en supuestos basados en emparejamientos que un ordenador cuántico podría romper. Alternativas como los compromisos basados en hashes evitan ambos problemas a cambio de pruebas más grandes, y la hoja de ruta a largo plazo las contempla por su resistencia cuántica.
Ejemplo
Un rollup publica en Ethereum un blob de transacciones comprimidas; el bloque solo incluye el compromiso KZG de 48 bytes del blob, que cualquier nodo puede usar para comprobar los datos que recibió.
