104:ERC20:ETH资产世界的第一个“秩序”

  • Henry
  • 发布于 4小时前
  • 阅读 48

ERC-20:最小化设计,最大化效应 ERC-20 是以太坊历史上最成功的最小化设计案例。如果说比特币定义了“数字货币”,那么 ERC-20 则定义了“可编程、可组合的数字资产”

📚 作者:Henry 🧱 系列:《Web3 多链标准体系全解析》 · 第 4 篇 👨‍💻 受众:Web3 前端工程师 / 区块链开发者 / Web3入门者

👉适合人群: ✅ Web3 初学者 ✅ 想转型到 Web3 的技术 / 内容 / 产品从业者 ✅ 希望用碎片化时间积累系统认知的朋友

如果你觉得有收获,欢迎点赞(❤️)+ 收藏,一起学习、彼此交流 🙌

你去问任何一位 Solidity 新手:“你的第一个合约是什么?” 极大概率,他们会说: “我写了一个 ERC-20 Token。”

这几乎成了 Web3 的入门仪式。但真正令人着迷的从来不是 transfer()approve() 的代码,而是:

  • 为什么以太坊需要 ERC-20?
  • 它解决了哪个根本性问题?
  • 它为何如此朴素却能一统资产标准?
  • 又有哪些隐患在 DeFi 爆发后暴露出来?

ERC-20 的故事,远比一份接口规范精彩。


ERC-20 出现之前:ETH的“百家代币时代”

今天,我们习以为常的“钱包打开就能看到余额”、“DEX 可以交换任意 Token”, 在 2016 年几乎是幻想。

当时的代币世界:

  • 每个 Token 合约命名不同
  • 方法不统一(sendmovegive 等)
  • 事件缺失
  • 钱包无法识别
  • 合约无法对接
  • 安全审计困难

简单来说:

没有标准,就没有资产可组合性;没有可组合性,就没有 DeFi。

许多应用想支持多 Token 却无从下手——接口不一致,无法泛化。

直到 ERC-20 出现,ETH第一次拥有了“人人能理解与使用的资产协议”。


核心思想:将“代币”抽象为一套最小操作

ERC-20 的设计极度简洁,可以用一句话概括:

Token = 一张 (address → balance) 余额表 + 一套操作这张表的公开规则。

它不试图解释“什么是资产”,只规定:

  • 如何查询
  • 如何转账
  • 如何授权别人代你转账
  • 如何用事件广播变更

这套“最小可行接口(Minimal Viable Interface)”最终成为所有钱包、DEX、协议的共同语言。

它的核心函数,你肯定熟悉:

方法 用途
balanceOf 查询余额
transfer 用户主动转账
approve 授权某地址代用者扣钱
transferFrom 被授权扣款
allowance 查询授权额度

以及两个链上最重要的事件:

  • Transfer
  • Approval

从此,ETH第一次拥有了“资产语义”。


设计哲学:每个函数背后都有深意

很多人以为 ERC-20 是随手拟出来的一套接口。实际上,它的每个设计都蕴含了当时的技术背景与生态目标。

balanceOf:ETH选择了“账户模型”的资产表达

不同于比特币的 UTXO,ERC-20 把所有余额集中在一张映射表:

mapping(address => uint256) balances;

为什么?

  • EVM 可维护全局状态
  • 账户模型更适合复杂资产逻辑
  • 减少碎片化、便于组合
  • 更符合“智能合约作为账户扩展”的愿景

这是以太坊与比特币路径分叉的关键之一。

approve + transferFrom:ERC-20 真正的灵魂

很多新手以为 transfer() 是 ERC-20 的核心。 错。真正改变世界的是授权转账

授权机制让合约可以:

  • 代用户扣款(DEX、借贷、Staking)
  • 执行多步金融逻辑
  • 完成原子组合交易
  • 管理用户资产

