优惠论坛

标题: 怎么发行自己的加密货币? [打印本页]

作者: g9527    时间: 2025-9-7 20:09
标题: 怎么发行自己的加密货币?
本文章详细的讲解一个最基础的链上加密货币发行过程,期间也需要利用到几个工具(当然本文章最后有一键发行的工具,嫌麻烦的可以直接翻到最后使用工具)标准流程全解析' l2 N3 \  r! U& B
以太坊代币(ERC‑20)从开发到上链的最简标准流程(只讲开发与发行)示例使用以太坊兼容链 + Hardhat + OpenZeppelin,先部署到测试网(Sepolia),确认无误后再部署主网。
; s4 V( l# ~+ L3 v( ~& _$ b一、环境准备
. K5 }7 @& v  Z; Z8 |+ }- 必备8 b8 t0 o7 E. `6 \- \
- ≥ 18 与 npm
- @) B" j9 ]. J0 }  i6 \: ]& i- 一个以太坊钱包(如 MetaMask)
6 D3 j" Y! Q  E* \- 测试网 ETH(Sepolia Faucet 获取),主网部署需主网 ETH
! b% ~( o! F5 y) p: j- RPC 节点(Alchemy/Infura/Ankr 等均可)! V3 _/ d  k) z% i2 g9 q
- 新建项目目录,例如:erc20-token,并进入该目录
4 O. A9 Q4 E% K$ w5 ?, v# I8 u二、安装与初始化
) ]! e( {0 d* ?, _) {( t; U! R- 初始化项目
' _6 N) O0 [" M2 j9 W- npm init -y2 J# R5 y( G$ ^# S# m
- 安装依赖, Q7 }& M* @; k' |8 _# {
- 开发工具:npm i -D hardhat @. \6 E6 D9 H6 R0 a- C4 M- f
nomicfoundation/hardhat-toolbox dotenv  U0 s& w8 g; j2 t! V* }
- 合约库:npm i @openzeppelin/contracts6 ]9 o5 N: G, b9 b
- 初始化 Hardhat(可交互,也可手动建文件)
4 z& l" A; R( L5 H2 V- 交互方式:npx hardhat(选择 JavaScript 项目)
6 D5 @3 D4 k& V- 或手动创建以下文件(见下一步)/ r  s( r# e( B1 [, z1 {9 F+ G
三、最小化项目结构与配置
1 c# Q* E9 s: f1 Q% R1 H- 新建 (最小可用配置)
1 O- F: Y' D) Q* `, Q- 内容示例:' q, X' f* m" _4 @# c+ o. ~- `- ?
- require("@nomicfoundation/hardhat-toolbox");, O  O2 G1 J6 U+ v2 }
- require("dotenv").config();
, T/ q5 t* b8 _9 z- = {5 n; B: j7 r3 O3 F8 C9 \) J& f
solidity: "0.8.24",5 v2 }6 D2 ^( U% x6 V' k' o
networks: {8 W# @# w  f4 j
sepolia: {7 H8 D( M: E# N- ^, I
url: .SEPOLIA_RPC_URL,
) F0 z1 o3 D5 v3 Saccounts: [.PRIVATE_KEY].filter(Boolean),
; I7 S! v- U3 h& P# t/ |},
7 t/ U9 S" t" \6 D, k) T// mainnet: { url: .MAINNET_RPC_URL, accounts: [.PRIVATE_KEY].filter(Boolean) }
  R7 Q, `3 ?- p! ^},  y% C' T& J  W6 m
etherscan: {
& [, `+ Y! w/ ?" N) h0 AapiKey:& V/ n: r; C! z" ^
.ETHERSCAN_API_KEY, // 可选:用于合约校验% b1 q) {' p4 a/ F6 n
},
# j+ h4 r* A$ s4 J/ t2 I, U};+ y: E7 `' J$ L. G4 h) T0 A
- 在项目根目录创建 .env,示例(请替换为你自己的值):
1 Q, K6 v3 G7 H2 }- SEPOLIA_RPC_URL=+ [/ y$ H1 q( l5 H% d$ Y2 z
- MAINNET_RPC_URL=8 P# W: O' Z! r5 b$ A, G( T
- PRIVATE_KEY=你的私钥(0x开头,无空格). t. W8 j* O1 P
- ETHERSCAN_API_KEY=你的Etherscan API Key(可选,用于校验)0 k: G4 K9 @6 {4 h$ U, Z
四、编写标准 ERC‑20 合约
5 G! s  h4 h6 x- 在 contracts/ 目录下创建 ,示例代码:
$ B) O, @5 a6 x' `- pragma solidity ^0.8.20;) W$ i( E; y- L8 h
- import "@openzeppelin/contracts/token/ERC20/";
; m) y+ s% m! [- contract MyToken is ERC20 {* n: b% ~3 w' g/ g; A7 u
constructor(uint256 initialSupply) ERC20("MyToken", "MTK") {% g$ f) i0 |3 \3 l
_mint(, initialSupply);
+ N+ A2 i; I7 f( e}+ {* n6 L0 g, _; x* f" K
}- H9 F4 u) l" I: n% i
- 说明% H2 p  j1 A  j( y
- 名称与符号可自定义(如 "MyToken" / "MTK")
; I* b3 m+ }9 h- initialSupply 为初始发行量(单位为最小单位 Wei,例如 18 位小数的代币需乘 10^18)# i4 _* l8 E" m5 k7 Z
五、编写部署脚本
7 j1 B" b& j5 F2 n: H- 在 scripts/ 目录下创建 ,示例代码:$ h/ t7 A- F% q$ I+ X) @
- const { ethers } = require("hardhat");
; K' n5 L0 X' O- async function main() {
4 q& }1 }% h) t! Wconst initialSupply = ("100000000", 18); // 1亿枚,18位小数
4 B/ R3 l( t% P) W. x. h. S( w- Tconst token = await ("MyToken", [initialSupply]);
; [# u( @4 U! n* M: Jawait ();
; }% W, K% ^, I4 ?) z& f("MyToken deployed to:", );7 }. w4 H. i  u, ]. K. ~
}7 K- T  y: Z7 J, P& K: G  w# R. G8 C
- main().catch((error) => {
% b; d) }* P! {2 Z(error);+ q4 ^! I/ p" E  F# a
= 1;
/ s) `& Y4 i0 T  A$ c* ?});9 k# a- B1 }7 k% _, C& l
六、编译与部署到测试网(Sepolia)( h4 w) j, g6 `6 `# m
- 编译:npx hardhat compile
6 h, P0 P: B! W$ X: v2 P- 部署:npx hardhat run scripts/ --network sepolia
4 \; [- m) J% n* p2 h6 a) w, e8 ~- 运行成功会输出合约地址(MyToken deployed to: 0x...): u8 |. ]6 H, ^3 J: S
- 在区块浏览器()查询该地址,确认合约已上链
0 `( h1 m  [/ C$ g- q七、可选:合约源码校验(便于他人查看源码与构造参数)
8 c/ l2 z  w# ^" r- 命令:npx hardhat verify --network sepolia 合约地址 初始发行量(Wei)
7 i* z5 }) ^+ |% w- {- 例:npx hardhat verify --network sepolia 0xYourTokenAddress
) D& M% m' p% D, u/ A  H100000000000000000000000000$ c1 y0 i6 o) \) [) G4 Q. Q; R7 s5 i
- 注意:这里的初始发行量需与部署脚本中的 initialSupply 完全一致(单位为 Wei)1 x8 c" X1 m" T/ n3 l" o8 ^
八、在钱包中查看代币
6 a' H- B9 F9 w2 x# k- 打开 MetaMask,选择对应网络(Sepolia 或主网); w; D# t0 k$ M3 \
- 选择“导入代币”,粘贴合约地址,确认代币符号与小数位(18)3 \+ |9 Q2 _: r( H( y
- 即可在钱包中看到初始发行的代币余额(在部署账户下)3 r* x9 N' e2 |/ F* U2 h/ i
九、部署到主网(可选)
8 y# D# ~+ g& L5 q' I) k- 确保 .env 中配置 MAINNET_RPC_URL、PRIVATE_KEY,且钱包内有主网 ETH
. s; L6 r7 X* V3 C. r/ M0 ]  W- 命令:npx hardhat run scripts/ --network mainnet1 {$ U" |4 F4 m1 K) [: |+ O4 d, N& a
- 可用 Etherscan 校验:npx hardhat verify --network mainnet 合约地址 初始发行量(Wei)
. \5 ?! T) l7 Y十、常见问题与排查
! O9 c6 E. ?5 Z( X- 部署报“insufficient funds for gas”:
+ i/ n- P0 X! I3 _; d) L- 账户没有足够 ETH(测试网/主网),先充值再部署
/ ^2 F( J# s3 V% Q- Ethers 版本导致的方法差异:
$ @8 z8 I: b  o- 本教程基于 ethers v6(Hardhat Toolbox 默认),使用 2 e. `- H$ L: X( ]9 m) w: @
- 私钥与 .env:
: N* t9 d2 M+ L) N6 O& ]1 K' H- PRIVATE_KEY 必须以 0x 开头,无引号与空格; f# E. Y* b# `, T
- 确保 .gitignore 排除 .env,切勿泄露私钥( Y9 z+ U8 n: }7 a" \# N! S" Q
- 构造参数不一致导致校验失败:
& h" }& z- e6 J8 ~2 @- verify 命令的初始发行量(Wei)必须与部署时完全一致
& V6 R7 s! d6 ?2 {+ z到这里,你已经完成了一个标准 ERC‑20 代币从“编写 → 编译 → 部署 →(可选)校验 → 钱包查看”的完整最小流程。若你需要把名称/符号/小数位做成可配置,或加入可增发/销毁、暂停等扩展权限。
9 _+ A  j- s7 M0 J5 t4 h下面是一键发币的工具;" P2 J0 y+ j% r5 ^
这个星辰发币是目前最好用的一个一键发币的工具( ),不需要授权,代码干净;最推荐。
& x% w( R& z. D) b6 r这个dajgh也还可以但是需要授权( ),授权会带来一些安全方面的风险。2 H- ]7 t% H) G# \

