EOS学习笔记(六)使用cleos通过连接第三方节点,在测试网创建账户和发币代币

前言

上一篇中已经使用第三方节点连接到了测试网,现在,这篇文章主要是关于在测试网创建账号,发布代币,以及关于一些转账手续费的讲解。

生成两组公私钥对,创建账户的时候需要使用:

xiaohulu@xiaohulu-virtual-machine:~/eos$ cleos create key --to-console

Private key: 5JQqYxDETU7nzaUnRaYgqD4LZpsHER8TGbAD4U7ov5uhFAEpLqH

Public key: EOS5DbBzK6kTW1JZPMKKYUzTK63iyrBz3qAgSnbfURt9Qw5nk82vN

xiaohulu@xiaohulu-virtual-machine:~/eos$ cleos create key --to-console

Private key: 5JrKtVMVxxRQxoERZPxVNtGtm3ug2JwGiA8QFwZDFvEb81KXhtq

Public key: EOS8iXKzxDF6GD7Q8V9GCQfPKEyT9aCSVMFiF9ZkGZnn85m2gie7L

1.创建账户

之前通过http://jungle.cryptolions.io的Create account选项创建的账户nettest11111,

现在,使用cleos,通过nettest11111来创建新的账户

测试和主网中,创建账户需要为新账号购买和抵押一定的资源;

--stake-net:抵押的网络带宽资源,单位为EOS

--stake-cpu:抵押的CPU带宽资源,单位为EOS

--buy-ram-kbytes:购买的内存资源,单位为KB

--buy-ram:购买的内存资源,单位为EOS


  创建账户

  注意:之前在本地用的是create account,使用之后发现有错误,通过查看cleos的文档https://developers.eos.io/eosio-cleos/reference#cleos-create-account,发现在生产环境中,创建账号需要使用cleos system newaccount(https://developers.eos.io/eosio-cleos/reference#cleos-system-newaccount)命令替代。

xiaohulu@xiaohulu-virtual-machine:~/eos$ cleos -u "http://dev.cryptolions.io:38888" system newaccount --stake-net '10 EOS' --stake-cpu '10 EOS' --buy-ram-kbytes 10 nettest11111 nettests1111 EOS8iXKzxDF6GD7Q8V9GCQfPKEyT9aCSVMFiF9ZkGZnn85m2gie7L EOS8iXKzxDF6GD7Q8V9GCQfPKEyT9aCSVMFiF9ZkGZnn85m2gie7L

创建成功,来查询一下新账户nettests1111的情况:

cleos -u http://dev.cryptolions.io:38888 get account nettests1111

我们刚才创建了新账户nettests1111,并为其购买了11的RAM,NET和CPU各抵押了10个eos。

再来查看一下nettest11111的账户情况

xiaohulu@xiaohulu-virtual-machine:~/eos$ cleos -u  http://dev.cryptolions.io:38888 get account nettest11111

之前这个账户有100个EOS的可用余额。现在还有 79.2126个EOS可用余额,刚刚创建账号大约花了20.7874EOS

我们来看看花费的详情:

--各抵押了10EOS的NET和CPU,总共20EOS

--购买10kb的RAM,花费了0.7834个EOS,可以从创建账号的返回情况看到

{"from":"nettest11111","to":"eosio.ram","quantity":"0.7834 EOS","memo":"buy ram"}

--购买RAM时,系统收取了0.0040 EOS个交易费 

{"from":"nettest11111","to":"eosio.ramfee","quantity":"0.0040 EOS","memo":"ram fee"}

总共:20+0.7834+0.0040=20.7874

刚好相同

在对比创建nettest11111和nettests1111两个账号时,发现两个账号信息有个地方明显不同

nettest11111的网络资源和CPU都为staked 100EOS,而delegated 0 EOS,nettests1111正好相反,

staked 0EOS,delegated 100 EOS

原因

nettest11111的NET和CPU都是此账号自己抵押的,如果申请赎回,那么这200EOS将会退给nettest11111;

