ERC-20 是以太坊生态中最常见的代币接口标准之一,但“代币名称”和“代币符号”并不能唯一识别资产。任何人都可以部署一个名为 ETH、USDT 或某个项目名称的合约,钱包也可能因为缓存或用户添加而显示误导信息。海外华人在交易平台、钱包和二层之间转账时,应把合约地址、网络和小数位作为三项独立核对信息。本文解释接口和安全边界,不推荐具体代币。
合约地址比名称可靠
ERC-20 合约通常实现 totalSupply、balanceOf、transfer、approve、allowance 和 transferFrom 等函数。余额写在代币合约的状态里,钱包通过调用 balanceOf 读取;因此一个地址有 ETH 不代表它一定有某个 ERC-20 代币。合约地址是最重要的识别信息,应该从项目官网、经过验证的代码仓库或多个可信平台交叉获取。不要只复制搜索结果中的第一条地址,也不要把同名资产在不同网络的合约当成同一个余额。
decimals 与金额显示
decimals 只影响人类界面的显示换算,不改变链上存储的整数。合约可能把 1 个代币表示为 10 的若干次方个最小单位,钱包如果读取错误或代币故意使用异常精度,就会显示与实际不同的数字。转账前同时检查“发送数量”“最小单位”“接收网络”和“预计到账”;交易成功只证明合约执行了调用,不证明收款人能在目标交易平台充值。对高金额先发送最小可验证额度,保存交易哈希和收款方确认。
transfer、approve 与 allowance
approve 会写入被授权地址可以使用的额度,transferFrom 则在额度允许时完成代扣。无限授权对常用应用方便,却把未来余额暴露给合约和被授权地址;应用升级、前端被劫持或私钥泄露都会放大损失。签名前阅读函数名称和参数,区分一次性 transfer、approve、permit 或批量授权。定期在可信授权查询工具中检查并撤销不再使用的额度,同时确认撤销交易在正确网络上执行。
收款和上架前的验证
收到代币或准备上架时,核对合约是否有已验证源码、是否存在可随时修改余额或转账限制的管理员权限、是否使用黑名单和暂停功能。审计报告不能保证没有漏洞,流动性和价格也与接口标准无关。交易平台常要求使用特定网络和 memo/tag;把 ERC-20 发到错误链、合约地址或缺少标签的充值入口,可能需要人工处理甚至无法找回。遇到“先交税才能解锁代币”的页面,不要继续授权。
给海外读者的核对清单
- 先确认使用的网络、钱包版本和官方文档,再进行任何签名或转账。
- 把交易哈希、合约地址、费用和时间记录在自己的账本中,遇到异常先暂停。
- 本文只解释公开机制,不构成投资、税务或法律建议;不同地区的规则需要向当地专业人士核实。
