Skip to main content

Qué es la EVM

Nota: Este documento es una traducción automática del original en inglés.

Qué es la EVM

La EVM (Ethereum Virtual Machine) es el motor de computación que impulsa Ethereum y un gran número de otras blockchains. Es el entorno de software que ejecuta los contratos inteligentes —programas autoejecutables almacenados en la blockchain—. Cuando un desarrollador escribe un contrato inteligente en Solidity (u otro lenguaje compatible con EVM), lo compila y lo despliega en una cadena, la EVM es lo que realmente ejecuta ese código.

Cada nodo de una red compatible con EVM ejecuta la misma máquina virtual con las mismas reglas. Esto es lo que hace que los contratos inteligentes sean deterministas: dadas la misma entrada y el mismo estado, cada nodo produce la misma salida. No hay ambigüedad, ni el problema de "funciona en mi máquina". La EVM garantiza que todos los participantes de la red estén de acuerdo sobre el resultado de cada cómputo.

En resumen: la EVM es el motor de ejecución estandarizado para los contratos inteligentes en Ethereum y en las cadenas compatibles con EVM. Define cómo se ejecuta el código, cómo se almacena el estado y cómo se consume el gas —creando un runtime común que funciona de forma idéntica en todos los nodos—.

Cómo funciona la EVM

Ejecución de bytecode

Los contratos inteligentes no se almacenan on-chain como código fuente legible por humanos. Antes del despliegue, el código fuente (típicamente escrito en Solidity) se compila a bytecode —un conjunto de instrucciones de bajo nivel que la EVM entiende—. Cada instrucción es un opcode: una operación básica como "sumar dos números", "almacenar un valor en memoria", "cargar datos del almacenamiento" o "transferir tokens".

Cuando una transacción activa un contrato inteligente, cada nodo validador de la red:

  1. Carga el bytecode del contrato desde el estado de la blockchain.
  2. Ejecuta los opcodes secuencialmente, siguiendo la especificación de la EVM.
  3. Actualiza el estado de la blockchain según el resultado de la ejecución.
  4. Cobra gas por cada opcode ejecutado.

Como cada nodo ejecuta el mismo bytecode con las mismas reglas, todos llegan al mismo resultado. Esta ejecución determinista es la base de la computación sin confianza on-chain.

Gas

Cada opcode tiene un costo de gas —una unidad de medida que representa el esfuerzo computacional necesario para ejecutar esa instrucción—. El gas sirve para dos propósitos:

  • Medición de recursos — el gas previene los bucles infinitos y garantiza que cada cómputo consuma una cantidad acotada de recursos de la red. Un contrato que intente ejecutarse para siempre agotará su límite de gas y revertirá.
  • Mecanismo de comisiones — los usuarios pagan gas fees (denominadas en el token nativo de la cadena) para compensar a los validadores por ejecutar sus transacciones. Las operaciones más complejas cuestan más gas.

Los costos de gas están definidos por la especificación de la EVM y son los mismos en todas las cadenas compatibles con EVM (aunque el precio del gas en el token nativo varía según la red).

Estado y almacenamiento

La EVM mantiene un estado global —un mapeo de direcciones (tanto cuentas de usuario como cuentas de contrato) a sus saldos, código y almacenamiento actuales—. El almacenamiento de los contratos inteligentes se organiza como un almacén de clave-valor: cada contrato tiene su propio espacio de direcciones de 256 bits donde puede leer y escribir datos persistentes.

Las operaciones de almacenamiento (escribir y leer del estado persistente) están entre las operaciones más caras de la EVM en términos de gas, porque afectan a los datos que cada nodo debe almacenar permanentemente.

Arquitectura basada en pila

La EVM es una máquina de pila: usa una pila de tipo último-en-entrar-primero-en-salir para almacenar valores intermedios durante el cómputo, en lugar de registros con nombre. Los opcodes empujan valores a la pila, operan sobre los elementos superiores y devuelven los resultados a la pila. Este diseño es simple y está bien especificado, pero difiere de las arquitecturas basadas en registros que usan la mayoría de las CPU tradicionales y algunas máquinas virtuales de blockchain más nuevas (como el SBF/eBPF de Solana).

Por qué importa la EVM

El estándar que se convirtió en un ecosistema

La importancia de la EVM se extiende mucho más allá de Ethereum en sí. Como la especificación de la EVM es abierta y está bien documentada, muchas otras blockchains la han adoptado —ya sea ejecutando la EVM de forma nativa o implementando una capa de ejecución compatible con EVM—. Esto ha creado un ecosistema compartido:

Qué se comparte Qué significa en la práctica
Lenguaje de contratos inteligentes Los desarrolladores escriben Solidity una vez y despliegan en cualquier cadena EVM
Herramientas de desarrollo Hardhat, Foundry, Remix y otras herramientas funcionan en todas las cadenas EVM
Compatibilidad de wallets MetaMask y otras wallets EVM funcionan con solo añadir una nueva red
Estándares de token ERC-20 (tokens fungibles), ERC-721 (NFT) y otros estándares son portables entre cadenas
Auditoría y seguridad Los auditores de seguridad, las herramientas de verificación formal y las mejores prácticas se transfieren entre cadenas EVM
Conocimiento del desarrollador Un desarrollador que conoce Solidity y la EVM puede trabajar en Ethereum, Polygon, Avalanche, BNB Chain, Arbitrum, Base y docenas de otras redes

