在区块链和加密货币的世界里,以太坊(Ethereum)凭借其智能合约平台的功能,成为了发行代币的首选网络,ERC20是以太坊上最常用、最标准的代币技术标准,它规定了代币的基本功能,如转账、余额查询、授权等,确保了代币之间的互操作性,本文将为你提供一份详尽的以太坊ERC20代币制作教程,即使你是新手,也能一步步跟随完成自己的代币创建。
准备工作:在开始之前,你需要这些
一个以太坊钱包:
以太币(ETH):

部署智能合约需要支付一定的Gas费(网络交易费),你需要向MetaMask钱包中转入足够的ETH,以支付部署代币合约的费用,Gas费价格会因网络拥堵程度而波动,建议提前了解当前Gas价格。
基本的编程概念(可选但推荐):
虽然我们可以使用现成的模板,但了解一点Solidity(以太坊智能合约编程语言)的基础知识,能帮助你更好地理解代币的机制,并根据需求进行修改。
代码编辑器:
如Visual Studio Code (VS Code),用于编写和查看智能合约代码。
选择代币合约模板
对于大多数简单代币,我们不需要从零开始编写智能合约,可以使用经过社区广泛验证的模板,最著名的是OpenZeppelin Contracts。
访问OpenZeppelin官网:
获取ERC20合约代码:

ERC20.sol和Ownable.sol(可选,用于添加所有权功能,只有合约所有者可以执行某些操作,如增发代币)。编写你的代币合约(以简单ERC20为例)
让我们创建一个名为“MyAwesomeToken”(简称MAT)的简单代币。
创建Solidity文件:
MyAwesomeToken.sol。编写合约代码:
复制以下代码到你的文件中,并根据需要修改注释部分:
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
contract MyAwesomeToken is ERC20, Ownable {
constructor(
string memory name,
string memory symbol,
uint256 initialSupply
) ERC20(name, symbol) Ownable(msg.sender) {
_mint(msg.sender, initialSupply);
}
// 可选:添加一个mint函数,允许所有者增发代币
function mint(address to, uint256 amount) public onlyOwner {
_mint(to, amount);
}
}
代码解释:
// SPDX-License-Identifier: MIT:指定许可证类型,MIT是常用的宽松许可证。pragma solidity ^0.8.20;:指定Solidity编译器版本,^0.8.20表示使用0.8.20到0.9.0(不含0.9.0)的版本。import "@openzeppelin/contracts/token/ERC20/ERC20.sol";:导入OpenZeppelin的ERC20标准合约。import "@openzeppelin/contracts/access/Ownable.sol";:导入Ownable合约,用于实现所有权管理。contract MyAwesomeToken is ERC20, Ownable:定义我们的合约,继承自ERC20和Ownable。constructor(...):构造函数,在合约部署时执行一次。
name 和 symbol:代币的名称(如"My Awesome Token")和符号(如"MAT")。initialSupply:初始供应量,注意这里是以最小的单位(如 wei 对于ETH),但对于ERC20,通常是18位小数,所以1000000 * 10**18 表示100万枚代币,每个代币有18位小数。ERC20(name, symbol):调用父合约ERC20的构造函数,设置名称和符号。Ownable(msg.sender):将合约部署者设置为所有者。_mint(msg.sender, initialSupply):向合约部署者铸造(发行)初始供应量的代币。function mint(...) public onlyOwner:可选的增发函数,只有合约所有者可以调用,向指定地址增发代币。注意:如果你直接复制代码,@openzeppelin/contracts 这部分路径可能需要你在项目中配置,或者你可以直接从OpenZeppelin官网复制完整的ERC20.sol和Ownable.sol代码内容到你的文件中(如果不想处理import的话,可以把这两个合约的内容直接粘贴到你的文件顶部,确保依赖关系正确)。
编译智能合约
访问Remix IDE:

创建新文件:
MyAwesomeToken.sol。粘贴代码:
将你在VS Code中编写好的合约代码粘贴到Remix的编辑器中。
选择编译器版本:
pragma solidity版本匹配或接近的编译器版本(例如0.8.20)。编译合约:
MyAwesomeToken。部署智能合约到以太坊网络
连接钱包:
选择网络:
配置部署参数:
MyAwesomeToken。_name:输入你的代币全称,如 "My Awesome Token"。_symbol:输入你的代币符号,如 "MAT"。_initialSupply:输入初始供应量,1000000000000000000000000 (这表示100万枚,18位小数,即1后面跟6个0,再跟18个0)。部署合约:
验证代币(可选但推荐)
免责声明:本文为转载,非本网原创内容,不代表本网观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
如有疑问请发送邮件至:bangqikeconnect@gmail.com