EVM Ecosystem — Monthly Report
(June 2024)
In this new monthly series, we would like to provide an overview of ecosystem, tech and research news, initially starting out from the EVM ecosystem. These articles are provided by Ed Prinz, co-founder and President of DLT Austria, and are aimed for the experienced reader. If you require specific background to get you started on EVM technicalities, please check out this source here.
1. Environment News
FAQ: Ethereum issuance reduction
Ethereum plans to reduce its issuance of new ETH. This means creating fewer new coins over time. The main reasons are to lower costs for users and to improve network security. Reducing issuance helps prevent too much control by a few entities and keeps Ethereum decentralised. By adjusting the reward system for staking, Ethereum can remain secure while minimising unnecessary costs and risks for its users. This balance is crucial for Ethereum’s long-term success and stability.
Source: https://ethresear.ch/t/faq-ethereum-issuance-reduction/19675
Big blocks, blobs, and reorgs
Ethereum’s EIP-4844 update increased transaction throughput by adding blobs to blocks, which are now the main contributor to block size. This change led to a higher incidence of reorganisations (reorgs), especially in blocks with 6 blobs, as these are larger and more complex. The study shows that larger blocks and more blobs increase the likelihood of reorgs. Different clients (e.g., Lodestar, Teku) also affect reorg rates. The goal is to balance efficiency and stability while minimizing the impact on validators.
Source: https://ethresear.ch/t/big-blocks-blobs-and-reorgs/19674
Gossip IWANT/IHAVE Effectiveness in Ethereum’s Gossipsusb network
The study on Ethereum’s Gossipsub network reveals inefficiencies in its message exchange. Specifically, the ratio of ‘IHAVE’ messages sent to ‘IWANT’ messages received is extremely high, indicating excessive bandwidth usage. For example, in some cases, the ratio reaches up to 1:100. To optimise, suggestions include using bloom filters for message IDs, adjusting Gossipsub parameters, and making the system adaptive per topic. These changes aim to reduce unnecessary data transmission and improve network efficiency.
Source: https://ethresear.ch/t/gossip-iwant-ihave-effectiveness-in-ethereums-gossipsusb-network/19686
Advantage of Pipelining Consensus and Execution: Delayed Execution
Ethereum’s proposal to pipeline consensus and execution into different stages could enhance network efficiency. This method separates the validation tasks, reducing network and processing loads during peak times. It allows more time for execution block validation, improving overall performance without significant changes to the system. However, builders will have slightly less time to prepare blocks, which could be a drawback. This approach aligns with long-term plans for Proposer-Builder Separation (PBS) in Ethereum.
Source: https://ethresear.ch/t/advantage-of-pipelining-consensus-and-execution-delayed-execution/19668
2. Development News
Compiler Fingerprinting in EVM Bytecode
The research on EVM compiler fingerprinting investigates identifying the compiler used to generate Ethereum bytecode. By analysing patterns and characteristics in the bytecode, it’s possible to trace back to the specific compiler. This can improve security and auditing processes by verifying the authenticity and source of smart contracts. The study introduces techniques for detecting and differentiating between various compilers used in the Ethereum ecosystem.
Source: https://jbecker.dev/research/evm-compiler-fingerprinting
New Standards
EIPs:
- EIP7716: Anti-correlation attestation penalties
- EIP7718: Portal Wire Protocol a framework for discv5
- EIP7719: P2P History Network
- Meta EIP7723: Network upgrade inclusion stages
- EIP discussions proposal, highlight updates, reviews & outstanding issues
- EIP7727: EVM transaction bundles
RIPs (Rollup Improvement Proposals):
- RIP7724 (clone of EIP7667 for zk rollups): Raise gas costs of hash functions
- RIP7728: Precompile for L1SLOAD
ERCs (application layer):
- ERC7717: Deterministic AA wallet
- ERC838 (resurrected): ABI specification for REVERT reason string
- ERC7720: Deferred token transfer (ERC20)
- ERC7721: Lockable extension for ERC1155
- ERC7722: Opaque token
- ERC7725: Exponential curves
- ERC7726: Common quote oracle
- Guide to writing an ERC
- EIP.tools: view & search EIP/ERCs
- ERC7729: Token with metadata (ERC20 extension)
- ERC7730: Structured data clear signing format
Solidity Debugger for Visual Studio Code
The Simbolik VSCode extension by Runtime Verification helps developers analyse and verify smart contracts directly within Visual Studio Code. It offers symbolic execution features, enabling detection of potential issues like bugs and vulnerabilities in smart contracts before deployment. This tool integrates seamlessly with the development workflow, enhancing the reliability and security of Ethereum smart contracts.
Source: https://github.com/runtimeverification/simbolik-vscode#readme
Etherscan Verification
0xngmi Etherscan verification: Validate a contract that has already been verified on a different blockchain.
Source: https://etherscan-verification.0xngmi.com/
Understanding ABI encoding for function calls
ABI (Application Binary Interface) encoding is the method used to format data for smart contract function calls on Ethereum. It encodes the function signature and its arguments into a standardised format that can be interpreted by the Ethereum Virtual Machine (EVM). This encoding process involves converting each argument into a 32-byte block, which includes padding for shorter values. Understanding ABI encoding is crucial for interacting with smart contracts and ensuring correct data transmission and interpretation.
Source: https://www.rareskills.io/post/abi-encoding
Remix Release v0.50.0
The Remix IDE v0.50.0 release introduces several new features and improvements. Key updates include a new feature for debugging Solidity contracts, enhanced support for plugins, and improvements in the user interface for better accessibility and usability. The update also brings performance enhancements and bug fixes, ensuring a more stable and efficient development experience for users.
Source: https://medium.com/remix-ide/remix-release-v0-50-0-1b0ca47ce2d9
Reusing the Kurtosis Ethereum-package as a base for your L2 devnet
The post on ethPandaOps discusses using Kurtosis to create local Layer 2 (L2) development networks (devnets) by reusing the Kurtosis Ethereum package. This approach allows developers to efficiently set up L2 devnets like Optimism by leveraging a modular package system. The key benefits include faster and easier prototyping and isolated testing environments. However, challenges include the difficulty of sharing local devnets and the lack of persistent storage by default.
Source: https://ethpandaops.io/posts/kurtosis-l2/
ERC-7201 Storage Namespaces Explained
ERC-7201 is a proposed standard for Ethereum that introduces storage namespaces. This standard aims to organise and group storage variables in smart contracts by using a common identifier called a namespace. This approach helps simplify managing storage variables, especially during contract upgrades. By using namespaces, developers can more efficiently document and handle storage variables, ensuring better maintainability and clarity in smart contract code.
Source: https://www.rareskills.io/post/erc-7201
Scaffold-ETH-Svelte
Scaffold-ETH 2 is a comprehensive toolkit for building decentralized applications (dapps) on Ethereum. It integrates tools like NextJS, RainbowKit, Hardhat, Foundry, Wagmi, and TypeScript to streamline the development process. Key features include contract hot reload, a burner wallet and local faucet for quick testing, and integration with various wallet providers. Scaffold-ETH 2 allows developers to efficiently create, deploy, and interact with smart contracts and build responsive frontends.
Source: https://docs.scaffoldeth.io/
Relayscan Bid Archive
The document on the Flashbots GitHub discusses BidCollect, a strategy for aggregating and analysing bids in the Ethereum ecosystem. BidCollect aims to enhance the efficiency and transparency of the bidding process for block proposals. It includes methods for collecting bids, evaluating their validity, and ensuring fair competition among participants. This approach helps optimize the selection of block proposals, contributing to a more robust and fair network.
Source: https://github.com/flashbots/relayscan/blob/main/docs/2024-06_bidcollect.md
Uniswap-v2-puzzles
The RareSkills Uniswap V2 Puzzles repository provides a set of challenges designed to deepen understanding of Uniswap V2 and decentralised finance concepts. The puzzles cover topics such as liquidity pools, automated market making, and smart contract interactions. Each puzzle comes with detailed explanations and solutions to help learners grasp complex mechanisms within Uniswap V2.
Source: https://github.com/RareSkills/uniswap-v2-puzzles/#readme
3. Research News
Gossipsub Network Dynamicity through GRAFTs and PRUNEs
The post on Ethereum Research discusses the dynamicity of the Gossipsub network using GRAFT and PRUNE messages. These messages manage peer connections within topic meshes to maintain network stability. The study uses a tool called Hermes to trace and analyze these interactions over a 3.5-hour period. Findings show stable mesh connections despite increased dynamicity and highlight the impact of different client behaviors, such as Teku nodes frequently disconnecting.
Source: https://ethresear.ch/t/gossipsub-network-dynamicity-through-grafts-and-prunes/19750
Do shared MEV auctions actually increase revenue?
The post on Arbitrum Research explores whether shared MEV (Miner Extractable Value) auctions increase revenue compared to separate auctions on individual chains. The analysis reveals that while joint auctions might leverage cross-chain MEV, they don’t always yield higher revenue than separate auctions. This is because separate auctions allocate MEV control to the highest bidders for each chain, potentially maximising individual chain revenue.
Source: https://research.arbitrum.io/t/do-shared-mev-auctions-actually-increase-revenue/9606
Layer 2s as cultural extensions of Ethereum
Vitalik Buterin discusses how Ethereum’s Layer 2 solutions (L2s) act as cultural extensions of the main Ethereum network. These L2s enable diverse subcultures to flourish, each with its own values and goals, while still being part of the broader Ethereum ecosystem. This cultural pluralism fosters innovation and adaptability, allowing different groups to focus on various aspects like public goods, advanced technology, or financial applications. The article emphasises the importance of maintaining a balance between unity and diversity within the Ethereum community.
Source: https://vitalik.eth.limo/general/2024/05/29/l2culture.html
Upcoming EVM Events
- Jul 7 — Devcon scholars program
- Jul 9– Devcon ticket raffle & auction
- Jul 8–11 — EthCC (Brussels) conference
- Jul 12–14 — ETHGlobal Brussels hackathon
- Jul 29–30 — EDCON Tokyo conference
- Aug 2–4 — Ethereum Argentina conference & hackathon
- Aug 7–9 — Science of Blockchain Conference (New York)
- Aug 15–17 — Ethereum Uruguay hackathon & conference
- Aug 23-Sep 13 — ETHGlobal ETHOnline virtual hackathon
- Aug 23–26 — ETHTokyo hackathon & conference
- Aug 29–31 — ETHAccra hackathon
- Sep 5–8 — ETHWarsaw conference & hackathon
- Sep 9–15 — ETHSafari (Kenya)
- Sep 12–14 — NapulETH (Napoli)
- Sep 13–14 — Ethereum México
- Sep 20–22 — ETHGlobal Singapore hackathon
- Sep 26–27 — ETHMilan conference
- Oct 4–6 — Ethereum Kuala Lumpur conference & hackathon
- Oct 4–6 — ETHRome hackathon
- Oct 17–19 — ETHSofia conference & hackathon
- Oct 18–20 — ETHGlobal San Francisco hackathon
- Nov 12–15 — Devcon 7 — Southeast Asia (Bangkok)
- Nov 15–17 — ETHGlobal Bangkok hackathon