EIP代表以太坊改進提案。EIP是一個設計文件,為以太坊社區提供資訊,或描述以太坊或其過程或環境的新功能。EIP應提供該功能的簡明技術規範和該功能的基本原理。EIP作者負責在社區內建立共識並記錄不同意見。
Appendix A: 以太坊標準
以太坊改進提案(EIPs)
來自EIP-1:
以太坊徵求意見(ERCs)
Request for Comments(RFC)是一種用於為互聯網引入技術和組織指南的方法,因為它們是由https://www.ietf.org[Internet Engineering Task Force]提出的。ERCS包括為以太坊網路設置標準的類似指南。以下部分提供了由以太坊開發人員社區開發和接受的最新列表。
ERCs的增加是通過https://github.com/ethereum/EIPs[EIPs],以太坊改進協議來完成的,這是對比特幣自己的BIP的致敬。EIP由開發人員編寫並提交給同行評審,評估其有用性,並且能夠增加現有ERC的實用性。如果他們被接受,他們最終將成為ERC標準的一部分。
最重要的EIP和ERC表
EIP/ERC # | Title | Author | Layer | Status | Created |
---|---|---|---|---|---|
EIP Purpose and Guidelines |
Martin Becze, Hudson Jameson |
Meta |
Final |
||
Homestead Hard-fork Changes |
Vitalik Buterin |
Core |
Final |
||
Gas Usage for |
Christian Reitwiessner |
Core |
Draft |
||
Renaming Suicide Opcode |
Hudson Jameson |
Interface |
Final |
||
|
Vitalik Buterin |
Core |
Final |
||
devp2p Forward Compatibility Requirements for Homestead |
Felix Lange |
Networking |
Final |
||
ERC-20 Token Standard. Describes standard functions a token contract may implement to allow DApps and Wallets to handle tokens across multiple interfaces/DApps. Methods include: |
Fabian Vogelsteller, Vitalik Buterin |
ERC |
Final |
Frontier |
|
ERC-55 Mixed-case checksum address encoding |
Vitalik Buterin |
ERC |
Final |
||
Setting the stage for "abstracting out" account security, and allowing users creation of "account contracts" toward a model where in the long-term all accounts are contracts that can pay for gas, and users are free to defined their own security model (that perform any desired signature verification and nonce checks instead of using the in-protocol mechanism where ECDSA and default nonce scheme are the only "standard" way to secure an account, which is currently hard-coded into transaction processing). |
Vitalik Buterin |
Core |
Deferred (to be replaced) |
Constantinople |
|
Setting the Blockhash and state root refactoring to store blockhashes in the state to reduce protocol complexity and need for client implementation complexity necessary to process the |
Vitalik Buterin |
Core |
Deferred |
Constantinople |
|
Change formula that computes the difficulty of a block (difficulty adjustment algorithm) to target mean block time and take uncles into account. |
Vitalik Buterin |
Core |
Final |
Metropolis Byzantinium |
|
Serenity Currency and Crypto Abstraction. Abstracting Ether up a level with the benefit of allowing Ether and sub-Tokens to be treated similarly by contracts, reducing level of indirection required for custom-policy accounts such as Multisigs, and purifying the underlying Ethereum protocol by reducing the minimal consensus implementation complexity |
Vitalik Buterin |
Active |
Serenity feature |
Serenity Casper |
|
"Sharding scaffolding" EIP to allow Ethereum transactions to be parallelised using a binary tree sharding mechanism, and to set the stage for a later sharding scheme. Research in progress: https://github.com/ethereum/sharding |
Vitalik Buterin |
Active |
Serenity feature |
Serenity Casper |
|
Ethereum Domain Name Service - Specification |
Nick Johnson |
ERC |
Final |
||
Add |
Alex Beregszaszi, Nikolai Mushegian |
Core |
Final |
Metropolis Byzantinium |
|
Designated invalid EVM instruction |
Alex Beregszaszi |
Core |
Final |
||
Bitwise shifting instructions in EVM |
Alex Beregszaszi, Paweł Bylica |
Core |
Deferred |
||
Gas cost changes for IO-heavy operations |
Vitalik Buterin |
Core |
Final |
||
Simple Replay Attack Protection. Replay Attack allows any transaction using a pre-EIP155 Ethereum Node or Client to become signed so it is valid and executed on both the Ethereum and Ethereum Classic chains. |
Vitalik Buterin |
Core |
Final |
Homestead |
|
State clearing |
Vitalik Buterin |
Core |
Superseded |
||
EXP cost increase |
Vitalik Buterin |
Core |
Final |
||
State trie clearing (invariant-preserving alternative[EIP-161] |
Gavin Wood |
Core |
Final |
||
ERC-162 ENS support for reverse resolution of Ethereum addresses |
Maurelian, Nick Johnson |
ERC |
Final |
||
ERC-165 Standard Interface Detection |
Christian Reitwiessner |
Interface |
Draft |
||
Contract code size limit |
Vitalik Buterin |
Core |
Final |
||
ERC-181 ENS support for reverse resolution of Ethereum addresses |
Nick Johnson |
ERC |
Final |
||
ERC-190 Ethereum Smart Contract Packaging Standard |
Merriam, Coulter, Erfurt, Catalano, Matias |
ERC |
Final |
||
Precompiled contracts for addition and scalar multiplication operations on the elliptic curve alt_bn128, which are required in order to perform zkSNARK verification within the block gas limit |
Christian Reitwiessner |
Core |
Final |
Metropolis Byzantinium |
|
Precompiled contracts for optimal Ate pairing check of a pairing function on a specific pairing-friendly elliptic curve alt_bn128 and is combined with EIP 196 |
Vitalik Buterin, Christian Reitwiessner |
Core |
Final |
Metropolis Byzantinium |
|
Precompile to support big integer modular exponentiation enabling RSA signature verification and other cryptographic applications |
Vitalik Buterin |
Core |
Final |
Metropolis Byzantinium |
|
New opcodes: |
Christian Reitwiessner |
Core |
Final |
Metropolis Byzantinium |
|
New opcode: |
Vitalik Buterin, Christian Reitwiessner |
Core |
Final |
Metropolis Byzantinium |
|
Rinkeby Testnet using Proof-of-Authority where blocks only mined by trusted signers |
Homestead |
||||
Add |
Micah Zoltu |
Interface |
Draft |
||
Subroutines and Static Jumps for the EVM |
Greg Colvin |
Core |
Draft |
||
SIMD Operations for the EVM |
Greg Colvin |
Core |
Draft |
||
ERC-681 URL Format for Transaction Requests |
Daniel A. Nagy |
Interface |
Draft |
||
Metropolis Difficulty Bomb Delay and Block Reward Reduction - Delay of the Ice Age (aka the Difficulty Bomb by 1 year), and reduction of the block reward from 5 to 3 ether. |
Afri Schoedon, Vitalik Buterin |
Core |
Final |
Metropolis Byzantinium |
|
Embedding transaction status code in receipts. Fetch and embed status field indicative of success or failure state to transaction receipts for callers, as was no longer able to assume the transaction failed if and only if (iff) it consumed all gas after the introduction of the |
Nick Johnson |
Core |
Final |
Metropolis Byzantinium |
|
DEVp2p snappy compression |
Péter Szilágyi |
Networking |
Final |
||
ERC-721 Non-Fungible Token (NFT) Standard. It is a standard API that would allow smart contracts to operate as unique tradable non-fungible tokens (NFT) that may be tracked in standardised wallets and traded on exchanges as assets of value, similar to ERC-20. CryptoKitties was the first popularly-adopted implementation of a digital NFT in the Ethereum ecosystem. |
William Entriken, Dieter Shirley, Jacob Evans, Nastassia Sachs |
Standard |
Draft |
||
Subscriptions and filters for transaction return data |
Jack Peterson |
Interface |
Draft |
||
ERC-801 Canary Standard |
ligi |
Interface |
Draft |
||
ERC-827 A extension of the standard interface ERC20 for tokens with methods that allows the execution of calls inside transfer and approvals. This standard provides basic functionality to transfer tokens, as well as allow tokens to be approved so they can be spent by another on-chain third party. Also it allows to execute calls on transfers and approvals. |
Augusto Lemble |
ERC |
Draft |
||
ERC-930 The ES (Eternal Storage) contract is owned by an address that have write permissions. The storage is public, which means everyone has read permissions. It store the data on mappings, using one mapping per type of variable. The use of this contract allows the developer to migrate the storage easily to another contract if needed. |
Augusto Lemble |
ERC |
Draft |