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

Accepted EIPs (planned for adoption in the Byzantium Metropolis hard fork)

Number Title Author Layer Status
100 Change difficulty adjustment to target mean block time including uncles Vitalik Buterin Core Accepted
140 REVERT instruction in the Ethereum Virtual Machine Beregszaszi, Mushegian Core Accepted
196 Precompiled contracts for addition and scalar multiplication on the elliptic curve alt_bn128 Reitwiessner Core Accepted
197 Precompiled contracts for optimal Ate pairing check on the elliptic curve alt_bn128 Buterin, Reitwiessner Core Accepted
198 Precompiled contract for bigint modular exponentiation Vitalik Buterin Core Accepted
211 New opcodes: RETURNDATASIZE and RETURNDATACOPY Christian Reitwiessner Core Accepted
214 New opcode STATICCALL Buterin, Reitwiessner Core Accepted
649 Metropolis Difficulty Bomb Delay and Issuance Reduction Schoedon, Buterin Core Accepted
658 Embedding transaction return data in receipts Nick Johnson Core Accepted

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
137 Ethereum Domain Name Service - Specification Nick Johnson ERC 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 Piper Merriam, Tim Coulter, Denis Erfurt (mhhf), RJ Catalano (VoR0220), Iuri Matias (iurimatias) ERC 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
706 DEVp2p snappy compression Péter Szilágyi Networking Final