Ethereum Virtual Machine (EVM)

¿Qué es la Máquina Virtual de Ethereum (EVM)?

La Máquina Virtual Ethereum (EVM) es un software que establece las reglas de computación del estado de la red Ethereum de bloque a bloque. La EVM es una parte fundamental de Ethereum, ya que ejecuta contratos inteligentes, procesa transacciones y actualiza los saldos de las cuentas.

En palabras sencillas, la EVM es una máquina virtual o un ordenador en la nube que alimenta el protocolo Ethereum. Al igual que un ordenador, ejecuta código y tiene memoria para guardar información. Sin embargo, EVM no es un único ordenador, sino un conjunto de miles de máquinas en la nube repartidas por todo el mundo.

Funciones clave de EVM

Gestionar el estado de la blockchain de Ethereum

Ejecución de contratos inteligentes

Almacenamiento de datos Cálculo de tarifas de gas

¿Cómo funciona el EVM?

Los desarrolladores de Ethereum escriben el código de sus contratos inteligentes en un lenguaje de programación llamado Solidity. A continuación, el código se traduce a código de bytes para que la EVM pueda leer las instrucciones.

En el proceso de traducción del código de Solidity a código de bytes, las instrucciones se dividen primero en “opcodes” o códigos de operación. Cada línea de código se convierte en opcodes para que la EVM sepa exactamente cómo ejecutar una transacción.

Como sabemos, cada transacción en Ethereum requiere una tasa de gas para ser ejecutada. Por lo tanto, la relación entre opcodes y gas fees también es importante para entender cómo funciona el EVM.

En teoría, cuando se pagan tasas de gas, en realidad se está pagando por los opcodes que ejecuta el EVM. Cuantos más opcodes haya, mayores serán las tasas de gas.

Transacciones sencillas como el envío de ETH de una cuenta a otra requerirán menos gas en comparación con procesos complejos como la creación de un contrato inteligente, ya que el EVM está obligado a realizar más trabajo.

Características principales de EVM

  • Máquina virtual completa de Turing

La EVM está diseñada como una máquina virtual completa de Turing. La completitud de Turing se refiere a una máquina que puede resolver cualquier problema si se le dan los recursos necesarios de tiempo, energía e instrucciones completas.

La completitud de Turing de Ethereum es la capacidad de la red para comprender e implementar futuros acuerdos de un contrato inteligente.

  • Ejecución de código determinista

El EVM ejecuta código de forma determinista. Un contrato inteligente en particular siempre producirá la misma salida para la misma entrada. No importa dónde se ejecute el contrato inteligente o quién lo ejecute, la salida siempre será coherente para una entrada concreta.

  • Aislamiento

El EVM está diseñado para trabajar aislado del resto del sistema informático. Esto garantiza que los contratos inteligentes se ejecuten en un entorno seguro.

Arquitectura del EVM

Código EVM: El código de bytes que puede ejecutar el EVM.

Estado: Ethereum es una gran estructura de datos que contiene información sobre cuentas y saldos. El estado de esta información cambia de bloque a bloque a medida que la EVM procesa nuevas entradas para producir salidas deterministas.

Transacciones: Las transacciones son instrucciones firmadas criptográficamente por los usuarios que el EVM ejecuta. Existen dos tipos de instrucciones:

  • Las llamadas a mensajes pueden ser instrucciones de transacciones simples para enviar ETH de una cuenta a otra.
  • La creación de contratos son instrucciones para crear nuevos contratos inteligentes.

Espacio: El EVM utiliza tres componentes de espacio:

  • Pila o stack – almacenamiento temporal que tiene una capacidad máxima de 1024 elementos. Todas las operaciones se realizan en la pila.
  • Memoria – almacenamiento temporal que sólo es accesible durante la ejecución del contrato inteligente. Su contenido se descarta una vez finalizada la ejecución del contrato.
  • Almacenamiento – memoria persistente que no se pierde ya que los datos se almacenan en la blockchain de Ethereum. En comparación con la pila y la memoria, el uso de la memoria de almacenamiento conlleva un mayor gasto de gas.

Gas: cantidad de esfuerzo computacional necesario para ejecutar operaciones en una red blockchain. Cada cómputo EVM requiere tasas de gas de lo contrario, la transacción no será procesada.

Importancia de la compatibilidad con EVM

Ethereum ha crecido hasta convertirse en la red blockchain pública de contratos inteligentes más valiosa del mundo.

El 21 de junio de 2023, el ecosistema de aplicaciones descentralizadas (dApps) de Ethereum ostentaba un valor total bloqueado (TVL) de 24.630 millones de dólares. La segunda cadena más valiosa, Tron, contaba con un TVL de 5.000 millones de dólares, según DefiLlama. Esto demuestra una clara preferencia del mercado por Ethereum, que se ha consolidado como la cadena de bloques para las finanzas descentralizadas (DeFi).

Numerosas redes blockchain están diseñadas para ser compatibles con EVM. Esto permite a la cadena de bloques ejecutar contratos inteligentes de Ethereum. La compatibilidad con EVM permite a los desarrolladores desplegar fácilmente sus contratos inteligentes en Ethereum y en múltiples cadenas compatibles con EVM.

Las redes compatibles con EVM pueden aprovechar la gran cantidad de usuarios de Ethereum, lo que puede ser fundamental para el crecimiento y la adopción masiva.

¿Qué cadenas son compatibles con EVM?

  • Ethereum
  • Cadena BNB
  • Polygon PoS
  • Avalanche
  • Optimismo
  • Arbitrium
  • Fantom
  • Moonbean
  • Klaytn
  • Cronos

En resumen

El software EVM es el alma de Ethereum, ya que mantiene el estado de la cadena de bloques y ejecuta contratos inteligentes.

El meteórico crecimiento de Ethereum ha convertido a EVM en un estándar del sector, hasta el punto de que las redes blockchain rivales están diseñando sus sistemas para que sean compatibles con él.

Temas relacionados

Mensholong Lepcha

Mensholong Lepcha es un periodista financiero especializado en criptomonedas y mercados de valores globales. Ha trabajado para firmas de renombre como Reuters y Capital.com. Fascinado por la tecnología blockchain, los NFT y la escuela de inversión contrarian, Mensholong tiene experiencia en analizar la tokenomics, movimiento de precios y detalles técnicos de Bitcoin, Ethereum y otras redes blockchain. También ha escrito artículos sobre una amplia gama de temas financieros, que incluyen materias primas, forex, políticas monetarias de bancos centrales y otras noticias económicas.