ERC Overview
ERC¶
Overview¶
ERC stands for Ethereum Request for Comments, a series of technical specifications that define application-layer standards for Ethereum. ERC standards specify the interfaces and behavioral rules for smart contracts, enabling different smart contracts, dApps, and wallets to be compatible and interoperable, forming the foundation of interoperability within the Ethereum ecosystem.
ERCs can be thought of as the "technical protocols" of the Ethereum world, similar to how HTTP protocols work for the internet, providing a unified communication language for different applications.
Relationship Between ERC and EIP¶
EIP (Ethereum Improvement Proposals) Ethereum Improvement Proposals encompass all improvement suggestions for the Ethereum protocol, including core protocol, network layer, consensus mechanism, and other underlying technologies.
ERC (Ethereum Request for Comments) ERCs are standard proposals specifically targeting the application layer and are a subset of EIPs. All ERCs are EIPs, but not all EIPs are ERCs.
ERCs primarily focus on application-layer technical specifications such as smart contract interfaces, token standards, and naming conventions, without involving modifications to Ethereum's underlying protocol.
Major ERC Standards¶
ERC-20: Fungible Token Standard Proposed by Fabian Vogelsteller in November 2015, this is the most widely used token standard. ERC-20 defines the interfaces that fungible tokens must implement:
Core Functions: - totalSupply(): Query the total token supply - balanceOf(address): Query account balance - transfer(address, uint256): Transfer tokens - approve(address, uint256): Approve spending - transferFrom(address, address, uint256): Delegated transfer - allowance(address, address): Query approved allowance
Core Events: - Transfer: Transfer event - Approval: Approval event
Nearly all tokens issued on Ethereum (such as USDT, USDC, UNI) follow the ERC-20 standard, ensuring compatibility with wallets and exchanges.
ERC-721: Non-Fungible Token (NFT) Standard Establishes a standard interface for non-fungible NFTs, where each token has a unique identifier. ERC-721 defines interfaces for NFT ownership transfer, querying, and metadata, serving as the technical foundation for NFT marketplaces, game items, and digital art.
ERC-1155: Multi-Token Standard Allows managing multiple types of tokens (both fungible and non-fungible) within a single smart contract, supporting batch operations and significantly reducing Gas costs. Widely used in gaming, as games typically need to manage both currencies and collectibles simultaneously.
ERC-4337: Account Abstraction Standard Defines a standard interface for smart contract wallets, enabling account abstraction functionality and improving user experience.
ERC-2612: Permit Extension Adds off-chain signature authorization to ERC-20, allowing users to skip the approve transaction, saving Gas and optimizing the experience.
ERC Proposal Process¶
- Draft: Community members submit an ERC proposal describing the purpose and technical details of the standard
- Review: The community discusses and reviews the proposal, providing improvement suggestions
- Final: After thorough discussion and testing, the proposal becomes an official standard
- Stagnant/Withdrawn: Proposals that have not been updated for a long time or have been withdrawn
Core Value¶
Interoperability Unified standards ensure interoperability between different applications. Any token following ERC-20 can be used in any wallet that supports ERC-20 without additional development.
Reduced Development Costs Developers do not need to design token logic from scratch; they can quickly develop compatible applications by following existing standards. Mature ERC standards also provide secure reference implementations (such as the OpenZeppelin library).
Network Effects Widely adopted standards create network effects. New projects following standards can immediately integrate into the existing ecosystem and gain support from tools, infrastructure, and users.
Community-Driven ERCs are proposed and maintained by the community, reflecting Ethereum's open and decentralized spirit. Anyone can propose new ERC standards and drive ecosystem innovation.
Development Trends¶
As the Ethereum ecosystem evolves, ERC standards continue to advance: - Greater focus on Gas efficiency (e.g., ERC-1155 batch operations) - Enhanced security (e.g., ERC-2612 avoiding the two-step approve/transferFrom risk) - Improved user experience (e.g., ERC-4337 account abstraction) - Support for new asset types (e.g., on-chain games, metaverse, RWA, etc.)
ERC standards have become critical infrastructure for the thriving Ethereum ecosystem, continuously driving innovation and development in blockchain applications.