/EIPs

The Ethereum Improvement Proposal

EIPs Gitter

Ethereum Improvement Proposals (EIPs) describe standards for the Ethereum platform, including core protocol specifications, client APIs, and contract standards.

Contributing

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.

EIP status terms

  • 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.

Deferred EIPs (adoption postponed until the Constantinople Metropolis hard fork)

Number Title Author Layer Status
86 Abstraction of transaction origin and signature Vitalik Buterin Core Deferred
96 Blockhash refactoring Vitalik Buterin Core Deferred
145 Bitwise shifting instructions in EVM Alex Beregszaszi, Paweł Bylica Core Deferred

Finalized EIPs (standards that have been adopted)

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 Core 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 in the Ethereum Virtual Machine 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 ENS support for reverse resolution of Ethereum addresses 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
606 Hardfork Meta: Homestead Alex Beregszaszi Meta Final
607 Hardfork Meta: Spurious Dragon Alex Beregszaszi Meta Final
608 Hardfork Meta: Tangerine Whistle Alex Beregszaszi Meta Final
609 Hardfork Meta: Byzantium Alex Beregszaszi Meta Final
649 Metropolis Difficulty Bomb Delay and Block Reward Reduction Afri Schoedon, Vitalik Buterin Core Final
658 Embedding transaction return data in receipts Nick Johnson Core Final
706 DEVp2p snappy compression Péter Szilágyi Networking Final