Ethereum Improvement Proposals (EIPs) describe standards for the Ethereum platform, including core protocol specifications, client APIs, and contract standards.
First review EIP-1. Then clone the repository and add your EIP to it. There is a template EIP here. Then submit a Pull Request to Ethereum's EIPs repository.
- Draft - an EIP that is open for consideration
- Accepted - an EIP that is planned for immediate adoption, i.e. expected to be included in the next hard fork (for Core/Consensus layer EIPs).
- Final - an EIP that has been adopted in a previous hard fork (for Core/Consensus layer EIPs).
- Deferred - an EIP that is not being considered for immediate adoption. May be reconsidered in the future for a subsequent hard fork.
| Number | Title | Author | Layer | Status |
|---|---|---|---|---|
| 3 | Addition of CALLDEPTH opcode | Martin Holst Swende | Core | Draft |
| 4 | EIP Classification | Joseph Chow | Meta | Draft |
| 5 | Gas Usage for RETURN and CALL* |
Christian Reitwiessner | Core | Draft |
| 101 | Serenity Currency and Crypto Abstraction | Vitalik Buterin | Active | |
| 158 | State clearing | Vitalik Buterin | Core | Superseded |
| 165 | ERC-165 Standard Interface Detection | Christian Reitwiessner | Interface | Draft |
| 234 | Add blockHash to JSON-RPC filter options |
Micah Zoltu | Interface | Draft |
| 615 | Subroutines and Static Jumps for the EVM | Greg Colvin | Core | Draft |
| 616 | SIMD Operations for the EVM | Greg Colvin | Core | Draft |
| 681 | ERC-681 URL Format for Transaction Requests | Daniel A. Nagy | Interface | Draft |
| 758 | Subscriptions and filters for transaction return data | Jack Peterson | Interface | Draft |
| 801 | ERC-801 Canary Standard | ligi | Interface | Draft |
| Number | Title | Author | Layer | Status |
|---|---|---|---|---|
| 86 | Abstraction of transaction origin and signature | Vitalik Buterin | Core | Deferred (to be replaced) |
| 96 | Blockhash refactoring | Vitalik Buterin | Core | Deferred |
| 145 | Bitwise shifting instructions in EVM | Alex Beregszaszi, Paweł Bylica | Core | Deferred |
| Number | Title | Author | Layer | Status |
|---|---|---|---|---|
| 2 | Homestead Hard-fork Changes | Vitalik Buterin | Core | Final |
| 6 | Renaming Suicide Opcode | Hudson Jameson | Interface | Final |
| 7 | DELEGATECALL | Vitalik Buterin | Core | Final |
| 8 | devp2p Forward Compatibility Requirements for Homestead | Felix Lange | Networking | Final |
| 20 | ERC-20 Token Standard | Fabian Vogelsteller, Vitalik Buterin | ERC | Final |
| 55 | ERC-55 Mixed-case checksum address encoding | Vitalik Buterin | ERC | Final |
| 100 | Change difficulty adjustment to target mean block time including uncles | Vitalik Buterin | Core | Final |
| 137 | Ethereum Domain Name Service - Specification | Nick Johnson | ERC | Final |
| 140 | REVERT instruction | Alex Beregszaszi, Nikolai Mushegian | Core | Final |
| 141 | Designated invalid EVM instruction | Alex Beregszaszi | Core | Final |
| 150 | Gas cost changes for IO-heavy operations | Vitalik Buterin | Core | Final |
| 155 | Simple replay attack protection | Vitalik Buterin | Core | Final |
| 160 | EXP cost increase | Vitalik Buterin | Core | Final |
| 161 | State trie clearing (invariant-preserving alternative) | Gavin Wood | Core | Final |
| 162 | ERC-162 Initial ENS Hash Registrar | Maurelian, Nick Johnson | ERC | Final |
| 170 | Contract code size limit | Vitalik Buterin | Core | Final |
| 181 | ERC-181 ENS support for reverse resolution of Ethereum addresses | Nick Johnson | ERC | Final |
| 190 | ERC-190 Ethereum Smart Contract Packaging Standard | Merriam, Coulter, Erfurt, Catalano, Matias | ERC | Final |
| 196 | Precompiled contracts for addition and scalar multiplication on the elliptic curve alt_bn128 | Christian Reitwiessner | Core | Final |
| 197 | Precompiled contracts for optimal Ate pairing check on the elliptic curve alt_bn128 | Vitalik Buterin, Christian Reitwiessner | Core | Final |
| 198 | Precompiled contract for bigint modular exponentiation | Vitalik Buterin | Core | Final |
| 211 | New opcodes: RETURNDATASIZE and RETURNDATACOPY | Christian Reitwiessner | Core | Final |
| 214 | New opcode STATICCALL | Vitalik Buterin, Christian Reitwiessner | Core | Final |
| 649 | Metropolis Difficulty Bomb Delay and Block Reward Reduction | Afri Schoedon, Vitalik Buterin | Core | Final |
| 658 | Embedding transaction status code in receipts | Nick Johnson | Core | Final |
| 706 | DEVp2p snappy compression | Péter Szilágyi | Networking | Final |
| Number | Title | Author | Layer | Status |
|---|---|---|---|---|
| 1 | EIP Purpose and Guidelines | Martin Becze, Hudson Jameson | Meta | Active |
| Codename | Aliases | Block number | Date (UTC) |
|---|---|---|---|
| Homestead | 1,150,000 | 2016-03-14 | |
| DAO Fork | 1,920,000 | 2016-07-20 | |
| Tangerine Whistle | Anti-DoS, EIP 150 | 2,463,000 | 2016-10-18 |
| Spurious Dragon | State-clearing, EIP 158/161 | 2,675,000 | 2016-11-22 |
| Byzantium | Metropolis: Part 1 | 4,730,000 | 2017-10-16 |