The Ethereum Foundation (EF) is running its first-ever internship, and an aggregated resource is provided here to give insights into the R&D teams. It’s intended to help potential applicants do proper due diligence on the teams they'd be interested in working with and includes information on all EF R&D teams, with the teams relevant to the internship denoted.
While creating this resource, it became clear that it could serve as a valuable tool for the broader public as well. For this reason, it’s being made publicly available so anyone interested in Ethereum R&D can benefit from it.
Each list of links is far from comprehensive! Teams each have their own resources and ways of presenting their work and this overview simply aims to cover a broad sampling of each team's research interests.
[ internship ]
The Applied Research Group (ARG) bridges the gap between theory and practice navigating the path to the future of the Ethereum protocol. Working at the research frontier, they identify open problems facing Ethereum and apply a broad skill set of analysis and engineering expertise to identify how best to move solutions from the idea phase into production. Their interests center around protocol security, scalability and sustainability including topics like the consensus staking protocol, interactions with MEV, expanding Ethereum’s data layer, and protocol support like testing and specification writing/maintenance.
Links:
Pectra
Until recently, the host of the All Core Dev Consensus layer calls was the team lead of ARG
EIP-7251: Increase the MAX_EFFECTIVE_BALANCE
Data viz
Blobs
Censorship resistance
EIP-7547: Inclusion lists
EIP-7805 (collaboration): FOCIL
MEV’s impact on the L1
Validator set decentralization
With fast-evolving tech, the EF’s researchers have found their own niches and directions and teams have split off from each other. The Consensus R&D used to be the EF Research Team. Now it’s one of many and with its focus being on improving the consensus layer.
Links:
consensus-specs Github repo
Developed and maintains the original staking-deposit-cli
Research to improve the consensus mechanism & mitigate problematic side effects (smattering of ethresear.ch posts)
hackmd post for validator hardware specs: Hardware Requirements For Validators
L2 interop
Pectra
Wallet QoL / UX: EIP-7702: Set EOA account code
Staking QoL / feature: EIP-7002: Execution layer triggerable withdrawals
Validator set size: EIP-7251: Increase the MAX_EFFECTIVE_BALANCE
Validator security / UX: EIP-6110: Supply validator deposits on chain
The cryptography research team researches cryptographic protocols that are useful to the future development of the ethereum consensus protocol and more generally for the ethereum community. They provide support for the core research team, publish and review research papers, give presentations in a wide variety of events, participate in standardization processes, and provide outreach to the wider academic community.
Links:
Security analysis
Ethereum VDF security analysis
Publication: Cryptoanalysis of Algebraic Verifiable Delay Functions
ProgCrypto Devconnect 2023: Talk
Data Availability Sampling (DAS)
4844 and PeerDAS KZG library / polynomial commitments spec
FRIDA / Foundations of DAS
Publication: FRIDA: Data Availability Sampling from FRI
Publication: Foundations of Data Availability Sampling
Zero-knowledge proofs
Elliptic curves
[ internship ]
The Protocol Security Research team safeguards Ethereum’s integrity. Through coordination, meticulous code reviews, research, developing advanced tooling, and real-world simulations, they focus on securing the network and its critical components. Their hands-on approach includes managing the bug bounty program, continuously monitoring the network, and collaborating with client teams. They’re committed to identifying and mitigating risks to Ethereum mainnet.
Links:
Protocol Security Github repo
SoK: What don’t we know? Understanding Security Vulnerabilities in SNARKs
Code review & sourcing audits
[ internship ]
The Robust Incentives Group is a research team dedicated to the study of mechanism design and cryptoeconomics for Ethereum. Their work maps all the ways that incentives directly or indirectly affect users and protocol stakeholders of Ethereum. Where possible, they propose mechanisms to recover incentive compatibility and system optimization. Their methods are varied, from formal analysis to data science and simulations, and they engage academic and general audiences with diverse formats of grants, publications and talks.
Links:
RIG website: RIG does a great job of keeping their website up-to-date!
Censorship resistance
Staking & issuance
issuance.wtf: comprehensive & up-to-date list of all issuance discussions!
Vorbit SSF with circular & spiral finality: validator selection & distribution
MEV: PBS, APS, MEV burn
[ internship ]
The AA team focuses on the development, growth and coordination efforts related to account abstraction and chain abstraction, which started via the ERC-4337 standard, and continue through additional standards and protocol level changes on L1 as well as L2s. The team is responsible for research and development of various components and standards of account abstraction, chain abstraction and cross-L2 communication. It also supports entities in the ecosystem that are building on top of these standards, while advocating for their overall adoption in the space through education, conferences, grants and other growth strategies.
Links:
Entrypoint v0.7: Announcement
EIPs
ERCs
ERC-4337 Shared Mempool: Announcement blog post
ERC-7769: JSON-RPC API for ERC-4337
ERC-7796: Conditional send transaction RPC
RIPs
Talks
The EthPandaOps team helps ensure well tested, co-ordinated, and safe forks on Ethereum. They achieve their goals via custom tooling, deployment scripts and data collection pipelines. Additionally, they aim to empower the community to repurpose our tools for their own needs - whether it’s testing, data visualization, or deep analyses.
Links:
Devcon 2024: Tales from Interop
[ internship ]
Geth (go-ethereum) is a Go implementation of Ethereum - a gateway into the decentralized web. Geth has been a core part of Ethereum since the very beginning. Geth was one of the original Ethereum implementations making it the most battle-hardened and tested client. Geth is an Ethereum execution client, meaning it handles transactions, deployment and execution of smart contracts and contains an embedded computer known as the Ethereum Virtual Machine. Running Geth alongside a consensus client turns a computer into an Ethereum node.
Links:
The Ipsilon team’s core concern is the execution environment / engine of Ethereum (aka the EVM or any future versions or replacements of it). This includes both Mainnet and L2s. They provide analysis and implementation of own and third party proposals (i.e. new EIPs proposing changes to the EVM), provide tooling (evmc, evmone, fizzy), and support existing teams (e.g. go-ethereum, Silkworm/Erigon, Solidity, Vyper, Fe, Huff) with implementation and analysis.
Links:
Website, with an up-to-date list of articles, EIPs, and talks!
The JavaScript team provides core Ethereum protocol implementations which are mainly targeted to be used in a development context, being it as an integral part of main Ethereum developer tools like Hardhat, Truffle or Remix or as building blocks for browser UIs of decentralized applications (dApps). They maintain EthereumJS and Ultralight (the JavaScript Portal Network Client).
Links:
js-team-organisation Github repo, with detailed roadmaps!
EthereumJS Github
Ultralight Github repo
Live roadmap with links to current work
[ internship ]
The Portal Network is a new networking design for Ethereum that aims to solve the data availability problem for "light" nodes without having to trust or put extra strain on full nodes, by sharing the necessary data in small chunks across the network. Internally the team works on Trin which is a portal client written in Rust.
Links:
[ internship ]
This team is a combination of two projects that came out of what was referred to as the “Testing” team: Ethereum Execution Layer Specifications (EELS) and Ethereum Execution Specification Tests (EEST).
Ethereum Execution Layer Specifications (EELS): The EELS project is responsible for the main Ethereum protocol reference specification written in Python, which aims towards replacing the yellow-paper specification and being a crucial aid to the EIP process in order to provide a prototyping framework for new updates. Check out the Devcon SEA 2024 talk on EELS.
Ethereum Execution Specification Tests (EEST): The EEST project is responsible for the Ethereum protocol reference tests, used by all clients to detect consensus issues during new hard-fork implementations and regressions. Check out the Devcon SEA 2024 talk on EEST.
The STEEL team also takes care of maintaining and improving the tooling, frameworks, documentation and guidance required to facilitate the client developers with the consumption of the tests, which includes the EEST, the legacy ethereum/tests repository, and also integration tests in the form of various hive simulators.
Links:
EELS Github repo
EEST Github repo
STEEL Devcon 2024 R&D workshop breakout notes
The Snake Charmers team maintains Ethereum Python developer tools, provides user support, and creates educational resources to empower those users. The Snake Charmers collaborate with STEEL to aid in EIP implementation and testing, and provide ongoing maintenance support for other python libraries written by EF members, like the staking-deposit CLI.
Links:
The Stateless Consensus team is dedicated to building Stateless Ethereum, an evolution of the protocol designed to support significantly scaling the EL while also reducing hardware and computational requirements.
Links: