EVM Mastery

Feb 12, 2022 | Blockchain

A curated list of resources to internalize EVM

Learning Resources


Twitter


Substack

EVM Mastery Resource
EVM Mastery PDF

## Content
1. [Introduction](#introduction)
2. [Starters](#starters)
3. [Articles](#articles)
4. [Youtube Videos](#youtube-videos)
5. [Github](#github)
6. [Tools](#tools)
7. [Puzzles](#puzzles)
8. [Papers](#papers)
9. [Writeups](#writeups)

## Introduction
The Ethereum Virtual Machine (EVM) is a decentralized computing environment that facilitates the execution of smart contracts. It is a core component of the Ethereum platform, responsible for running compiled smart contracts and ensuring that decentralized applications (dApps) function as intended.

### Why EVM Mastery?
This repository, EVM Mastery, aims to provide a comprehensive list of resources to understand the Ethereum Virtual Machine better. It’s an invaluable resource for anyone involved in the development, deployment, or auditing of smart contracts. From beginners to advanced users, this repository will serve as a one-stop shop to get you up to speed on everything EVM.

By mastering the workings of the EVM, you not only equip yourself with the knowledge to build better dApps but also to audit smart contracts effectively, ensuring they are secure, efficient, and decentralized.

## Starters
### The best video to understand about EVM
– [Ethereum Explained: The EVM](https://www.youtube.com/watch?v=kCswGz9naZg) by Jordan McKinney

## Articles
– [Ethereum Virtual Machine (EVM)](https://ethereum.org/en/developers/docs/evm) – Ethereum Org
– [The Ethereum Virtual Machine — How does it work?](https://medium.com/mycryptothe-ethereum-virtual-machine-how-does-it-work-9abac2b7c9e)
– [Ethereum Virtual Machine (EVM): Everything you need to know](https://www.okx.com/learn/ethereum-virtual-machine-evm)
– [EVM Deep Dives: The Path to Shadowy Super Coder](https://noxx.substack.com/p/evm-deep-dives-the-path-to-shadowy?s=r)
– [Solidity Tutorial: all about Assembly](https://jeancvllr.medium.com/solidity-tutorial-all-about-assembly-5acdfefde05c)
– [Understanding Ethereum Smart Contract Storage](https://programtheblockchain.com/posts/20180309/understanding-ethereum-smart-contract-storage)
– [A Playdate with the EVM](https://femboy.capital/evm-pt1)

## Youtube Videos
### Introductory Videos
– [What is the EVM? Ethereum Virtual Machine – Explained with Animations](https://www.youtube.com/watch?v=sTOcqS4msoU)
– [The Ethereum Virtual Machine](https://www.youtube.com/watch?v=uke_ZWAXHSc)
– [Ethereum Virtual Machine](https://www.youtube.com/watch?v=BsDq2mzC5tkt)
– [Mastering the Ethereum Virtual Machine (EVM) for Solidity Smart Contracts](https://www.youtube.com/watch?v=fnBNle2TI8A)
– [Alex Roan: Hitchhiker’s Guide to the EVM](https://www.youtube.com/watch?v=zgukojxyHKc)
– [Ethereum Virtual Machine.](https://www.youtube.com/watch?v=dHDeajeDLKU)

### Advanced Videos
– [EVM: From Solidity to bytecode, memory and storage](https://www.youtube.com/watch?v=RxL_1AfV7N4t)
– [Demystifying EVM Opcodes](https://www.youtube.com/watch?v=_tcyI_lNvo0)
– [Demystifying Ethereum Assembly by Joshua Riley Devcon Bogotá](https://www.youtube.com/watch?v=btDOvn8pLkA)
– [Reversing Ethereum Smart Contracts to find out what’s behind EVM bytecode (Devcon4)](https://www.youtube.com/watch?v=IEvRRszoTeE)
– [Ethereum Virtual Machine: Memory and Instruction Set – Solidity Smart Contracts](https://www.youtube.com/watch?v=Suyj2MXe0T0)
– [Ethereum EVM Smart Contract Reverse Engineering Disassembly – Blockchain Security #3](https://www.youtube.com/watch?v=I6VDBvX9Pkwt)
– [Improving the Ethereum Virtual Machine (EVM 1.0, 1.5, 2.0) Panel (Devcon4)](https://www.youtube.com/watch?v=ALK3h73WYu0)
– [Federico Kunze Küllmer – Expanding the Capabilities of the Ethereum Virtual Machine](https://www.youtube.com/watch?v=8UA-jAgvnYk)
– [Compiling Solidity to Ethereum Virtual Machine Bytecode](https://www.youtube.com/watch?v=vg4VdATsX4g)
– [The Ethereum Virtual Machine Instruction Set](https://www.youtube.com/watch?v=BhAoCLTFRyw)

## Github
– [The Ethereum Virtual Machine](https://github.com/ethereumbook/ethereumbook/blob/develop/13-evm.asciidoc)
– [evm-opcodes](https://github.com/wolflo/evm-opcodes)
– [Ethereum VM (EVM) Opcodes and Instruction Reference](https://github.com/crytic/evm-opcodes)

## Tools
– [An Ethereum Virtual Machine Opcodes Interactive Reference](https://www.evm.codes?fork=shanghai)
– [Python Implementation of the Ethereum protocol](https://github.com/ethereum/py-evm)
– [ethersplay](https://github.com/crytic/ethersplay)
– [EVM disassembler](https://github.com/Arachnid/evmdis)
– [EVM Bytecode Decompiler](https://github.com/MrLuite/evm)
– [EVM lab utilities](https://github.com/ethereum/evmlab)
– [Mythril](https://github.com/ConsenSys/mythril)

## Puzzles
– [EVM through CTFs](https://www.evmthroughctfs.com)
– [evm-puzzles](https://github.com/fvictorio/evm-puzzles)
– [more-evm-puzzles](https://github.com/daltyboy11/more-evm-puzzles)

## Papers
– [Defining the Ethereum Virtual Machine for Interactive Theorem Provers](https://link.springer.com/chapter/10.1007/978-3-319-70278-0_33)
– [KEVM: A Complete Formal Semantics of the Ethereum Virtual Machine](https://ieeexplore.ieee.org/abstract/document/8429306)
– [Security Reinforcement for Ethereum Virtual Machine](https://www.sciencedirect.com/science/article/abs/pii/S0306457321000674)
– [EVM: From Offline Detection to Online Reinforcement for Ethereum Virtual Machine](https://ieeexplore.ieee.org/abstract/document/8668038)
– [Neural-FEBI: Accurate function identification in Ethereum Virtual Machine bytecode](https://www.sciencedirect.com/science/article/pii/S0164121223000225)
– [Visual Emulation for Ethereum’s Virtual Machine](https://www.researchgate.net/publication/326280155_Visual_emulation_for_Ethereum%27s_virtual_machine)
– [Toward Building Smart Contract-Based Higher Education Systems Using Zero-Knowledge Ethereum Virtual Machine](https://github.com/socathie/zkPhoto)
– [Formal Process Virtual Machine for Smart Contracts Verification](https://arxiv.org/abs/1805.00808)
– [Challenges and Opportunities in Smart Contract Development on the Ethereum Virtual Machine: A Systematic Literature Review](https://sol.sbc.org.br/index.php/wblockchain/article/view/24618)
– [Instruction Verification of Ethereum Virtual Machine by Formal Method](https://ieeexplore.ieee.org/abstract/document/9181334)

## Writeups
– Building EVM From Scratch
– [Part 1](https://www.notion.so/pheonix244001/Building-an-EVM-from-scratch-part-1-the-execution-context-c28ebb4200c94f6fb75948a5feffc686?pvs=4)
– [Part 2](https://www.notion.so/pheonix244001/Building-an-EVM-from-scratch-part-2-branching-instructions-d864da164256426a9a1a0f7cc475c840?pvs=4)

## Troubleshooting
If you encounter issues while navigating the provided resources or while experimenting with the EVM, consider the following troubleshooting ideas:
– Ensure you have a stable internet connection to access online resources.
– If videos are buffering, try lowering the playback quality or checking your internet speed.
– For missing documentation or articles, searching related keywords online can yield alternative resources.

For more insights, updates, or to collaborate on AI development projects, stay connected with **[fxis.ai](https://fxis.ai)**.

At **[fxis.ai](https://fxis.ai)**, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.

Stay Informed with the Newest F(x) Insights and Blogs

Tech News and Blog Highlights, Straight to Your Inbox