Artículo

Todo lo que tienes que saber sobre Ethereum Virtual Machine

Cuando Vitalik Buterin creó Ethereum, quería ampliar los límites de la tecnología blockchain. Se inspiró en Bitcoin, pero pensó que la tecnología debía hacer algo más que procesar transacciones. Por eso creó la red blockchain Ethereum. Ethereum tiene todas las características de Bitcoin. Puede procesar transacciones entre iguales y almacenarlas de forma inmutable y descentralizada. También puede hacer ciertas cosas que Bitcoin no puede. Por ejemplo, puede ejecutar contratos inteligentes.

¿Cómo ejecuta una blockchain un contrato inteligente? En el caso de Ethereum, la respuesta es la Ethereum Virtual Machine (EVM). La EVM constituye la columna vertebral del funcionamiento de la red Ethereum. En este artículo, hablaremos de qué es la EVM, cómo funciona, sus ventajas y casos de uso. Pero antes de sumergirnos en profundidad, hagamos una rápida recapitulación sobre los contratos inteligentes.

¿Qué son los contratos inteligentes?

Los contratos inteligentes son programas informáticos o aplicaciones que se ejecutan de forma autónoma en una red blockchain. Consisten en códigos de datos que los desarrolladores despliegan para llevar a cabo instrucciones específicas. Los usuarios no controlan los contratos inteligentes, ya que se ejecutan según lo programado.

La red Ethereum es la primera blockchain que implementa contratos inteligentes. Como resultado, en la actualidad hay millones de contratos inteligentes codificados y desplegados en la blockchain de Ethereum. La EVM desempeñó un papel vital en la consecución de esa hazaña.

¿Qué es la Ethereum Virtual Machine (EVM)?

La EVM está integrada en el corazón de su protocolo. Como su nombre indica, la EVM es una máquina virtual o software digital que alimenta la red Ethereum. El software de la máquina virtual puede ejecutar programas, almacenar datos, conectarse a redes y realizar otras tareas computacionales. También es responsable de la ejecución del código y del despliegue de los contratos inteligentes.

Cómo funciona

Dado que Ethereum procesa algo más que transacciones de valor entre iguales, requiere un intrincado sistema de computación. Por eso, en lugar de llamar a la red un libro de contabilidad distribuido, los desarrolladores de Ethereum se refieren a ella como una "unbounded state machine". Y esa es una descripción básica de cómo funciona la EVM. Así pues, la red Ethereum consta de dos estados: un estado del mundo y un estado de la máquina.

Evm

Estado mundial

El estado mundial es donde Ethereum almacena los saldos de sus cuentas y contratos inteligentes. Al igual que el libro mayor de Bitcoin, está descentralizado, es inmutable y accesible a todo el mundo en línea. La EVM actualiza esta capa cada vez que completa una transacción. Eso significa que todo el mundo con un explorador de bloques puede ver la blockchain de Ethereum y ver los mismos datos en tiempo real.

Estado de la máquina

El estado máquina es donde la EVM lleva a cabo el procesamiento paso a paso de las transacciones. También se conoce popularmente como la caja de arena de Ethereum para desarrolladores. La red Ethereum procesa dos tipos de transacciones. El primer tipo es la "message call", cuando una cuenta transfiere tokens ETH a otra. En este caso, la EVM traslada los tokens ETH de una dirección de billetera a otra. Que luego actualiza la transacción en el estado mundial. Al remitente se le cobran tasas de gas por los cálculos realizados en el envío de la transacción.

El segundo tipo de transacción se denomina "creación de contrato". Se refiere a cuando un desarrollador quiere ejecutar un contrato inteligente en Ethereum. En este caso, el remitente suministra las tasas de gas e introduce un "Smart Contract bytecode".

Lenguaje de programación Solidity

El lenguaje informático más utilizado para crear contratos inteligentes de Ethereum es Solidity. Al igual que Javascript, es un lenguaje de alto nivel apto para humanos, pero las máquinas no lo entienden. Por lo tanto, una vez que los desarrolladores escriben un contrato inteligente en Solidity, deben traducirlo a lenguaje de máquina o bytecodes utilizando un compilador de Ethereum Virtual Machine, como solc.

