ERC-20 是以太坊上可互换代币(Fungible Tokens)的标准接口。它宛如一种通用语言,明确定义了:余额如何转移、应用如何集成资产,以及如何规避昂贵的错误。
本文将详细解释 ERC-20 的含义、转账和授权的工作原理、Gas 费用、真实示例、主要风险以及给初学者的实用建议。我们先澄清 ERC-20 的概念,然后逐步介绍其核心函数、事件和日常使用流程。
ERC-20 是以太坊针对可互换代币的规范接口。可互换代币是指像美元一样可以一对一互换的单位。在以太坊网络中,所有改进和标准化都通过 EIP(Ethereum Improvement Proposals)提出。当提案涉及应用或代币标准时,通常被称为 ERC(Ethereum Request for Comments)。虽然正式名称是 EIP-20,但人们普遍称之为 ERC-20。
ERC-20 标准规定了智能合约必须暴露的函数(如 totalSupply、balanceOf、transfer、approve、transferFrom)和事件(Transfer、Approval)。这让 dApp 无需用户私钥就能代表用户移动代币。
遵循同一标准的代币可以在钱包、交易所和各种应用中顺畅工作。这与 ERC-721 等 NFT 标准不同,后者中的每个代币都是独特的。
ERC-20 的成功在于它实现了“即插即用”。钱包、交易所和 dApp 一旦实现该标准,就能无需定制代码直接支持任何符合标准的代币。对项目方来说,新代币可以立即兼容 MetaMask、硬件钱包、中心化交易所存取款系统以及 DeFi 路由器。
这种标准化加速了代币上线、降低了成本,并形成了强大的网络效应:更多 ERC-20 代币催生更多工具、托管方案和流动性,反过来又吸引新项目采用 ERC-20。OpenZeppelin 等可信库和常见审计模式进一步降低了风险和上市时间。
相比之下,ERC-777 等竞争标准因采用摩擦和权衡问题未能广泛取代 ERC-20。
日常加密活动中到处都能看到 ERC-20 代币:
稳定币:USDC、USDT、DAI 用于稳定价值、支付结算,并在以太坊生态中广泛流通。DeFi 接入:在 Uniswap、Aave 等平台直接用于交易、借贷和流动性池,无需定制集成。治理代币:UNI、COMP、MKR 授予 DAO 投票权,用户可通过连接钱包参与提案决策。交易所上市与钱包转账:标准化流程让代币轻松获得存取款支持,钱包和浏览器也能统一显示余额和转移记录。“可互换”意味着每个单位完全相同,可以一对一交换。ERC-20 代币不追踪单个“序列号”,智能合约只记录每个地址的余额。大多数代币支持小数位(通常 6 或 18 位),便于精确小额支付。

ERC-20 代币实际上是一个运行在以太坊或 EVM 上的智能合约。它记录代币总量和每个地址的持有量。你的钱包只存储地址,而代币余额由合约管理。ETH 是以太坊原生货币,用于支付 Gas 费。项目方可额外添加铸造(mint)、销毁(burn)或暂停转移等功能,但 ERC-20 只定义交互标准。
ERC-20 标准化的是交互方式,而非价值、安全或供应上限。用户仍需自行验证每个代币的合约设计(是否可无限铸造、是否有转账税、是否可暂停等)。部分代币带有税费、黑名单或重置机制,使用前务必确认。
ERC-20 接口包含六个核心函数和两个标准事件,以及可选的元数据(name、symbol、decimals):
totalSupply:返回当前存在的代币总量(用于追踪铸造和销毁)。balanceOf:查询某个地址的余额(钱包显示持仓时调用)。transfer:从调用者地址直接转账(消耗 Gas)。approve:授权 spender 可使用一定数量的代币(不立即转移,仅创建额度)。allowance:查询剩余授权额度。transferFrom:spender 使用授权额度从 owner 地址转账(DeFi 常用)。Transfer 事件:代币转移时触发(包括铸造和销毁)。Approval 事件:授权发生变化时触发。这些函数和事件让钱包、交易所和 dApp 能以统一方式与代币交互。

ERC-20 转账流程清晰:钱包构建 ABI 编码调用 → 用户用私钥签名 → 支付 ETH Gas 费 → 交易被打包进区块 → 合约更新余额并发出事件。
确认正确网络和代币合约地址。仔细检查接收地址(建议小额测试)。确保钱包有足够 ETH 支付 Gas。输入金额并确认小数位。审查交易详情后签名(推荐硬件钱包)。在区块链浏览器上追踪 Transfer 事件和到账情况。
确认 dApp 域名安全后连接钱包。检查 spender(授权对象)地址是否为官方合约。设置合理授权额度(避免“无限授权”)。确认并签名授权交易。操作完成后及时撤销或降低额度。
DeFi 协议通过 ERC-20 实现无托管的存款、交易和结算。
批准输入代币 → 设置滑点和截止时间 → 执行交换(路由器可能拆分订单以优化执行)。
批准并存入代币赚取利息,接收代表存款的特殊代币;还可作为抵押物借入其他资产。
批准两种代币 → 存入流动性池 → 获得 LP 代币(代表份额),赚取交易费并可能额外质押奖励。注意无常损失风险。

Gas 费用随网络拥堵波动。使用 Layer 2(如 Arbitrum、Optimism)可显著降低成本。批准和转账是独立交易,部分代币支持 EIP-2612 Permit 免 Gas 授权。
主要风险(初学者 checklist):
无限授权风险:恶意合约可能耗尽你的代币。假冒合约与钓鱼:始终在官方浏览器验证地址。税务代币:转账时自动扣费,影响 DEX 定价。重置(Rebase)代币:余额自动调整,可能与某些 dApp 不兼容。资金永久丢失:转错地址或合约无法找回。ERC-20 作为以太坊最基础、最成熟的可互换代币标准,已成为稳定币、DeFi 和治理生态的核心。它极大简化了开发与集成,让普通用户也能轻松参与加密经济。但使用时务必注意授权安全、合约验证和 Gas 费用。