What is EVM (Ethereum Virtual Machine)? How does EVM work?
What is EVM?
EVM (Ethereum Virtual Machine) is the core engine responsible for executing smart contracts on the Ethereum network. It exists in every Ethereum validator, ensuring the security and decentralization of the network.
In programming, developers use IDE (Integrated Development Environment like Microsoft Visual Studio or Xcode) to write and compile code into a usable program.
To run the program, the IDE translates its code (C/C++, Python, Assembly, etc) to machine code so that the computer can understand. For simple understanding, EVM on Ethereum is similar to IDE on computers.
In general, smart contracts can be written in programming languages such as Solidity, Rust, or C++... depending on which type of the blockchain platform. However, EVM is only able to run smart contracts written in Solidity.
This means it acts as an executing translator to convert Solidity to computer-like Bytecode. Then it is stored in Opcode (Operation code) for Ethereum to understand and execute given commands.
What is an EVM blockchain?
Besides Ethereum, there are blockchains that are EVM-compatible. This means those blockchains can run the Solidity code of smart contracts like EVMs on Ethereum. Therefore, dApp developers only have to modify a little Sodility code in order to run smoothly on EVM blockchains. Therefore, we often see dApps running on multiple blockchains, most of which are EVM-compatible blockchains.
Some popular EVM blockchains: Ethereum, BNB Smart Chain, Avalanche, Polygon, Cronos, Fantom, Arbitrum, etc.
EVM blockchains are dominating the market in terms of market cap and TVL. As we can see in the above table, Ethereum and BSC are two EVM-compatible blockchains that have been in the top market cap cryptos for years.
To explore why EVM blockchains are dominating the market, let’s dive into what advantages EVM blockchains have in the following section.
Advantages of EVM blockchains
From the builders’ perspective
Quick to adapt to new EVM blockchains: For developers, whether new or experienced, it is time-consuming to pick up a new programming language. In the EVM world, they can easily switch among blockchains without learning a new smart contract language.
Most popular smart contract language: Solidity is the most used smart contract language in the crypto-verse because Ethereum is the lead of smart contract-enabled platforms. This creates a strong network effect of EVM blockchains led the aura of Ethereum.
Easy to immigrate: Instead of building a new dApp from scratch, the developer team can easily deploy their EVM-compatible codes across blockchains to build multichain products. Being available on multiple blockchain platforms gives projects access to a wider user base. Therefore, the users’ experience can be intact regardless of EVM blockchains.
From users’ perspective
Similar multichain experience: The crypto space is now having hundreds of blockchains serving different purposes such as dApp platforms, dApp specialization, privacy, etc. Integrating more than two blockchains in one dApp creates a multi-chain experience. Users are able to switch among EVM blockchains easily without the UI/UX changes.
Speed and gas fee efficiency: Ethereum users have to pay an amount fee for every transaction executed. The fee sometimes exceeds over $100 due to the congested block space demand. During congestion, it takes a huge amount of time to complete a transaction, affecting the users’ experience. If dApps go to other EVM chains besides Ethereum, the challenge is partially solved.
More scalability: Going multi-chain gives projects the ability to scale horizontally to other blockchain ecosystems. Exposing to numerous EVM chains will bring a larger user base for the crypto project. In addition, more crypto products will embark on the ecosystem, creating a competitive environment for growth.
EVM-compatible Blockchains
In previous sections, we understand what is an EVM blockchain and why project builders and users will benefit from it. Let’s discover the EVM blockchain scene in the crypto space.
At the moment, there are two core types of EVM blockchains:
- Blockchain platforms: Ethereum, BNB Smart Chain, Avalanche, Evmos (Cosmos), etc.
- Layer 2s: Optimistic rollups, zkrollups, etc.
Blockchain platforms
Ethereum is an outstanding example of an EVM blockchain since it is the beginning of the EVM era. Other than that, we will discover more about other EVM blockchains such as BNB Smart Chain (BSC), Avalanche, etc.
1. BNB Smart Chain (BSC)
BNB Smart Chain (BSC) is the second-largest EVM ecosystem in the crypto space, only behind the Ethereum ecosystem. There is an abundance of dApps on BSC and the number might exceed over 1000 projects in operation, ranging from DeFi to NFT/GameFi.
Notably, there are over 100 decentralized exchanges (DEX) running on BSC, according to DeFiLlama. Many of them are forks of top DEXs like Uniswap. This phenomenon is diluting the DeFi ecosystem of BSC and defragments the BSC's total liquidity. However, the DEX leaders on BSC are still holding their positions such as Pancakeswap, BIswap, etc...
2. Polygon (MATIC)
Polygon (MATIC) is an independent EVM blockchain that previously worked as a Layer 2 on Ethereum. The blockchain is a notable example of a Layer 2 that evolved into a blockchain. Thanks to EVM compatibility, Polygon is able to have many crypto projects onboard.
OpenSea chose to expand to Polygon because Ethereum has been pulling back the growth of the largest NFT marketplace. In August 2021, the trading volume of OpenSea on Ethereum and Polygon peaked at $3.5B and $50M respectively.
3. Avalanche (AVAX)
Avalanche is another notable EVM blockchain since it has been climbing from the bottom to the top. Furthermore, the network of subnets on Avalanche can improve considerably the settling performance to under one second.
The Avalanche ecosystem contains every niche in the DeFi suite. To catch the wave, NFT and GameFi projects on Avalanche are attracting new users to the ecosystem. Notably, DeFi Kingdoms (DFK) was formerly on Harmoney One blockchain but it immigrated to an Avalanche subnet.
Layer 2s
Layer 2s on blockchains have been drawing attention in the market since 2021. They come as scaling solutions for many blockchain platforms such as Ethereum, Cardano, Near Protocol, Solana, etc. The Layer 2 revolution explodes on Ethereum with numerous notable projects.
If you’re new to Layer 2s, you can check this out: What is Layer 2?
Despite being built on top of the Ethereum network, not every Layer 2 is EVM-compatible. Only Optimistic Rollups are natively EVM-compatible while zkRollups are not. Here are a few Layer 2s on Ethereum:
- Optimistic Rollups: Arbitrum, Optimism, etc.
- zkRollups: StarkEx, StarkNet, zkSync, etc.
EVM gives so many advantages that Layer 2s projects that are using zkRollups have to build a solution to make themselves EVM-compatible. For example, zkSync has zkEVM and Starknet has Warp to support dApp written in Solidity to run on their network.
Risks and limitations of EVM blockchains
EVM compatibility seems to be an indispensable part of every blockchain since it can allow Solidity developers to deploy their ideas. But every technology has its drawbacks and we must know to avoid potential pitfalls.
Security and hacks/exploits
Projects can run on multiple blockchain platforms and EVM will accelerate the multichain expansion. However, there is a multichain risk across blockchains in one dApp.
For example, Poly Network was hacked in August 2021, which made over a half-billion dollars sent to hackers. Let’s check other hacks/exploits in Q2, 2021 in the infographic below.
If smart contracts have flaws, the risks of being hacked will be imminent. Especially, the code is slightly changed when immigrating to other EVM blockchains. The potential exploit will remain unfixed in the smart contracts. As a result, multichain dApps are risky without former audits.
Audit expense
Auditing smart contracts’ code comes with a cost. It even gets more expensive during bull markets since many crypto projects want to launch fast before it ends. To build credibility and prevent potential security exploits, projects have to hire experts from security companies like Certik, Peckshield, etc.
According to Ulam (a partner of Algorand), a smart contract audit can cost $7,500 to $45,000. Some security companies ask for up to $100,000. Besides operation and development costs, crypto startups have to spend money on auditing smart contracts.
Risk of cross-chain bridges
To use assets on other blockchain platforms, investors have to use bridges. At the moment, crypto bridges lock assets in smart contracts in one blockchain and mint a new one with an equal value on another blockchain. Because bridges are made of smart contracts, users have to bear the risk of having their assets stolen.
Liquidity fragmentation
The interoperability of blockchains is still a big challenge for blockchain researchers to solve. Although crypto projects are available on multiple blockchains, the crypto assets are separately stored on each blockchain.
Liquidity fragmentation means that all liquidity is not interconnected across blockchains, but separated.
For example, SushiSwap is now available for users on over 13 different blockchains. Most liquidity on SushiSwap lies on Ethereum, Polygon, and Arbitrum while the TVL on other blockchains is only a few million dollars. This creates a negative impact on users whenever they trade on SushiSwap with low-liquidity blockchains.
Non-EVM Blockchains
In simple terms, non-EVM blockchains are blockchains that have smart contracts written in different languages other than Solidity. On the other hand, they can be compatible with EVM if any EVM-compatible Layer 2s are built on top of them.
Below is a list of some notable non-EVM blockchains and their programming languages:
- Solana: Rust and C/C++.
- Cardano: Haskell and Plutus.
- Terra: Rust.
- Algorand: TEAL (Transaction Execution Approval Language).
- Near Protocol: Rust.
- …
Non-EVM dApp developers have to build the code all over again to deploy their products on EVM blockchains. Therefore, they build EVM-compatible Layer 2s on top of the base blockchains. For example, Aurora and Milkomeda are EVM-compatible Layer 2s on Near Protocol and Cardano respectively.
EVM and non-EVM blockchains are still apart of the crypto market. The race is yet to have a winner. In our opinion, both types of blockchains will co-exist and thrive in the crypto space.