Ejecución del contrato inteligente

A medida que la EVM ejecuta el código, el suministro de gas se reduce en función del coste de gas de los cálculos ejecutados. Si, en algún momento, el suministro de gas se reduce a cero antes de que se complete la transacción, la EVM se detiene inmediatamente. Abandona la transacción y no realiza ningún cambio en el estado del mundo. La red no se ve afectada, pero el saldo de ETH del remitente disminuye para pagar los cálculos utilizados para ejecutar el código hasta el punto de parada. Sin embargo, si la ejecución se completa con éxito, la EVM actualiza el estado del mundo para que coincida con la versión del estado de la máquina.

Tasas de gas Ethereum

Como se desprende de lo anterior, las tasas de gas desempeñan un papel crucial en el procesamiento de transacciones en la blockchain de Ethereum. Cuando Ethereum utilizaba el mecanismo de consenso Prueba de Trabajo (PoW), el procesamiento de una transacción requería hardware y electricidad, y los mineros necesitaban incentivos para llevar a cabo sus tareas. En el caso del procesamiento de transferencias de tokens ETH, las tasas de gas varían en función de la congestión del pool.

Cuando se ejecutan contratos inteligentes, las tasas de gas asumen un papel diferente. En el momento de la ejecución, los bytecodes de los contratos inteligentes se descomponen en piezas más pequeñas llamadas "opcodes". Opcodes es la abreviatura de Operational Codes (códigos operativos) y son las instrucciones que utiliza la EVM para realizar los cálculos. A cada opcode se le asigna una tarifa de gas: cuanto más complejo sea el opcode, mayor será el coste. Este paso es esencial para mantener la blockchain de Ethereum segura frente a ataques maliciosos. Por ejemplo, si un usuario despliega un ataque DDos, la EVM seguirá ejecutando el contrato inteligente en estado de máquina. Cobrará tasas de gas por cada cálculo, y cuando el emisor se quede sin gas, abandonará la transacción.

¿Cuáles son las ventajas de la EVM?

Como se ha descrito anteriormente, la EVM impide que las actividades maliciosas ataquen la red. Por tanto, permite la ejecución de contratos inteligentes y otros servicios automatizados en una plataforma segura y fiable.

La red Ethereum tiene el mayor ecosistema de criptomonedas. Es el estándar de oro para la creación de Dapp y el despliegue de contratos inteligentes. Muchas otras blockchain han creado cadenas laterales que permiten a los desarrolladores de Ethereum transferir sus aplicaciones sin cambiar el código.

EVM también está descentralizada, lo que significa que cualquiera puede crear un contrato inteligente en Ethereum sin permiso. También permite a los desarrolladores crear y desplegar servicios y aplicaciones descentralizados, que recientemente han ganado una popularidad masiva.

Casos de uso de la EVM

Con la Ethereum Virtual Machine ejecutando contratos inteligentes, muchas nuevas invenciones han llegado al espacio blockchain. He aquí los cinco principales casos de uso de la EVM:

Tokens ERC-20

Los tokens ERC-20 son generados por contratos inteligentes que utilizan estructuras de datos predefinidas. La estructura de datos se encarga de dar un nombre al token, distribuirlo y hacer un seguimiento de él. En 2017, cuando las ofertas iniciales de monedas (ICO) eran populares, se lanzaron muchas criptomonedas nuevas utilizando los tokens ERC-20. Hoy en día, el mejor uso de los tokens ERC-20 es para las stablecoins, como USDT.

Exchanges descentralizados (DEX)

Los exchanges descentralizados (DEX) permiten a los usuarios comprar, vender u operar con criptomonedas mediante contratos inteligentes. Los exchanges como Uniswap y ShushiSwap también utilizan aplicaciones de creadores de mercado automatizados (AMM), que permiten a los usuarios aprovechar los fondos de liquidez de tokens sin la interferencia de terceros.