作者: g9527    时间: 2025-9-7 20:30
这玩意儿整起来还挺麻烦啊,不过一键发行工具倒是省事,懒人直接冲就完事了
作者: 万家灯火    时间: 2025-9-7 22:31
推荐多半都有胜负,大家还是要平定心态
作者: leconer    时间: 2025-9-7 22:32
按照惯例来看看今天的推荐怎么样的了
作者: 小夏Sherry    时间: 2025-9-7 22:33
推荐学得再多,不如自己执行更好
作者: hong29    时间: 2025-9-7 22:41
是很好的,也是为数不多可以使用的钱包
作者: stareshiny    时间: 2025-9-7 22:41
这个方法可以自己好好利用,也是很不错的。
作者: 一帆风顺发    时间: 2025-9-7 22:44
今次方法在这里的运气还是值得肯定的.
作者: 星星知我心    时间: 2025-9-7 22:44
方法最后一段话觉得是很有道理的,但是在我面前就难以实现,毕竟运程太差了。
作者: 林武风    时间: 2025-9-7 22:45
今次方法能有盈利一天的生活费我也满足了。
作者: 南相楚    时间: 2025-9-7 22:53
钱包一般确实是会选择能够相信的啊
作者: 不傻不成气候    时间: 2025-9-7 22:55
这一次方法也还是超级好的赢来的啊
作者: wuzhaoshichao    时间: 2025-9-7 23:01
每种方法也是值得去看看关注下的啦。
作者: 老龙口    时间: 2025-9-7 23:02
这个钱包我还真是没有了解到的.
作者: jslinen    时间: 2025-9-7 23:12
这个也是可以看看大家推荐的钱包了的!
作者: 我的花园    时间: 2025-9-7 23:18
这个推荐瞅起来还好,有必要的话能够跟。
作者: 强强强123    时间: 2025-9-7 23:19
胜利的时候就该走,全部方法长玩就是输
作者: 老衲来了    时间: 2025-9-7 23:22
其实各个方法的吧~这个也是留意一下了
作者: 赌神归来    时间: 2025-9-7 23:26
看了这个方法我感到也是需要了解起来了的哦。
作者: 大吉大利    时间: 2025-9-7 23:27
推荐也是要看情况的,这个应该挺好
作者: 百战    时间: 2025-9-7 23:33
推荐也是要看情形的,这个应该挺好
作者: 知行合一    时间: 2025-9-7 23:36
推荐必定有对和不对的,因此老哥们还是要本身把握
作者: 想要水果机    时间: 2025-9-7 23:38
是很好的,也是为数不多可以用的钱包
作者: 小梦    时间: 2025-9-7 23:38
每一种方法也是值得去看看关心下的啦。
作者: 丁小荷    时间: 2025-9-7 23:41
今次方法可行赚到一天的生活费我也满足了。
作者: 洋森    时间: 2025-9-7 23:41
老哥的这波推荐胜负不了解高不高。
作者: wodezhuanyong    时间: 2025-9-7 23:43
使用这个方法有胜利还是最好的结果了呀。
作者: linxiaoshan888    时间: 2025-9-7 23:45
其实各种方法的吧~这个也是关心一下了
作者: 心随你动    时间: 2025-9-7 23:46
还是需要选有实力的钱包去交易哦。
作者: gkfbuw    时间: 2025-9-7 23:47
这个钱包不错使用,反正吧都是要谨慎安全第一啊!
作者: liuxin960    时间: 2025-9-7 23:50
钱包一般肯定是会选择能够相信的啊
作者: anzizhong    时间: 2025-9-7 23:52
我也希望大家多多出来做推荐,有福利大家一起共享
作者: yumi666    时间: 2025-9-7 23:56
还行啊,现在我也是用这个钱包
作者: ouliangzhong    时间: 2025-9-7 23:59
这个也是能看看楼主推荐的钱包了的!
作者: xiaoyi    时间: 2025-9-8 00:00
这个推荐看起来还好,有必要的话能够跟。
作者: drogan    时间: 2025-9-8 00:01
这一次方法也还是很好的盈利来的啊
作者: 小希哥    时间: 2025-9-8 00:02
这个钱包我还真的不了解到的.
作者: mxsj2016k    时间: 2025-9-8 00:03
钱包这么多,到底选择哪一个确实不容易。
作者: 中大奖    时间: 2025-9-8 00:04
推荐学得再多,干脆亲自执行更好
作者: 一路顺风    时间: 2025-9-8 00:06
见到这个方法我认为也是要关心起来了的哦。
作者: 越前龙马    时间: 2025-9-8 00:10
我也来学校这个推荐会怎么样了。
作者: 不要脸最大    时间: 2025-9-8 00:11
有盈利的时候就该走,全部方法长玩就是输
作者: bishao    时间: 2025-9-8 00:13
这个方法需要自己好好把握,也是很不错的。
作者: 不洗脸都帅    时间: 2025-9-8 00:13
推荐多半都有输赢,大家还是要放平心情
作者: 高文胜    时间: 2025-9-8 00:16
菠菜必须有推荐,这是不可或缺的
作者: 护国石柱    时间: 2025-9-8 00:19
按照习惯来看看今天的推荐如何的了
作者: lvaeyou    时间: 2025-9-8 00:23
方法最后一段话觉得是实用的,但是在我面前就难以实现,毕竟时运太差了。
作者: 春娇与小智    时间: 2025-9-8 00:24
今次方法在这里的运气还是值得肯定的.
作者: Lhrlhrgo    时间: 2025-9-8 00:29
钱包也不用那么多,有一个就可以的了。
作者: 22301    时间: 2025-9-8 08:23
这个也是可以去关注起来的啊。
作者: 舞出精彩    时间: 2025-9-8 13:32
这是要在看一下是怎么发的呢
作者: rainwang    时间: 2025-9-8 16:12
这个需要有资格吧,个人是不可能的吧
作者: 爱美的女人    时间: 2025-9-10 21:36
这是不知道的啊,怎么会发行了




欢迎光临 优惠论坛 (https://tcelue.com/) Powered by Discuz! X3.1