没有 approve

  • Uniswap 无法实现
  • Aave 不能扣用户抵押品
  • Vault 不能自动再投资
  • Router 不能自动调度 Token

可以这样说:

ERC-20 的“授权”发明了 DeFi。

Transfer 事件:钱包生态的基石

今日我们打开 MetaMask,自动看到余额、历史记录,这全靠事件。

事件是 Web3 用户体验的灵魂:

  • Explorer 读取 Transfer 做可视化
  • 钱包监听事件刷新 UI
  • 协议订阅事件触发业务

没有事件,就没有 Web3 的可观察性。


为什么 ERC-20 能成为事实标准?

“少即是多”的接口设计

ERC-20 小到令人不可思议,却:

  • 足够表达一个 Token 的基本生命周期
  • 不会给实现者制造太多门槛
  • 像“积木零件”一样适合组合

这是标准的关键秘诀。

把资产逻辑与业务逻辑彻底解耦

ERC-20 不关心你是:

  • 游戏
  • 借贷
  • 交易所
  • NFT 市场
  • DAO 工具

它只管:

  • 资产在哪里
  • 谁拥有什么
  • 授权给谁

业务在另一个合约层实现。 这才让整个以太坊生态可以自由组合。

资产合约原生化,带来可编程金融革命

ERC-20 的本质是:

第一次让“资产 = 程序状态 + 公开函数”。

这打破传统金融资产的封闭性,让资产具备:

  • 可编程性
  • 透明性
  • 原子组合能力
  • 自动化能力

DeFi 也因此成为可能。


ERC-20 的不足:它并不完美

随着以太坊的发展,ERC-20 的一些设计局限逐渐暴露。

无穷大 approve 是安全噩梦

无穷授权是今天被盗资产的主要原因之一。

用户经常:

  • 授权后忘记收回
  • 给恶意合约授权
  • 被钓鱼前端诱导 approve

这不是用户的问题,是设计的问题。

支付体验差:先 approve 后 transfer

这对新人非常不友好:

  • 两步操作
  • 两次 Gas
  • UX 完全不像支付

于是出现了改善方案:

  • ERC-2612 Permit(签名授权、不上链授权)
  • ERC-1363 Payable Token(转账即回调)

ERC-20 太基础,不够满足 DeFi 高阶需求

随着金融协议变得更复杂,ERC-20 显得力不从心:

  • Vault 需要统一跨协议标准 → ERC-4626
  • 多资产系统需要标准 → ERC-1155
  • 账户抽象需要更灵活的授权 → ERC-4337

ERC-20 是基础,但不是终点。


ERC-20 的进化脉络:从代币到资产抽象

ERC-20 是起点,后来出现大量扩展标准:

ERC-2612 Permit:无需 approve 的 Token

签名即可授权,DApp 代付 Gas,极大改善支付体验。

ERC-1363:可回调 Token(Payable Token)

transferAndCall() 直接把 Token 与业务逻辑绑定,更自然的扣款流程。

ERC-4626:统一金库(Vault)模型

所有 DeFi 金库可以:

  • 标准化存取
  • 自动计算份额
  • 组合流动性
  • 自动化收益策略

这是 DeFi 的“资产容器标准”。


ERC-4337:智能账户与资产操作分离

DeFi 最终将进入:

  • 优化授权
  • 优化支付
  • AA 钱包自动管理 Token

ERC-20 在 AA 时代仍是资产基石。


ERC-20的出现, 第一次让我们看到:

  • “一个资产”在链上是如何抽象的
  • 为什么组合协议可以爆发
  • 为什么钱包/DEX/协议可以无缝协作
  • 为什么账户抽象会改变这一切

理解 ERC-20,你会发现:

所有链上资产标准的核心,都围绕:“如何表达资产、如何授权、如何转移、如何组合。”

ERC-20 是以太坊标准体系“第一块稳固的地基”。它简单,却深刻;朴素,却开启了整个 DeFi 世界。

点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论