NFT

Los tokens no fungibles (NFT) son obras de arte digitales almacenadas en la blockchain. Autentifican la propiedad y no pueden copiarse. Los entusiastas de la blockchain utilizan contratos inteligentes para crear y acuñar colecciones de NFT. Algunas de las colecciones de NFT más caras son las de Bored Ape Yacht Club (BAYC) y Cryptopunks. Los propietarios pueden transferir o trading sus NFT en mercados como OpenSea.

Préstamos DeFi

Los préstamos financieros descentralizados (DeFi) se refieren a plataformas que permiten a los usuarios prestar o tomar prestadas criptomonedas sin recurrir a terceros. Los contratos inteligentes rigen los protocolos de préstamo y empréstito. Los préstamos se emiten inmediatamente a los prestatarios, y los prestamistas a veces reciben intereses diariamente.

Organizaciones Autónomas Descentralizadas

Una organización autónoma descentralizada (DAO) es una entidad comunal que carece de autoridad central. En las DAO, los miembros individuales toman colectivamente las decisiones de gobierno relativas al proyecto. Las reglas de una DAO las establecen los miembros principales de la comunidad y se aplican mediante contratos inteligentes.

Limitaciones de EVM

La EVM tiene dos limitaciones importantes. En primer lugar, requiere que los usuarios tengan conocimientos previos de Solidity y habilidades de codificación. Mucha gente necesita ayuda para codificar, lo que dificulta que los nuevos usuarios creen contratos inteligentes e interactúen con ellos.

Su segunda limitación es que las tasas de gas pueden llegar a ser muy caras cuando se crea un contrato inteligente o se despliega una aplicación de la red Ethereum.

¿Qué criptomonedas son compatibles con EVM?

Las blockchains compatibles con EVM son una solución sencilla para resolver el costoso problema de las tasas de gas. Los desarrolladores han tomado prestadas ciertas partes de la red Ethereum y han creado DApps que permiten a los usuarios mover activos rápida y fácilmente entre cualquier red EVM. Muchas de las blockchain más populares en uso hoy en día siguen este enfoque compatible con EVM, principalmente:

  • Binance Smart Chain
  • Avalanche
  • Fantom
  • Cardano
  • Polygon
  • Tron

El futuro de EVM

Partiendo de los cimientos básicos de Bitcoin, la visión de Vitalik Buterin es crear un superordenador descentralizado al que todos puedan acceder virtualmente. La Ethereum Virtual Machine ha desempeñado un enorme papel en hacer realidad esa visión. Desde su concepción, la EVM ha tenido varias actualizaciones y sigue evolucionando y mejorando. Dado que las aplicaciones de contratos inteligentes impulsaron las últimas grandes tendencias, es asombroso imaginar lo que esta tecnología desbloqueará.


Preguntas frecuentes

¿Qué es un EVM en cripto?

EVM son las siglas de Ethereum Virtual Machine. Es un software digital que permite a la red Ethereum ejecutar y desplegar contratos inteligentes.

¿Qué criptomonedas utilizan EVM?

Muchas de las blockchain más populares en uso hoy en día siguen este enfoque compatible con EVM, principalmente:

  • Binance Smart Chain
  • Avalanche
  • Fantom
  • Cardano
  • Polygon
  • Tron

¿Solana se basa en EVM?

No. Solana no es compatible con EVM. Utiliza su propia infraestructura, conjuntos de herramientas para desarrolladores y estándares de tokens.

¿Cuáles son las ventajas de la EVM?

  • La EVM es un entorno seguro que permite a los desarrolladores crear y desplegar contratos inteligentes, inmunes a los piratas informáticos.
  • La EVM es interoperable, lo que significa que los desarrolladores pueden transferir fácil y rápidamente sus aplicaciones a diferentes blockchain sin cambiar una línea de código.
  • La EVM también está descentralizado. Permite a cualquiera crear e interactuar con contratos inteligentes sin necesidad de permiso.
Artículos relacionados
Ver más
Ver más