Esta portabilidad es la razón por la que la compatibilidad con EVM se convirtió en la elección por defecto para las nuevas blockchains que quieren atraer desarrolladores y aplicaciones rápidamente. Es más barato y rápido unirse a un ecosistema existente que construir uno desde cero.

Despliegue multicadena

Para los proyectos —incluidos los proyectos de IA cripto— la compatibilidad con EVM significa que un contrato inteligente desplegado en Ethereum puede desplegarse en Polygon, la C-Chain de Avalanche, Arbitrum, Base o BNB Smart Chain con modificaciones mínimas. Esto permite:

  • Presencia multicadena — un proyecto puede desplegar el mismo contrato de token y la misma lógica central en múltiples cadenas para llegar a distintas bases de usuarios.
  • Migración de cadena — si un proyecto necesita moverse a una cadena con comisiones más bajas o mayor rendimiento, la compatibilidad con EVM reduce el costo de la migración.
  • Composabilidad — en cualquier cadena EVM dada, los contratos pueden interactuar entre sí usando las mismas interfaces y estándares, permitiendo la composabilidad DeFi, las integraciones de tokens y la infraestructura compartida.

Limitaciones

La EVM se diseñó para la ejecución de contratos inteligentes de propósito general, no para cargas de trabajo intensivas en cómputo. Las limitaciones clave incluyen:

  • Sin coma flotante nativa — la EVM usa solo enteros de 256 bits. La aritmética de coma flotante (esencial para la mayoría de los cómputos de IA/ML) debe emularse, lo cual es extremadamente caro en gas.
  • Restricciones de gas — el límite de gas por bloque limita el cómputo total por bloque. Las operaciones complejas (como la multiplicación de matrices para la inferencia de IA) son prohibitivamente caras dentro de la ejecución de la EVM.
  • Ejecución secuencial — la EVM procesa las transacciones secuencialmente dentro de un bloque. La ejecución paralela, que las CPU modernas usan para el rendimiento, no se admite de forma nativa (aunque algunas cadenas compatibles con EVM más nuevas experimentan con la ejecución paralela de la EVM).
  • Costo de almacenamiento — almacenar grandes cantidades de datos on-chain es caro. Los modelos de IA, los conjuntos de datos y los cómputos intermedios son demasiado grandes para el almacenamiento on-chain.

Estas limitaciones explican por qué los proyectos de IA cripto normalmente ejecutan las cargas de trabajo de IA off-chain y usan los contratos EVM on-chain solo para la coordinación, los pagos, la gobernanza y el registro de resultados.

Dónde aparece en las fichas de proyecto de DecAIHub

En las fichas de proyecto de DecAIHub, la EVM aparece en:

  • Type — EVM indica que el proyecto opera en una cadena compatible con EVM. Esto le dice al lector que el proyecto usa contratos inteligentes basados en Solidity y las herramientas estándar de Ethereum.
  • Main chain — se lista la cadena específica compatible con EVM (Ethereum, Polygon, Avalanche, Arbitrum, Base, BNB Smart Chain, etc.). Todas estas comparten la ejecución de la EVM.
  • Token standard — las cadenas compatibles con EVM usan los estándares de token de Ethereum. ERC-20 (tokens fungibles), ERC-721 (NFT) y ERC-1155 (multi-token) son los más comunes. Estos estándares son específicos del ecosistema EVM.
  • Smart contracts — si los contratos inteligentes de un proyecto están verificados en un explorador de bloques, el lector puede inspeccionarlos. Los contratos EVM se escriben en Solidity (o Vyper) y se compilan a bytecode de la EVM.

Una clasificación Type: EVM proporciona un contexto útil sobre las herramientas y el ecosistema del proyecto, pero no dice, por sí sola, nada sobre la calidad de la IA del proyecto ni sobre la necesidad de su token.

Lo que la compatibilidad con EVM por sí sola no prueba

  • La compatibilidad con EVM no prueba la capacidad de IA. La EVM ejecuta contratos inteligentes; los modelos de IA corren en GPU. Que un proyecto esté en una cadena EVM no dice nada sobre si tiene un AI component genuino.
  • Desplegar en una cadena EVM no hace único a un proyecto. El mismo contrato puede desplegarse en docenas de cadenas compatibles con EVM. La elección del despliegue es una decisión de infraestructura, no un diferenciador.
  • Los contratos inteligentes verificados no prueban que el componente off-chain funcione. Un proyecto puede tener un código on-chain limpio y auditado y aun así no tener ningún pipeline de IA que funcione detrás. Los componentes on-chain y off-chain deben evaluarse por separado.
  • Las herramientas del ecosistema EVM no reducen la necesidad de evidencia. Tener soporte de MetaMask, un listado en un explorador de bloques y tokens ERC-20 es infraestructura estándar —no es evidencia de tecnología, innovación o calidad—.
  • La ejecución de la EVM no es ejecución de IA. Ejecutar una red neuronal dentro de la EVM es prohibitivamente caro para cualquier modelo no trivial. Cuando un proyecto dice "IA on-chain" en una cadena EVM, comprueba exactamente qué corre on-chain frente a off-chain.

