在以太坊上发行代币,本质是部署一份符合代币标准的智能合约,最常见的方案是 erc-20。它并不等于创建一条新公链,也不是点击按钮就能自动获得价值,而是把名称、符号、供应量、转账规则和权限控制写进合约,再通过钱包支付 gas 完成部署。erc-20 规定了 transfer、balanceof、totalsupply、approve、transferfrom 等核心接口,使代币能够被钱包、去中心化交易所和其他链上应用识别。

真正动手前,要先确定代币模型。名称和简称影响识别,decimals 决定显示精度,常见设置为18位;总量则要区分用户看到的数量和合约内部的最小单位。计划发行100万枚、使用18位小数时,合约实际铸造的是100万乘以10的18次方。还要提前决定供应量是固定、可增发,还是允许销毁。OpenZeppelin 的 ERC20 模块提供了固定供应、Burnable、Capped、Pausable、Permit 等扩展,但供应机制并不由 ERC-20 标准本身决定,开发者必须在继承合约中明确写出铸币逻辑。

技术路径通常是 Solidity 加 OpenZeppelin,再用 Remix 或 Hardhat 编译部署。初学者可在 Remix 中导入 ERC20 合约,设置 constructor 参数,并在构造函数里调用 _mint,将初始代币发送到部署者地址;需要增发时,应为 mint 函数加入 onlyOwner 或角色权限,不能把铸币入口留给任意地址。编译器版本、合约依赖和网络选择要保持一致,部署后记录合约地址,并在区块浏览器验证源代码,方便用户查看规则。OpenZeppelin 也提醒,直接复制未经审查的代码容易引入安全漏洞,优先使用正式发布的库版本更稳妥。

测试环节不能省。Sepolia 面向合约和应用开发,是以太坊官方推荐的默认测试网之一,适合检查部署、转账、授权、增发、销毁和暂停交易等功能。重点观察 allowance 与 transferFrom 的权限边界,确认部署者、运营钱包和普通持币地址的权限没有混淆;还要测试异常输入、零地址转账、超出余额转账,以及合约暂停后的行为。ERC-20 还有一个容易被忽略的问题:把代币直接转入不支持接收代币的合约,资产可能永久卡住,因此交互设计和接收逻辑需要单独处理。
主网部署只是发行流程的中段,不是终点。合约上线后,代币可以在钱包中手动添加,也可以进入去中心化交易所,但是否能交易取决于有没有创建交易对并注入流动性。项目方还应公布合约地址、总量、分配比例、锁仓安排和管理员权限,特别说明是否保留增发、暂停、黑名单或交易税功能。Uniswap 等自动做市机制依赖两种资产组成交易对,初始流动性规模会影响价格波动和滑点。部署成本可能不高,真正决定项目可信度的,却是代码安全、权限透明、流动性安排以及后续运营,而不是代币名称本身。
