El danksharding es la forma en que Ethereum se convierte en una cadena de bloques verdaderamente escalable, pero se requieren varias actualizaciones del protocolo para llegar allí. El Proto-Danksharding es un paso intermedio en el camino. Ambos tienen como objetivo hacer que las transacciones en la capa 2 sean lo más baratas posible para los usuarios y deberían escalar Ethereum a >100.000 transacciones por segundo.
¿Qué es el Proto-Danksharding?
El Proto-Danksharding, también conocido como EIP-4844 (opens in a new tab), es una forma para que los rollups añadan datos más baratos a los bloques. El nombre proviene de los dos investigadores que propusieron la idea: Protolambda y Dankrad Feist. Históricamente, los rollups habían estado limitados en cuanto a lo baratas que podían hacer las transacciones de los usuarios por el hecho de que publican sus transacciones en CALLDATA.
Esto es costoso porque es procesado por todos los nodos de Ethereum y vive en cadena para siempre, a pesar de que los rollups solo necesitan los datos por un corto tiempo. El Proto-Danksharding introduce blobs de datos que pueden enviarse y adjuntarse a los bloques. Los datos en estos blobs no son accesibles para la EVM y se eliminan automáticamente después de un período de tiempo fijo (establecido en 4096 épocas al momento de escribir este artículo, o aproximadamente 18 días). Esto significa que los rollups pueden enviar sus datos de manera mucho más barata y trasladar los ahorros a los usuarios finales en forma de transacciones más baratas.
¿Cómo se verifican los datos de los blobs?
Los rollups publican las transacciones que ejecutan en blobs de datos. También publican un "compromiso" con los datos. Hacen esto ajustando una función polinómica a los datos. Esta función luego puede ser evaluada en varios puntos. Por ejemplo, si definimos una función extremadamente simple f(x) = 2x-1 entonces podemos evaluar esta función para x = 1, x = 2, x = 3 dando los resultados 1, 3, 5. Un probador aplica la misma función a los datos y la evalúa en los mismos puntos. Si los datos originales cambian, la función no será idéntica y, por lo tanto, tampoco lo serán los valores evaluados en cada punto. En realidad, el compromiso y la prueba son más complicados porque están envueltos en funciones criptográficas.
¿Qué es KZG?
KZG significa Kate-Zaverucha-Goldberg: los nombres de los tres autores originales (opens in a new tab) de un esquema que reduce un blob de datos a un pequeño "compromiso" criptográfico (opens in a new tab). El blob de datos enviado por un rollup debe ser verificado para garantizar que el rollup no se esté comportando mal. Esto implica que un probador vuelva a ejecutar las transacciones en el blob para comprobar que el compromiso era válido. Esto es conceptualmente lo mismo que la forma en que los clientes de ejecución comprueban la validez de las transacciones de Ethereum en la capa 1 utilizando pruebas de Merkle. KZG es una prueba alternativa que ajusta una ecuación polinómica a los datos. El compromiso evalúa el polinomio en algunos puntos de datos secretos. Un probador ajustaría el mismo polinomio sobre los datos y lo evaluaría en los mismos valores, comprobando que el resultado sea el mismo. Esta es una forma de verificar los datos que es compatible con las técnicas de conocimiento cero utilizadas por algunos rollups y, eventualmente, por otras partes del protocolo Ethereum.
¿Qué fue la Ceremonia KZG?
La ceremonia KZG fue una forma para que muchas personas de toda la comunidad de Ethereum generaran colectivamente una cadena aleatoria secreta de números que se puede utilizar para verificar algunos datos. Es muy importante que esta cadena de números no se conozca y no pueda ser recreada por nadie. Para garantizar esto, cada persona que participó en la ceremonia recibió una cadena del participante anterior. Luego crearon algunos valores aleatorios nuevos (por ejemplo, permitiendo que su navegador midiera el movimiento de su ratón) y los mezclaron con el valor anterior. Luego enviaron el valor al siguiente participante y lo destruyeron de su máquina local. Siempre que una persona en la ceremonia haya hecho esto honestamente, el valor final será incognoscible para un atacante.
La ceremonia KZG de EIP-4844 estuvo abierta al público y decenas de miles de personas participaron para añadir su propia entropía (aleatoriedad). En total hubo más de 140.000 contribuciones, lo que la convierte en la ceremonia más grande del mundo en su tipo. Para que la ceremonia se viera comprometida, el 100% de esos participantes tendrían que ser activamente deshonestos. Desde la perspectiva de los participantes, si saben que fueron honestos, no hay necesidad de confiar en nadie más porque saben que aseguraron la ceremonia (satisficieron individualmente el requisito de 1 de N participantes honestos).
¿Qué es el danksharding?
El danksharding es la realización completa del escalado de rollups que comenzó con el Proto-Danksharding. El danksharding aportará cantidades masivas de espacio en Ethereum para que los rollups vuelquen sus datos de transacciones comprimidos. Esto significa que Ethereum podrá soportar cientos de rollups individuales con facilidad y hacer realidad millones de transacciones por segundo.
La forma en que esto funciona es expandiendo los blobs adjuntos a los bloques de seis (6) en el Proto-Danksharding, a 64 en el danksharding completo. El resto de los cambios requeridos son todas actualizaciones a la forma en que operan los clientes de consenso para permitirles manejar los nuevos blobs grandes. Varios de estos cambios ya están en la hoja de ruta para otros propósitos independientes del danksharding. Por ejemplo, el danksharding requiere que se haya implementado la separación proponente-constructor (PBS). Esta es una actualización que separa las tareas de construir bloques y proponer bloques entre diferentes validadores. De manera similar, el muestreo de disponibilidad de datos es necesario para el danksharding, pero también es necesario para el desarrollo de clientes muy ligeros que no almacenan muchos datos históricos ("clientes sin estado").
Progreso actual
Faltan varios años para el danksharding completo. Mientras tanto, la ceremonia KZG ha concluido con más de 140.000 contribuciones, y la EIP (opens in a new tab) para el Proto-Danksharding ha madurado. Esta propuesta se ha implementado completamente en todas las redes de prueba y se lanzó en la Red principal con la actualización de la red Cancun-Deneb ("Dencun") en marzo de 2024.
Lecturas adicionales
- Notas sobre el Proto-Danksharding (opens in a new tab) - Vitalik Buterin
- Notas de Dankrad sobre el danksharding (opens in a new tab)
- Dankrad, Proto y Vitalik discuten sobre el danksharding (opens in a new tab)
- La ceremonia KZG (opens in a new tab)
- Charla de Carl Beekhuizen en Devcon sobre configuraciones de confianza (opens in a new tab)
- Más sobre el muestreo de disponibilidad de datos para blobs (opens in a new tab)
- Dankrad Feist sobre compromisos y pruebas KZG (opens in a new tab)
- Compromisos polinómicos KZG (opens in a new tab)
Última actualización de la página: 6 de junio de 2026