Conclusiones clave
Un zkEVM es una Máquina Virtual Ethereum de conocimiento cero que puede ejecutar contratos inteligentes de una forma compatible con la tecnología de pruebas de conocimiento cero (ZKP).
Los zkEVM amplían los zk-rollups en Ethereum para admitir aplicaciones descentralizadas (DApps), no solo transferencias simples de tokens.
Los desarrolladores pueden trasladar DApps y contratos inteligentes de Ethereum existentes a un zkEVM sin necesidad de aprender criptografía de conocimiento cero.
Los zkEVM se clasifican en cuatro tipos principales según el equilibrio entre compatibilidad con EVM y eficiencia de las pruebas ZK.
Introducción
Los desarrolladores de Ethereum no diseñaron la red pensando en pruebas de conocimiento cero (ZKP) cuando propusieron la red por primera vez en 2014. En los años posteriores, la tecnología ZKP ha ganado un impulso significativo en el espacio blockchain, y los equipos han trabajado arduamente para llevar capacidades ZKP a Ethereum.
El resultado es el zkEVM, un tipo de máquina virtual que puede ejecutar contratos inteligentes de Ethereum mientras genera pruebas criptográficas de su corrección. Este artículo explica qué es un zkEVM, cómo funciona y qué redes han puesto la tecnología en práctica.
¿Qué son los ZK-Rollups?
Un rollup es una solución de escalabilidad de Capa 2 que procesa muchas transacciones fuera de la red principal (mainnet) de Ethereum y, luego, envía un resumen comprimido a Ethereum como una única transacción. Este enfoque aumenta el rendimiento y reduce costos en comparación con ejecutar cada transacción en la Capa 1.
Un zk-rollup es un rollup que utiliza tecnología ZKP para demostrar que todas las transacciones fuera de la cadena se procesaron correctamente. En lugar de publicar todos los datos de las transacciones, envía una prueba de validez junto con una actualización del estado. Los rollups optimistas adoptan un enfoque diferente: se basan en pruebas de fraude y en incentivos económicos en lugar de garantías criptográficas.
Los primeros zk-rollups estaban limitados a operaciones simples como transferencias de tokens. Un zkEVM extiende esto para cubrir el rango completo de ejecución de contratos inteligentes, haciendo que los zk-rollups sean adecuados para DApps de propósito general.
¿Qué es la EVM?
La Máquina Virtual de Ethereum (EVM) es el entorno de ejecución dentro de Ethereum donde se ejecutan los contratos inteligentes. Cada vez que se ejecuta un contrato inteligente, la EVM pasa de un estado a otro. Todos los nodos de la red deben estar de acuerdo con este estado para mantener el consenso.
La EVM se define mediante un conjunto de opcodes, que son instrucciones de bajo nivel. Cuando los desarrolladores escriben contratos en Solidity o Vyper, esos contratos se compilan a bytecode de la EVM, que la EVM puede interpretar. Este estándar compartido es lo que hace que los contratos inteligentes de Ethereum sean portables a través de cadenas compatibles.
¿Cómo funciona un zkEVM?
Un zkEVM replica el entorno de Ethereum dentro de un zk-rollup. Toma un estado inicial, procesa un lote de transacciones según las reglas de la EVM y genera un nuevo estado junto con una prueba de validez. Un contrato verificador en el mainnet de Ethereum comprueba esta prueba sin volver a ejecutar cada transacción.
Este enfoque significa que la corrección de cada transición de estado está garantizada criptográficamente, no solo asumida. Los desarrolladores pueden desplegar contratos inteligentes existentes de Ethereum en un zkEVM con poca o ninguna modificación, porque el entorno de ejecución sigue las mismas reglas que en el mainnet.
Generar pruebas ZK para la ejecución de la EVM requiere una gran cantidad de cómputo. La aceleración por hardware y las mejoras algorítmicas en los últimos años han reducido considerablemente los tiempos de generación de pruebas para muchas implementaciones: de lo que antes podían ser potencialmente varias horas a minutos o segundos en algunas configuraciones, aunque esto varía según la red y el tamaño del lote (batch).
Compatibilidad con EVM vs. equivalencia de EVM
La compatibilidad con EVM significa que una blockchain puede desplegar y ejecutar contratos basados en Solidity con cambios mínimos. Muchas cadenas (incluida BNB Smart Chain) son compatibles con EVM. En general, los desarrolladores pueden copiar contratos de Ethereum y desplegarlos con solo pequeños ajustes.
La equivalencia EVM va más allá. Significa que un zkEVM se comporta de forma idéntica a Ethereum a un nivel técnico profundo, de modo que las herramientas existentes, los entornos de depuración y la infraestructura de desarrollo funcionan sin modificaciones. Cuanto más cerca esté un zkEVM de la equivalencia total, más fácil será la migración, pero más difícil es generar pruebas ZK eficientes.
Diferentes tipos de zkEVM
En un artículo del blog, el cofundador de Ethereum, Vitalik Buterin, categorizó los zkEVM en cuatro tipos según el equilibrio entre eficiencia ZK y compatibilidad con EVM.
Tipo 1: equivalencia a nivel de consenso
Un zkEVM de Tipo 1 es totalmente equivalente a Ethereum a nivel de consenso. Puede verificar bloques de Ethereum directamente. Esto lo convierte en el tipo con mayor compatibilidad, pero la generación de pruebas ZK es la más exigente computacionalmente. Un ejemplo de esto es el zkEVM de Tipo 1 de Taiko en su red principal (mainnet), lanzada a mediados de 2024.
Tipo 2: equivalencia a nivel de bytecode
Un zkEVM de Tipo 2 es totalmente compatible con la EVM, pero difiere de Ethereum en algunas estructuras de datos internas, como el árbol de estados. Admite todas las DApps (aplicaciones descentralizadas) y herramientas existentes de Ethereum. Los tiempos de las pruebas mejoran frente al Tipo 1, pero siguen siendo significativos. Scroll y Polygon zkEVM son ejemplos de redes de Tipo 2.
Tipo 2.5: Tipo 2, con costos de gas modificados
El Tipo 2.5 es similar al Tipo 2, pero ajusta los costos de gas para operaciones que son costosas de demostrar. Esto mejora la eficiencia del probador con un impacto pequeño en la compatibilidad total.
Tipo 3: equivalencia casi total con la EVM
Los zkEVM de Tipo 3 sacrifican cierta compatibilidad por un mejor rendimiento ZK. Pueden eliminar algunos precompilados u otras funciones de la EVM que son difíciles de probar de manera eficiente. Algunas DApps podrían necesitar modificaciones menores para implementarse.
Tipo 4: equivalencia a nivel de lenguajes de alto nivel
Los zkEVM de Tipo 4 compilan lenguajes de alto nivel como Solidity directamente a bytecode compatible con ZK, evitando por completo el bytecode de la EVM. Esto ofrece el mejor rendimiento de las pruebas, pero la menor compatibilidad. zkSync Era utiliza un enfoque de Tipo 4.
Preguntas frecuentes (FAQ)
¿Qué es un zkEVM?
Un zkEVM es una Máquina Virtual Ethereum de conocimiento cero que procesa contratos inteligentes dentro de un zk-rollup y, luego, genera una prueba criptográfica que demuestra que todas las transacciones se ejecutaron correctamente. Permite a los desarrolladores usar el código existente de Ethereum con los beneficios adicionales de seguridad y escalabilidad de la tecnología de ZKP.
¿En qué se diferencia un zkEVM de un zk-rollup regular?
Los zk-rollups tempranos solo admitían operaciones simples, como transferencias de tokens. Un zkEVM amplía esto al conjunto completo de instrucciones de la EVM, lo que significa que cualquier contrato inteligente de Ethereum, incluidos protocolos complejos de DeFi y plataformas de NFT, puede ejecutarse en un zkEVM con modificaciones mínimas.
¿Cuáles son los cuatro tipos de zkEVM?
Vitalik Buterin definió cuatro tipos. El Tipo 1 es totalmente equivalente a Ethereum a nivel de consenso. El Tipo 2 es totalmente compatible con EVM, pero difiere en algunas estructuras de datos internas. El Tipo 3 sacrifica cierta compatibilidad por un mejor rendimiento ZK. El Tipo 4 compila lenguajes de alto nivel directamente a bytecode compatible con ZK, ofreciendo la mayor eficiencia de las pruebas.
¿Los zkEVM hacen que Ethereum sea más seguro?
Los zkEVM usan pruebas criptográficas de validez en lugar de depender de la teoría de juegos económica para garantizar una ejecución correcta. Esto significa que la corrección de cada lote (batch) puede verificarse matemáticamente, lo que puede fortalecer las garantías de seguridad frente a sistemas que dependen de que “retadores” detecten el fraude. Sin embargo, como todos los sistemas blockchain, los zkEVM conllevan riesgo de contratos inteligentes y otros riesgos técnicos que los usuarios deberían investigar por su cuenta.
Reflexiones finales
Los zkEVM combinan la seguridad de la criptografía de ZKP con la compatibilidad total de contratos inteligentes, lo que hace posible ejecutar DApps con mayor rendimiento y menor costo sin sacrificar garantías de seguridad del nivel de Ethereum. Vale la pena comprender los diferentes tipos y cómo la tecnología podría ser compatible con casos de uso de Web2.
Lecturas adicionales
¿Qué es una prueba de conocimiento cero y cómo impacta en blockchain?
Rollups optimistas vs. de conocimiento cero: ¿cuál es la diferencia?
Mejorar la transparencia cripto con pruebas de conocimiento cero
¿Qué son los Zk-Rollups? La técnica de escalabilidad de capa 2
Soluciones de escalado de Capa 1 vs. Capa 2 en blockchain
Aviso legal: Este contenido se te presenta “tal cual” para información general y/o fines educativos únicamente, sin representación ni garantía de ningún tipo. No debe interpretarse como asesoramiento financiero, legal ni de otro tipo, ni se pretende recomendar la compra de ningún producto o servicio específico. Debes buscar tu propio asesoramiento con profesionales adecuados. Cuando el contenido sea aportado por un tercero, ten en cuenta que las opiniones expresadas pertenecen a dicho tercero y no necesariamente reflejan las de Binance Academy. Los precios de los activos digitales pueden ser volátiles. El valor de tu inversión puede subir o bajar y es posible que no recuperes la cantidad invertida. Eres el único responsable de tus decisiones de inversión y Binance Academy no es responsable de ninguna pérdida que puedas sufrir. Para obtener más información, consulta nuestros Términos de uso, Aviso de riesgos y Términos de Binance Academy.
