Ethereum Virtual Machine è un'entità unica gestita da tutti i computer che eseguono un client Ethereum. Questa macchina tiene traccia di tutto ciò che accade sulla blockchain di Ethereum. Tutti nel mondo delle criptovalute conoscono Ethereum. Molti hanno anche sentito parlare di Ethereum Virtual Machine (EVM), ma di cosa si tratta esattamente? Oggi sei fortunato, perché è proprio di questo che stiamo per parlarti.
✔️ L'Ethereum Virtual Machine è una singola entità gestita da migliaia di computer che eseguono un client Ethereum.
✔️ Il protocollo Ethereum ha una propria valuta, l'Ether (ETH), che segue quasi le stesse regole del Bitcoin, ma che consente anche potenti funzionalità come i contratti intelligenti.
✔️ Tutte le implementazioni dell'EVM devono aderire alle specifiche stabilite nell'Ethereum Yellow Paper e sono disponibili client di implementazione per JavaScript, C++ e Python.
L'Ethereum Virtual Machine è un'entità singola gestita da migliaia di computer collegati che hanno un Ethereum client run. Chiunque può gestire questa rete diventando un node. Scarichi un software sul tuo PC e voilà. In questo caso non sei ancora un validator, per cui puoi solo beneficiare della rete Ethereum, non ricevi commissioni di transazione e non ti è permesso creare nuovi block con un node.
L'unico scopo del protocollo Ethereum è quello di preservare l'efficacia continua, ininterrotta e immutabile di questi "macchina a stati speciali". In essa "vivono" tutti gli account e gli smart contracts di Ethereum. Ogni blocco della blockchain ha un solo Stato canonico e l'EVM definisce le regole per il calcolo di un nuovo voto valido. Stato da un blocco all'altro.
L'analogia di un distributed ledger viene spesso utilizzata per descrivere le blockchain come Bitcoin descrivere. Questo ti permette di creare una valuta decentralizzata fondamentale per gli strumenti di crittografia ti permette di usarlo. Il libro mastro tiene traccia di ciò che qualcuno può o non può fare per modificarlo, ad esempio vietare di spendere più di quanto si è ottenuto.
Ethereum ha una propria valuta, l'Ether o anche chiamata ETH, che segue quasi esattamente le stesse regole, ma consente anche una funzione molto più potente: gli smart contracts. Con Ethereum, si può usare l'analogia con il stato della macchina distribuita USO. Ethereum Stato è una struttura di dati di grandi dimensioni che contiene non solo tutti i conti e i saldi, ma anche un Stato della macchina che può cambiare stato da un blocco all'altro in base a un insieme di regole predefinite e può eseguire codice macchina arbitrario. Le regole specifiche per cambiare stato da un blocco all'altro sono definite dall'EVM.
L'EVM si comporta come una funzione matematica: dato un dato input, genera un output deterministico. Ethereum ha una "funzione di transizione di stato". Se si dispone di un vecchio stato valido della rete e di una nuova serie di transazioni valide, la funzione di transizione di stato genera un nuovo stato valido in uscita dalla rete Ethereum.
Con il suo "Merkle Patricia Trie modificato", Ethereum garantisce una forte efficienza del suo database.
L'EVM esegue una "macchina a pila" con una profondità di 1024 elementi. Ognuno di questi elementi è una parola a 256 bit scelta per lavorare. Le parole standard sono visibili nel disegno qui sotto, come storage e gas.
Gli "opcode" EVM come AND, OR, ADD e simili sono utilizzati per aprire possibilità matematiche standard. Inoltre, vengono utilizzati termini specifici della blockchain di Ethereum, come ADDRESS o BALANCE.
Tutte le implementazioni della Ethereum Virtual Machine devono rispettare le specifiche delineate dall'Ethereum Yellow Paper. I client di esecuzione di Ethereum sono disponibili per JavaScript, C++ e Python.
Gli smart contracts per l'EVM sono generalmente scritti in Solidity o Vyper.