我是此系列教程作者,eoswing团队肖南飞,区块链技术开发人员。
手把手教你玩eos系列教程,从最基础开始,一步一步教你学会用eos。比如发代币,开发DAPP等等。
本文是第三篇,主要是讲解了如何使用系统自带的eos.token合约来创建代币,发放代币和账户转账。
- 理解相关概念
- 创建账户和导入智能合约
- 创建、发放代币和账户转账
- cpu: 1核
- 内存: 2G
- 操作系统:CentOS 7.4 64位
- 服务器所在地:香港
推荐将服务器放在网络较为优质的环境,比如香港。不然会有很多配置依赖下载上的问题。
提示:以下命令行默认在root权限下执行。如遇权限问题,请在命令前加sudo。
智能合约是运行在计算机里面的,用于保证让参与方执行承诺的代码。它们是在区块链数据库上运行的计算机程序,可以在满足其源代码中写入的条件时自行执行。智能合约一旦编写好就可以被用户信赖,合约条款不能被改变,因此合约是不可更改的。
EOSIO智能合约是在区块链上注册并在EOSIO节点上执行的软件。智能合约定义了接口(命令,参数,数据结构)和实现接口的代码。
代码被编译成规范的字节码格式,节点可以检索和执行。区块链存储合同的交易(例如,资产合法转移,游戏数据变更)。每份智能合约都必须附有一份李嘉图合同,该合同定义了合同中具有法律约束力的条款和条件。
如果你在学习此讲前,已经退出了运行环境。请参考第二讲中的2.1 进入eos运行环境部分。
如果xiao钱包没有解锁,请先解锁。
cleos create key为简化操作,这里只生成了一对公钥-私钥对。对合约用账户eos.toekn的owner权限和active权限都使用同一个公钥-私钥对。
cleos wallet import -n xiao --private-key 5JitNtAj18S3q31L3XpEVmd1aPeNo35TWDk3SqTkwzAo9xxPxg7 cleos create account eosio eosio.token EOS6PLbqkWQey7JSeoS9GXAwdp2Nu7o3rKCiaFEpA92Luhzkiixrm EOS6PLbqkWQey7JSeoS9GXAwdp2Nu7o3rKCiaFEpA92Luhzkiixrmeos系统自带有eosio.token合约。此合约允许创建许多不同的令牌。
合约位置为 /contracts/eosio.token
cleos set contract eosio.token /contracts/eosio.token -p eosio.token@active查看下abi文件:
cat /contracts/eosio.token/eosio.token.abi其中,create是创建代币(或者是令牌、token等不同叫法),issue是发放代币,而transfer是账户转帐。
先实现1个亿的小目标吧,我们创建1亿个EOS的代币:
cleos push action eosio.token create '[ "eosio", "100000000.0000 EOS"]' -p eosio.token@active给xiaoaccount帐户发放100个EOS:
cleos push action eosio.token issue '[ "xiaoaccount", "100.0000 EOS", "memo" ]' -p eosio@active查看下xiaoaccount现在的资产:
cleos get currency balance eosio.token xiaoaccount可以看到,xiaoaccount已经收到了100个EOS。
现在xiaoaccount给eosio账户转账25个EOS:
cleos push action eosio.token transfer '[ "xiaoaccount", "eosio", "25.0000 EOS", "m" ]' -p xiaoaccount@active查看下eosio现在的资产:
cleos get currency balance eosio.token eosio可以看到,eosio账户上已经有25个EOS。
再查看下xiaoaccount现在的资产:
cleos get currency balance eosio.token xiaoaccount可以看到,xiaoaccount账户上已经扣除了25个EOS,只有75个EOS。 账户转账成功。
在本文的学习中如果遇到问题,欢迎留言或者在如下链接寻找解决方案:
如果觉得这系列教程有点意思,请投票给柚翼节点(eoswingdotio)。您的投票是本教程持续更新的动力源泉,谢谢。