nettests1111的NET和CPU都是由nettest11111抵押的,nettests1111无法申请赎回,只能由nettest11111

申请赎回,这200EOS将会退给nettest11111

2.转账

    给创建好的nettests1111账号转点EOS


再次查看nettests1111信息,

cleos -u  http://dev.cryptolions.io:38888 get account nettests1111

xiaohulu@xiaohulu-virtual-machine:~/eos$ cleos -u  http://dev.cryptolions.io:38888 get account nettests1111

created: 2018-11-27T05:58:55.500

permissions:

owner    1:    1 EOS8iXKzxDF6GD7Q8V9GCQfPKEyT9aCSVMFiF9ZkGZnn85m2gie7L

active    1:    1 EOS8iXKzxDF6GD7Q8V9GCQfPKEyT9aCSVMFiF9ZkGZnn85m2gie7L

memory:

quota:    11.32 KiB    used:    2.926 KiB 

net bandwidth:

delegated:      10.0000 EOS          (total staked delegated to account from others)

used:                0 bytes

available:        1.824 MiB 

limit:            1.824 MiB 

cpu bandwidth:

delegated:      10.0000 EOS          (total staked delegated to account from others)

used:                0 us 

available:        363.8 ms 

limit:            363.8 ms 

EOS balances:

liquid:          10.0000 EOS

staked:            0.0000 EOS

unstaking:        0.0000 EOS

total:            10.0000 EOS

3.创建、发行、转账代币

  前几篇文章已经详细将结果代币的创建、发行和转账了EOS学习笔记(四)部署-发布-转账。

xiaohulu@xiaohulu-virtual-machine:~/eos$ cleos -u http://dev.cryptolions.io:38888 set contract nettest11111 ./build/contracts/eosio.token -p nettest11111@active

Reading WASM from ./build/contracts/eosio.token/eosio.token.wasm...

Publishing contract...

Error 3080001: Account using more than allotted RAM usage

Error Details:

account nettest11111 has insufficient ram; needs 194213 bytes has 5474 bytes

    查看错误信息,发现部署代币合约需要194kb的内存,当前只有54kb,为nettest11111在购买一些内存

cleos -u  http://dev.cryptolions.io:38888 system buyram nettest11111 nettest11111 "60.0000 EOS"

xiaohulu@xiaohulu-virtual-machine:~/eos$ cleos -u  http://dev.cryptolions.io:38888 system buyram nettest11111 nettest11111 "60.0000 EOS"

executed transaction: 11d671a43137c7e64604e260f92ab152f4c4026b96d410a6dcfbc41445f89cbd  128 bytes  837 us

#        eosio <= eosio::buyram                {"payer":"nettest11111","receiver":"nettest11111","quant":"60.0000 EOS"}

#  eosio.token <= eosio.token::transfer        {"from":"nettest11111","to":"eosio.ram","quantity":"59.7000 EOS","memo":"buy ram"}

#  nettest11111 <= eosio.token::transfer        {"from":"nettest11111","to":"eosio.ram","quantity":"59.7000 EOS","memo":"buy ram"}

#    eosio.ram <= eosio.token::transfer        {"from":"nettest11111","to":"eosio.ram","quantity":"59.7000 EOS","memo":"buy ram"}

#  eosio.token <= eosio.token::transfer        {"from":"nettest11111","to":"eosio.ramfee","quantity":"0.3000 EOS","memo":"ram fee"}

#  nettest11111 <= eosio.token::transfer        {"from":"nettest11111","to":"eosio.ramfee","quantity":"0.3000 EOS","memo":"ram fee"}

#  eosio.ramfee <= eosio.token::transfer        {"from":"nettest11111","to":"eosio.ramfee","quantity":"0.3000 EOS","memo":"ram fee"}

warning: transaction executed locally, but may not be confirmed by the network yet        ]

可以看到系统扣除了0.5%的交易费,实际上只购买了59.7EOS

重新部署:

cleos -u http://dev.cryptolions.io:38888 set contract nettest11111

