代币Token
如果不那么追求精确的定义,代币就是数字货币,比特币、以太币就是一个代币。
利用以太坊的智能合约可以轻松编写出属于自己的代币,代币可以代表任何可以交易的东西,如:积分、财产、证书等等。
因此不管是出于商业,还是学习很多人想创建一个自己的代币,先贴一个图看看创建的代币是什么样子。
1.安装 MetaMask
MetaMask 是一款插件形式的以太坊轻客户端,开发过程中使用MetaMask和我们的dapp进行交互是个很好的选择,通过此链接安装,安装完成后,浏览器工具条会显示一个小狐狸图标。
2、新建钱包
输入密码,保存助记词
3、使用测试网络
由于使用以太坊主网络发布智能合约需要真正的ETH,在这里我使用的是测试网络Ropsten(如果要在主网络发布一个Token,只需要选择主网络)
4、领取测试用的ETH
点击“Buy”
点击”ROPSTEN TEST FAUCET”
点击绿色的按钮“request 1 ether from faucet”,就可以领取1ETH
由于以太坊智能合约使用的是Solidity语言,所以需要使用Solidity开发。
在这里我使用的是Remix【https://ethereum.github.io/browser-solidity】,这是一个在线的Solidity编译器。
1、拷贝代码
代码可以从这个网址【https://ropsten.etherscan.io/address/0x655275d5ea52c62531aa43a85949c63dd858e0e0#code[(https://ropsten.etherscan.io/address/0x655275d5ea52c62531aa43a85949c63dd858e0e0#code)]】拷,然后粘贴到Remix左边的代码编辑区就可以了
2、设置参数
:大家注意在网页右边的”Run”中的“Environment”设置为“Injected Web3”,如果遇到无法选择“Injected Web3”的情况,请刷新一下。
“Create”中填入创建的Token参数,
第一个参数是Token的数量;
第二个参数是Token的全称;
第三个参数是Token的精度,即Token最小为小数点后几位;
第四个参数是Token的符号;
例如:100000000,”zhongxh’s test token”,8,”ZTT”
上述例子代表创建的Token的全称是”zhongxh’s test token”,符号是“ZTT”, ZTT的最大精度为小数点后8位,即最小是0.000000001ZTT,总共有1亿份,那么总共有100000000 * 10^(-8)ZTT,即1ZTT
点击“Create”按钮
注意Environment和Account和MetaMask保持一致,然后选择合约TokenERC20,填入你想要的发行量,名称及代号,就可以创建合约了。
3、提交智能合约
点击“Create”后,就可以看到MetaMask弹出的“CONFIRM TRANSACTION”的页面,这个页面是用来确认发送的,点击“SUBMIT”提交。
点击“SENT”,可以看到刚刚创建的合约。
点击刚刚发布的智能合约地址,就会跳转到Etherscan(以太坊的区块浏览器),耐心等待智能合约的创建。复制合约地址(下图中红色框内)。
4.添加合约
打开Metamask界面,切换到TOKENS,点添加合约,出现如下对话框:
填入刚刚复制的地址,点ADD,这时你就可以看到你创建的代币了,如图:
由于MetaMask插件没有提供代币交易功能,同时考虑到很多人并没有以太坊钱包或是被以太坊钱包网络同步问题折磨,今天我用网页钱包来讲解代币交易。
进入网页钱包地址【https://www.myetherwallet.com/#send-transaction】, 第一次进入有一些安全提示需要用户确认。
进入之后,按照下图进行设置:
1.添加代币
点击右下Add Custom Token
2.进行转账
在接下来的交易确认也,点击确认即可。