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

La máquina virtual de Ethereum proporciona un entorno virtual para el desarrollo de contratos inteligentes sobre su propia blockchain.
EVM Ethereum CryptoConexión

Ethereum se complementa con su máquina virtual para facilitar el desarrollo de DApps y ampliar sus funcionalidades.



Los objetivos principales de la EVM son:

-Desarrollo de DApps.
-Proporcionar seguridad y estabilidad a Ethereum.
-Lograr la interoperabilidad entre cadenas de bloques compatibles con la EVM.



¿Qué es una máquina virtual?

Antes de adentrarnos en lo que es la máquina virtual de Ethereum vamos a explicar brevemente en qué consiste una máquina virtual.

Una máquina virtual es un entorno que se crea mediante software y que permite emular un dispositivo hardware en nuestra propia computadora, con su sistema operativo independiente, que realmente se encuentra en nuestra propia máquina. Pero, ¿para qué es necesario una máquina virtual? Realmente es algo razonable hacernos esta pregunta, si ya tenemos nuestro equipo con su propio sistema operativo, ¿no es suficiente? Pues bien, uno de los motivos es que  necesitemos utilizar determinadas herramientas que no son compatibles con el sistema operativo de nuestra máquina, y para ello se instala esta máquina virtual, con un sistema operativo diferente, que nos permita utilizar esas herramientas que necesitamos en nuestra máquina.  Por ejemplo, permite instalar el sistema operativo Linux en una máquina MacOs.

Con la llegada de la tecnología blockchain las máquinas virtuales se han incorporado también a este ecosistema, y una de las más importantes, debido a la cadena de bloques con la que trabajan, es la Ethereum Virtual Machine (EVM), que veremos a continuación. En este caso el objetivo fundamental es que los contratos inteligentes de Ethereum se puedan ejecutar en los diferentes nodos que conforman la blockchain y que pueden tener sistemas operativos distintos.

EVM Ethereum
Fuente: Freepik

La EVM

La máquina virtual de Ethereum, o Ethereum Virtual Machine (EVM), es el entorno virtual de Ethereum, sin duda la pieza clave de esta blockchain. Es donde se ejecutan los contratos inteligentes que habilitan todas las funcionalidades de la cadena de bloques.

Funcionamiento

El funcionamiento de la Ethereum Virtual Machine  se realiza de la siguiente manera: 

  • El desarrollador crea su contrato inteligente en el lenguaje de alto nivel que  elija, compatible con Ethereum, como por ejemplo Solidity.
  • El compilador de Solidity lo convierte en un conjunto de instrucciones de la EVM. Las instrucciones realizan una serie de operaciones, estas operaciones son los OP_CODES de la EVM. Un OpCode o código de operación es un código o instrucción primitiva que nos permite programar operaciones dentro de una blockchain. Gracias al conjunto de estos códigos se pueden crear estructuras de programación avanzadas o smart contracts que luego son leídos y ejecutados por los nodos de una red blockchain.

Por último este conjunto de instrucciones se convierte en código binario de la máquina virtual, llamado bytecode.

Ventajas y desventajas

Las principales ventajas que proporciona la EVM son:

  • Permite el desarrollo de aplicaciones descentralizadas o DApps.
  • Proporciona un alto nivel de seguridad.
  • La EVM es compatible con diferentes lenguajes de programación de alto nivel ( como Solidity, Vyper, Serpent o Bamboo, entre otros) lo que permite atraer a diferentes programadores especializados.
  • La máquina virtual de Ethereum es pública y accesible, por lo que todas las transacciones y contratos inteligentes son verificables y accesibles también.
  • La interoperabilidad entre las diferentes DApps y blockchains compatibles con la EVM es uno de los grandes aportes de esta tecnología.

Algunas de sus desventajas son:

  • La arquitectura de la EVM es compleja, por lo que requiere cierta experiencia a nivel de desarrollador para poder trabajar con ella.
  • El coste de las transacciones, medido en gas de Ethereum, puede ser alto en algunas ocasiones.
  • La descentralización no es completa, se calcula que alrededor de un 25% de los nodos que conforman la cadena de bloques de Ethereum se encuentran en servidores Amazon.
Más información

Si quieres profundizar en algún tema acerca de esta tecnología puedes hacerlo en su página oficial aquí.


¿Quieres seguir aprendiendo?
Cadenas-de-Bloques-CryptoConexión

¿Qué son las cadenas de bloques de capa 1 y 2?
Las soluciones de las cadenas de bloques de capa 1 y capa 2 son necesarias para lograr la escalabilidad que toda tecnología blockchain necesita. Leer artículo.

Comparte nuestro artículo:
LinkedIn
Facebook
Twitter
Reddit
Telegram
WhatsApp
Email
Más sobre:

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio esta protegido por reCAPTCHA y laPolítica de privacidady losTérminos del servicio de Googlese aplican.

El periodo de verificación de reCAPTCHA ha caducado. Por favor, recarga la página.