No confundir con

  • Ethereum — Ethereum es una red blockchain específica. La EVM es la máquina virtual que Ethereum (y muchas otras cadenas) usan. "EVM" se refiere al motor de ejecución; "Ethereum" se refiere a la red, sus validadores y su estado.
  • Blockchain non-EVM — blockchains como Solana, las cadenas Cosmos y Bittensor usan máquinas virtuales diferentes (SVM, CosmWasm, runtimes personalizados). No son compatibles con EVM, lo que significa que los contratos de Solidity y las herramientas de EVM no funcionan en ellas de forma nativa.
  • Contrato inteligente — un contrato inteligente es un programa que corre sobre la EVM. La EVM es el motor; el contrato inteligente es el código que ejecuta. Los contratos inteligentes también existen en cadenas non-EVM, usando distintos lenguajes y runtimes.
  • Solidity — Solidity es el lenguaje de programación más popular para los contratos inteligentes de la EVM, pero no es la EVM en sí. Vyper es otro lenguaje compatible con EVM. La EVM ejecuta bytecode compilado independientemente de qué lenguaje fuente lo produjo.

Preguntas frecuentes

¿Qué significa "compatible con EVM"?

Una blockchain es compatible con EVM si puede ejecutar bytecode de la EVM —la forma compilada de los contratos inteligentes de Solidity— usando el mismo conjunto de opcodes y las mismas reglas de ejecución que Ethereum. En la práctica, esto significa que los desarrolladores pueden desplegar los mismos contratos en múltiples cadenas compatibles con EVM, usar las mismas herramientas (Hardhat, Foundry, MetaMask) y apoyarse en los mismos estándares de token (ERC-20, ERC-721). Ejemplos de cadenas compatibles con EVM incluyen Polygon, Avalanche C-Chain, BNB Smart Chain, Arbitrum y Base.

¿Pueden los modelos de IA correr dentro de la EVM?

En teoría, cualquier cómputo puede expresarse como opcodes de la EVM. En la práctica, ejecutar modelos de IA no triviales dentro de la EVM es prohibitivamente caro. La EVM carece de soporte nativo de coma flotante, tiene límites estrictos de gas por bloque y cobra altos costos de gas por las operaciones complejas. Una sola pasada hacia adelante a través de incluso una pequeña red neuronal costaría órdenes de magnitud más en gas de lo que cualquier aplicación práctica podría justificar. Por eso los proyectos de IA cripto ejecutan los modelos off-chain y usan la EVM solo para la lógica de coordinación, pago y verificación.

¿Por qué tantas blockchains adoptan la EVM?

Efectos de red. Ethereum fue la primera plataforma importante de contratos inteligentes, y su ecosistema de desarrolladores —el conocimiento de Solidity, las herramientas, la experiencia en auditoría, el soporte de wallets y los estándares de token— creció durante años. Una nueva blockchain que adopta la EVM gana inmediatamente acceso a todo este ecosistema. Los desarrolladores no necesitan aprender un nuevo lenguaje, los proyectos pueden desplegar contratos existentes y los usuarios pueden conectarse con wallets familiares. Construir un ecosistema competidor desde cero es mucho más caro e incierto. La compatibilidad con EVM es un atajo pragmático hacia la adopción.

¿Cuál es la diferencia entre compatible con EVM y equivalente a EVM?

Compatible con EVM significa que la cadena puede ejecutar bytecode de la EVM y admite los mismos opcodes, pero puede haber diferencias menores en el comportamiento (p. ej., costos de gas, precompilados o comportamiento de opcodes en casos límite). Equivalente a EVM significa que la cadena replica el comportamiento de la EVM de Ethereum a nivel de opcode —cada operación produce el mismo resultado que produciría en Ethereum—. La equivalencia con EVM es una afirmación más fuerte: significa que incluso los contratos complejos y las herramientas que dependen del comportamiento preciso de la EVM deberían funcionar sin modificaciones. Polygon zkEVM, por ejemplo, aspira a la equivalencia con EVM.

Referencias externas

  • Ethereum.org — Ethereum Virtual Machine — documentación oficial de la Ethereum Foundation que explica la arquitectura de la EVM, los opcodes y el modelo de ejecución.
  • Ethereum Yellow Paper — la especificación formal del protocolo de Ethereum, incluyendo el conjunto completo de opcodes de la EVM y la semántica de ejecución.
  • EVM Codes — referencia interactiva de los opcodes de la EVM con costos de gas, descripciones y un playground para probar la ejecución de bytecode.

Véase también