Token 标准入门407 次阅读
ERC-20:同质化代币的标准
为什么所有代币接口都一样?理解 ERC-20 的九个函数、approve 模式与常见误区。
#ERC-20#代币#approve
什么是 ERC-20?
ERC-20 是以太坊同质化代币(Fungible Token)的接口标准,2015 年定型。它规定了代币合约必须实现的函数,让任何钱包、交易所、DeFi 协议都能即插即用地支持任何新代币——这是 DeFi 可组合性的基石。
核心接口
interface IERC20 {
function totalSupply() external view returns (uint256);
function balanceOf(address account) external view returns (uint256);
function transfer(address to, uint256 amount) external returns (bool);
function allowance(address owner, address spender) external view returns (uint256);
function approve(address spender, uint256 amount) external returns (bool);
function transferFrom(address from, address to, uint256 amount) external returns (bool);
event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(address indexed owner, address indexed spender, uint256 value);
}
approve / transferFrom 两步授权的设计
合约(如 Uniswap)替你转账代币前,需要你先 approve 授权额度。这是为了解决"合约无法主动发起交易"的限制。理解这一点你就明白了:
- 为什么每 swap 一次要签两笔交易(approve + swap)
- 无限授权的风险:恶意合约可转走你全部余额——用 Revoke.cash 定期清理
常见误区
- 误转到合约地址:ERC-20 转账不检查接收方是否合约,转错可能永久丢失
- 假代币(Fake Tokens):任何人可发行同名代币,认准合约地址而非名字
- .decimals 陷阱:18 位精度是默认,但 USDT/USDC 是 6 位,BUSD 是 8 位
- 中心化风险:多数代币有 owner 可增发/冻结/暂停——查 mint 权限与黑名单函数
同族标准速览
- ERC-721:NFT 非同质化代币
- ERC-1155:多代币标准(游戏道具:同合约管理 FT+NFT)
- ERC-404:FT 与 NFT 混合实验
- ERC-2612 Permit:签名授权,省一笔 approve 交易
相关阅读
动手教程
把这个概念用起来的分步实操,跟着做一遍比再读十篇都记得牢
玩法一:DEX 兑换实操(Swap 全流程)
手把手完成 DeFi 的第一个基础操作——在 DEX 上把一种资产换成另一种:认识兑换界面四要素(选币、金额、汇率、输出量);代币导入与「同名假币」的识别方法;彻底区分「价格影响」与「滑点容忍度」这两个最容易被混淆的参数;路由器与聚合器的作用,以及为什么值得货比三家;一笔兑换的成本构成(Gas + LP 手续费 + 可能的协议费);首次交互的授权(Approve)流程与额度选择;从确认到链上核对的完整步骤;兑换失败的六种原因与处理方式;最后是兑换安全清单,包括假币、蜜罐(貔貅盘)、三明治攻击(MEV)的识别与防范。
预计 35-45 分钟 →
出入金(一):法币入金与链上充值
把人民币换成 USDT 的两种法币通道,以及从外部钱包或另一家交易所链上充值的完整流程:选网络、核对地址、小额测试、到账核对与未到账排查。
预计 20-40 分钟 →
合约搜索与代币管理:查地址、加代币、识别假币
讲透钱包里「代币」这件事:代币合约地址与钱包地址的区别,为什么主币自动显示而 ERC-20 必须手动导入;在哪里查可信的合约地址(项目官网、官方文档、CoinGecko/CMC、区块浏览器),以及绝不能用的来源(群聊、私信、空投弹窗);用区块浏览器核对合约的关键字段(名称、符号、精度、总量、持有人数)判断真伪;手把手完成「添加自定义代币」;系统识别假币套路——同名不同合约、假 USDT/假空投、貔貅盘与蜜罐合约;用合约地址核对持币量与授权;查询代币信息与持币分布识别风险;最后给出代币管理与对账的最佳实践清单。
预计 30-40 分钟 →
实战编写 ERC-20:基于 OpenZeppelin 发一个代币合约
亲手完成一个可部署的 ERC-20 代币合约:拆解 EIP-20 标准规定的 6 个必选函数(totalSupply / balanceOf / transfer / allowance / approve / transferFrom)与 Transfer、Approval 两个事件;安装并理解 OpenZeppelin Contracts 库为什么是行业标配;写出继承 ERC20 的 MyToken,用构造函数设置名称符号并初始 mint;讲透 _mint / _burn / approve / allowance / transferFrom 的授权扣款链路;分析加「转账征税」等自定义逻辑时最容易引入的漏洞;编译后检查 artifacts 中的 ABI 与字节码;再扩展到 ERC20Burnable、Pausable、ERC20Permit、ERC20Votes 与 ERC-721/1155 的区别。
预计 40-50 分钟 →
相关问题
读者在这类操作前后最常搜索的问题
免责声明与合规提示内容更新日期:2026-10-31
- 本站全部内容仅用于技术学习与科普,不构成任何投资建议、要约或招揽。 数字资产价格波动剧烈,请独立判断并自行承担决策结果。
- 教程记录的是撰写时的产品界面与规则,相关产品更新频繁, 实际操作请以官方当前界面与公告为准。发现内容过时,欢迎在对应页面反馈。
想系统排查自己的安全习惯?从安全自查清单开始。