Ethereum is a programmable blockchain. Unlike Bitcoin, which provides users with a predefined set of operations (such as Bitcoin transactions), Ethereum allows users to create their own operations of arbitrary complexity. This makes Ethereum a platform for various types of decentralized blockchains, including but not limited to cryptocurrencies.
In a narrow sense, Ethereum refers to a set of protocols that define a platform for decentralized applications. At its core is the Ethereum Virtual Machine (EVM), which can execute code of any algorithmic complexity. In computer science terms, Ethereum is Turing-complete. Developers can use programming languages like Solidity (syntactically similar to JavaScript and Python) to create applications that run on the EVM.
The Ethereum Virtual Machine (EVM) uses 256-bit machine code and is a stack-based virtual machine designed to execute Ethereum smart contracts. Since the EVM is tailored for the Ethereum ecosystem, it employs Ethereum's Account Model for value transfer.
Like other blockchain systems, Ethereum includes a peer-to-peer (P2P) protocol. The Ethereum blockchain database is maintained and updated by multiple nodes connected to the network. Each node on the network runs the EVM and executes the same instructions. Thus, Ethereum can also be called the "world computer."
What does the EVM do?
When a transaction occurs on the Ethereum blockchain, the EVM executes the following steps:
-
Verify whether the transaction has the correct value, validate the signature, and check if the transaction nonce matches the specific transaction count nonce. If there are discrepancies, the transaction is returned as an error.
-
Calculate the required transaction fee and deduct the gas cost.
-
Execute the transfer of digital assets to the specified address.
If the EVM detects that the sender lacks sufficient gas fees, the transaction will be rolled back. The gas fee will not be refunded and will instead be paid to the miners.
However, if the transaction fails due to an issue with the recipient's address, the EVM will refund the sent amount and the associated gas fee to the sender (no fees are paid to miners).
Thus, the Ethereum Virtual Machine is a critical component of the Ethereum blockchain. It plays a vital role in the storage, execution, and verification of smart contracts.
With the EVM and smart contracts, you can conduct global transactions with a simple click, without any intermediaries, thereby avoiding unnecessary fees.
In summary, the Ethereum Virtual Machine is the most important component of the Ethereum blockchain and will have a disruptive impact in 2018 and beyond.