Ethereum Virtual Machine es una entidad única mantenida por todos los ordenadores que ejecutan un cliente Ethereum. Esta máquina realiza un seguimiento de todo lo que ocurre en la blockchain de Ethereum. Todo el mundo de las criptomonedas conoce Ethereum. La mayoría también ha oído hablar de Ethereum Virtual Machine (EVM), pero ¿qué es exactamente? Hoy estás de suerte, porque eso es exactamente lo que vamos a contarte.
✔️ La Ethereum Virtual Machine es una entidad única mantenida por miles de ordenadores que ejecutan un cliente Ethereum.
✔️ El protocolo Ethereum tiene su propia moneda, Ether (ETH), que sigue casi las mismas reglas que Bitcoin, pero también permite potentes funciones como los contratos inteligentes.
✔️ Todas las implementaciones del EVM deben cumplir las especificaciones establecidas en el Yellow Paper de Ethereum, y hay clientes de implementación disponibles para JavaScript, C++ y Python.
La Ethereum Virtual Machine es una entidad única mantenida por miles de ordenadores conectados que tienen un Ethereum cliente. Cualquiera puede mantener esta red convirtiéndose en node. Te descargas un software para en tu PC y voilá. Entonces aún no eres un validator, por lo que sólo beneficia a la red Ethereum, no obtienes comisiones por transacción y no se te permite crear nuevos blocks con un node.
El único propósito del protocolo Ethereum es preservar la eficacia continua, ininterrumpida e inmutable de estos "special state machine". En ella "viven" todas las cuentas y smart contracts de Ethereum. Cada bloque de la blockchain sólo tiene un estado canónico y el EVM define cuáles son las reglas para calcular un nuevo válido estado de bloque en bloque.
A menudo se utiliza la analogía de un distributed ledger para describir las blockchain como Bitcoin describir. Esto te permite crear una moneda descentralizada herramientas fundamentales para criptografía dejarte utilizarlo. El libro mayor lleva la cuenta de lo que alguien puede y no puede hacer para cambiarlo, por ejemplo, prohibir gastar más de lo que has conseguido.
Ethereum tiene su propia moneda, Ether o también llamada ETH, que sigue casi exactamente las mismas reglas, pero también permite una característica mucho más potente: los smart contracts. Con Ethereum, puedes utilizar la analogía del estado de la máquina distribuida USO. Ethereum estado es una gran estructura de datos que contiene no sólo todas las cuentas y saldos, sino también un estado de la máquina que puede cambiar de estado de bloque a bloque según un conjunto predefinido de reglas y puede ejecutar código máquina arbitrario. Las reglas específicas para cambiar de estado de bloque a bloque las define la EVM.
El EVM se comporta como una función matemática: dada una entrada determinada, genera una salida determinista. Ethereum tiene una "función de transición de estado". Si tienes un antiguo estado válido de la red y un nuevo conjunto de transacciones válidas, la función de transición de estado hace que se genere un nuevo estado de salida válido de la red Ethereum.
Con su "Merkle Patricia Trie modificada", Ethereum garantiza una gran eficacia en su base de datos.
La EVM ejecuta una "máquina de pila" con una profundidad de 1024 elementos. Cada uno de estos elementos es una palabra de 256 bits elegida para trabajar. En el siguiente dibujo se pueden ver palabras estándar, como almacenamiento y gas.
Aquí se utilizan "opcodes" EVM como AND, OR, ADD y similares para abrir posibilidades matemáticas estándar. Además, se utilizan palabras específicas de la blockchain de Ethereum, como DIRECCIÓN o SALDO.
Todas las implementaciones de Ethereum Virtual Machine deben obedecer las especificaciones descritas en el Ethereum Yellow papers. Existen clientes de ejecución de Ethereum para JavaScript, C++ y Python.
Los smart contracts para el EVM se escriben generalmente en Solidity o Vyper.