页面最后更新: 2023年3月23日
Active areas of Ethereum research
One of the primary strengths of Ethereum is that an active research and engineering community are constantly improving it. Many enthusiastic, skilled people worldwide would like to apply themselves to outstanding issues in Ethereum, but it is not always easy to find out what those issues are. This page outlines key active research areas as a rough guide to Ethereum's cutting edge.
How Ethereum research works
Ethereum research is open and transparent, embodying principles of Decentralized Science (DeSci)(opens in a new tab). The culture is to make research tools and outputs as open and interactive as possible, for example, through executable notebooks. Ethereum research moves quickly, with new findings posted and discussed in the open on forums such as ethresear.ch(opens in a new tab) rather than reaching the community through traditional publications after rounds of peer review.
General research resources
Regardless of the specific topic, there is a wealth of information on Ethereum research to be found at ethresear.ch(opens in a new tab) and the Eth R&D Discord channel(opens in a new tab). These are the primary places where Ethereum researchers discuss the latest ideas and development opportunities.
This report published in May 2022 by DelphiDigital(opens in a new tab) provides a good overview of the Ethereum roadmap.
Sources of Funding
You can get involved with Ethereum research and get paid for it! For example, the Ethereum Foundation recently ran an Academic Grants funding round(opens in a new tab). You can find information on active and upcoming funding opportunities on the Ethereum grants page.
Protocol research
Protocol research is concerned with Ethereum's base layer - the set of rules defining how nodes connect, communicate, exchange and store Ethereum data and come to consensus about the state of the blockchain. Protocol research gets divided into two top-level categories: consensus and execution.
Consensus
Consensus research is concerned with Ethereum's proof-of-stake mechanism. Some example consensus research topics are:
- identifying and patching vulnerabilities;
- quantifying cryptoeconomic security;
- increasing the security or performance of client implementations;
- and developing light clients.
As well as forward-looking research, some fundamental redesigns of the protocol, such as single slot finality, are being researched to allow for significant improvements to Ethereum. Furthermore, the efficiency, safety, and monitoring of peer-to-peer networking between consensus clients are also important research topics.
Background reading
- Introduction to proof-of-stake
- Casper-FFG paper(opens in a new tab)
- Casper-FFG explainer(opens in a new tab)
- Gasper paper(opens in a new tab)
Recent research
- Ethresear.ch Consensus(opens in a new tab)
- Availability/Finality dilemma(opens in a new tab)
- Single slot finality(opens in a new tab)
- Proposer-builder separation(opens in a new tab)
Execution
The execution layer is concerned with executing transactions, running the Ethereum virtual machine (EVM) and generating execution payloads to pass to the consensus layer. There are many active areas of research, including:
- building out light client support;
- researching gas limits;
- and incorporating new data structures (e.g. Verkle Tries).
Background reading
Recent research
- Database optimizations(opens in a new tab)
- State expiry(opens in a new tab)
- Paths to state expiry(opens in a new tab)
- Verkel and state expiry proposal(opens in a new tab)
- History management(opens in a new tab)
- Verkle Trees(opens in a new tab)
- Data availability sampling(opens in a new tab)
Client Development
Ethereum clients are implementations of the Ethereum protocol. Client development makes the outcomes from protocol research into reality by building them into these clients. Client development includes updating the client specifications as well as building specific implementations.
An Ethereum node is required to run two pieces of software:
- a consensus client to keep track of the head of the blockchain, gossip blocks and handle consensus logic
- an execution client to support the Ethereum Virtual Machine and execute transactions and smart contracts
See the nodes and clients page for more detail on nodes and clients and for a list of all current client implementations. You can also find a history of all Ethereum upgrades on the history page.