xiaohulu@xiaohulu-virtual-machine:~/eos$ cleos -u http://dev.cryptolions.io:38888 set contract nettest11111 ./build/contracts/eosio.token -p nettest11111@active

Reading WASM from ./build/contracts/eosio.token/eosio.token.wasm...

Publishing contract...

executed transaction: edbfc40be4560e042965c31bc486fe87465e95f4a81ed544cbf16216e22538e0  8104 bytes  1211 us

#        eosio <= eosio::setcode              {"account":"nettest11111","vmtype":0,"vmversion":0,"code":"0061736d01000000017e1560037f7e7f0060057f7...

#        eosio <= eosio::setabi                {"account":"nettest11111","abi":"0e656f73696f3a3a6162692f312e30010c6163636f756e745f6e616d65046e616d6...

warning: transaction executed locally, but may not be confirmed by the network yet        ]

创建代币

 cleos -u http://dev.cryptolions.io:38888 push action nettest11111 create '{"issuer":"nettest11111", "maximum_supply": "100000000.0000 EOS", "can_freeze": 0, "can_recall": 0, "can_whitelist": 0}' -p nettest11111@active

can_freeze,can_recall和can_whitelist为布尔值,表示这个代币是否可以被发行人冻结,收回,或者白名单

发行代币

指定的发行人为nettest11111,将所有的代币都发行给了nettest11111

cleos -u  http://dev.cryptolions.io:38888 push action nettest11111  issue '[ "nettest11111", "100000000.0000 EOS", "issue" ]' -p nettest11111

 执行成功

xiaohulu@xiaohulu-virtual-machine:~/eos$ cleos -u  http://dev.cryptolions.io:38888 push action nettest11111  issue '[ "nettest11111", "100000000.0000 EOS", "issue" ]' -p nettest11111

executed transaction: 67ce46cca6669fe852feca5153f65d2015c3df73733775ee2a5896c9f350502b  128 bytes  821 us

#  nettest11111 <= nettest11111::issue          {"to":"nettest11111","quantity":"100000000.0000 EOS","memo":"issue"}

warning: transaction executed locally, but may not be confirmed by the network yet        ]

查看余额:

xiaohulu@xiaohulu-virtual-machine:~/eos$ cleos -u  http://dev.cryptolions.io:38888 get currency balance nettest11111 nettest11111

100000000.0000 EOS

  nettest11111账户里面已经有了所有的EOS,转一些给nettests1111账户

 xiaohulu@xiaohulu-virtual-machine:~/eos$ cleos -u  http://dev.cryptolions.io:38888 push action nettest11111 transfer '[  "nettest11111", "nettests1111", "100.0000 EOS", "transfer to hs" ]' -p nettest11111

executed transaction: b3aa4badf0ed30ce91987191f3222e82a91c9f2222a22bf883e09b7c9c70762f  144 bytes  565 us

#  nettest11111 <= nettest11111::transfer      {"from":"nettest11111","to":"nettests1111","quantity":"100.0000 EOS","memo":"transfer to hs"}

#  nettests1111 <= nettest11111::transfer      {"from":"nettest11111","to":"nettests1111","quantity":"100.0000 EOS","memo":"transfer to hs"}

warning: transaction executed locally, but may not be confirmed by the network yet        ]

此时查看一下,双方的代币余额:

xiaohulu@xiaohulu-virtual-machine:~/eos$ cleos -u  http://dev.cryptolions.io:38888 get currency balance nettest11111 nettest11111

99999900.0000 EOS

  xiaohulu@xiaohulu-virtual-machine:~/eos$    cleos -u  http://dev.cryptolions.io:38888 get currency balance nettest11111 nettests1111

100.0000 EOS

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,558评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,002评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,036评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,024评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,144评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,255评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,295评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,068评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,478评论 1 305
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,789评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,965评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,649评论 4 336
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,267评论 3 318
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,982评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,223评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,800评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,847评论 2 351

推荐阅读更多精彩内容