EOS系列 - EOS发币

0. 合约规则

  • 必须注意的是,一个账户只能与一个智能合约相关联,可以在同一账户上更改或升级智能合约代码
  • 账户名与合约名相同
  • 一个合约内使用过的符号名,换一个合约还能用, 甚至也能叫做 ‘EOS’
  • 创建token合约要求至少需要230KB的内存
  • 通过自己创建的合约转账需要消耗ram,系统的token合约转账不消耗ram
  • 并不是每次交易都会消耗RAM
  • 用户哪此操作需要用到RAM呢?以下操作是需要消耗RAM的:创建新的EOS帐户、创建合约、向其它帐户转账、买卖RAM、抵押获取CPU或者NET、赎回抵押等等。用户在操作这此操作时,帐户里需要有一定量的RAM,否则无法完成操作。
  • cleos执行交易后输出的信息里包含的是: 交易hash, 使用net量, 使用cpu量

1. 解锁钱包 (每次服务器重启或每15分钟需要解锁一次)

    ./cleos wallet unlock
	ubuntu: PW5KjRuPafFMjF5SPLbqLBHuUsGbaNWyVKgVokYWsdt8HYs6GZHFL

2. 创建与发行自己的币

第一步,创建普通账户

由voter1创建 mytokentoken (加上–transfer表示钱的所有权一起转移给了新账号)

	./cleos system newaccount --transfer voter1 mytokentoken EOS63gKbqNRZjboQyfXBJPijZHNr1GtXJu5eCan3e6iSqN7yP5nFZ EOS63gKbqNRZjboQyfXBJPijZHNr1GtXJu5eCan3e6iSqN7yP5nFZ --stake-net "1.0000 SYS" --stake-cpu "1 SYS" --buy-ram "1 SYS"

第二步,部署token合约,部署账户为 mytokentoken

	./cleos set contract mytokentoken ../../unittests/contracts/eosio.token -p mytokentoken
	./cleos get abi mytokentoken

第三步,发布 MPT 代币,调用mytokentoken账户下的智能合约的create函数

必须注意的是,一个账户只能与一个智能合约相关联,可以在同一账户上更改或升级智能合约代码。

	./cleos push action mytokentoken create '[ "mytokentoken", "1000000000.0000 MPT"]' -p mytokentoken@active
 	./cleos get currency stats mytokentoken MPT

第四步,发行资产打入mytokentoken账户,调用mytokentoken账户下的智能合约的issue函数。

	./cleos push action mytokentoken issue '[ "mytokentoken", "150000000.0000 MPT", "memo" ]' -p mytokentoken
	# 查看余额(可选)
	./cleos get currency balance mytokentoken mytokentoken

第五步, 转账交易

	./cleos push action eosio.token transfer '[ "user", "tester", "1.0000 SYS", "m" ]' -p user

注意:

以前黑客在EOS网络发行假冒的EOS代币,从而在eosbet以及交易所进行消费,竟然假冒成功了,原因是eosbet这些项目代码中某些地方并没有判断token来源。

猜你喜欢

转载自blog.csdn.net/wcc19840827/article/details/107165776
eos