Welcome to the beginner's guide to the Bitfinity Network EVM, or EVMC!
This article is meant for a general audience and requires no prior technical knowledge about blockchain technology. If, however, you're confident you know your way around the basics of Ethereum and the Internet computer, please check out my much more detailed introduction, "How InfinitySwap's Ethereum Virtual Machine Canister (EVMC) Works and Why It Matters."
Without further ado, let's dive right in!
Smart Contracts and Solidity
You may have heard of smart contracts before - they're digital agreements that are automatically enforced when certain conditions are met. The Bitfinity Network EVM is a platform that lets you run smart contracts written in a language called Solidity on the Internet Computer (ICP), a blockchain that's now compatible with Ethereum.
Solidity is a computer language that's used to write smart contracts on blockchain platforms. It's designed to be a safe and secure language, making it hard to write code that could cause problems or security issues. Smart contracts written in Solidity are stored entirely on the blockchain, making them transparent, secure, and tamper-proof.
The architecture of the Bitfinity Network EVM
Now, let's talk about the architecture of the Bitfinity Network EVM. It has four key components: (1) EVM API canisters, (2) the EVM Executor canister, (3) Signature Verifier canisters, and (4) the Blockchain canister. Canisters are like bundled packages of computer code and the data that the code needs to run.
The EVM API canisters receive requests from Ethereum clients and Internet Computer agents, which are then batched into a pending transaction pool. The EVM Executor canister processes these transactions and updates the global EVM state, and the Blockchain canister accordingly.
The Blockchain canister is where the Ethereum chain blocks are stored. It stays in the Internet Computer's stable canister storage. Stable canister storage keeps information safe that would otherwise be lost when the canister's code is scooped out and replaced with newer code. The Signature Verifier canisters are used to verify the signature of an Ethereum transaction, a computationally expensive task performed in a dedicated pool of canisters to avoid too much computation in the EVM API canisters.
What Makes the Bitfinity Network EVM Great
The Bitfinity Network EVM is faster than the main Ethereum network EVM implementation as it optimizes transaction throughput by performing signature verification and the batching of transactions. It is fully on-chain, with code and data executed in web assembly. Parallel computation is achieved through a multi-canister architecture, which is what makes the Bitfinity Network EVM blazingly fast.
The Bitfinity Network EVM matters because it is a revolutionary development of the best existing features of the EVM on Ethereum, plus so much more! it is well-tested, with high coverage across core modules and it uses existing libraries, such as REVM, Retest, the canister-SDK (software development kit), and the Internet Computer's stable-storage libraries to make the best use of existing Ethereum libraries.
In conclusion, the Bitfinity Network EVM is an innovative project that creates a fast, cost-effective implementation of the EVM that is compatible with Ethereum smart contracts but runs on the Internet Computer. The Bitfinity Network EVM architecture consists of four components that work together to process transactions and update the global EVM state and data stored on the blockchain accordingly. It's a revolutionary enhancement of Ethereum's classic EVM implementation on a new blockchain that's quick, secure, and transparent.