eos开发(三)使用cleos命令行客户端操作EOS——关于钱包wallet和账户account
好了,上一节我们已经讲了关于wallet的一些基础操作,基本了解了怎么去创建一个钱包,怎么去查看钱包、上锁和解锁钱包等,这一节咱们就来开始操作账户account吧。
上一节讲到了每一个account都需要与两对密钥绑定,那么我们就先给它创建两对密钥吧。
1、创建密钥(./cleos create key)
如下图,创建了密钥后,我们查看一下wallet中的keys,发现钱包又被锁上了,解锁,再看,发现里面还是只有一个公钥在里面:
那要怎么做我们上边创建的密钥才会出现在wallet中呢?
这里有一个key导入的过程,我们需要将上边创建的两组密钥导入到wallet中。
2、向wallet导入key(./cleos wallet import private-key)
这里导入的key是私钥,公钥是可以公开给别人的,钱包是用来存放私钥的不是用来存钱的,有了私钥可以生成公钥。
由于每一个account需要两对密钥和它相对应,所以这里需要导入两次私钥,如下图:
完了,忘了上边解锁的是simaguang,default这个钱包没有解锁。使用上边的import命令,默认会将私钥导入到default默认钱包。下边我们先解锁default钱包后再来试试。
成功将key导入到了钱包里面,那接下来又干嘛呢?这还是没有建立wallet和account之间的联系啊。下面就看看我们怎么来创建账户吧。
在这之前,我们得把先前创建的两组密钥记录下来:
key1:
Private key: 5J6YHicUZZiEViWe3MCQD2vdCC99WW8VHhCQST5NaHScYQibwLy
Public key: EOS8kLLKdikhpY99EWSj8L8HHLSyE8xiRQW9mZAXxcf5thYK2LCzM
key2:
Private key: 5KKJZzK3fqoHbFFevRrzX7r1Gb8DtvnC82BAZEhrS7aqRtxpkth
Public key: EOS6FwkA7gn9a46LbmJWuRCXdZYW9jznckVKXcZTHYbcFBAB9VcNC
再用./cleos wallet keys查看钱包中的keys:
我们发现里面有三个公钥——我们明明导入的是私钥,怎么看到的是公钥啊?见鬼啦?呵呵,其实不是的,你的钱包里的default中同样存的是私钥,只是我们使用./cleos wallet keys查看的时候,钱包自动给咱们算出公钥来了。目的就是避免私钥泄露。所以,你的私钥,你一定要记好了,即使导入到钱包了,你还是要记在你自己的小本本上,不然要是你钱包也丢了,那就麻烦事大了……
还有啊,我们刚刚是将私钥导入到默认钱包default中了,那现在我们想把密钥也导入到simaguang这个钱包中又怎么办呢?
其实,在import后加一个参数就行了:
./cleos wallet import -n simaguang 5J6YHicUZZiEViWe3MCQD2vdCC99WW8VHhCQST5NaHScYQibwLy
./cleos wallet import -n simaguang 5KKJZzK3fqoHbFFevRrzX7r1Gb8DtvnC82BAZEhrS7aqRtxpkth
如下图:
这样我们就有两个钱包在存放我们的私钥了。
3、创建账户(./cleos create account ${authorizing_account} ${new_account} ${owner_key} ${active_key} )
如上命令中,${authorizing_account}是指创建者账户,也就是需要一个老账户来创建新账户,也就是说在EOS里面,账户不是你想有,想有就能有的,你得找人帮你创建。
我们在配置文件里面设置了一个账户eosio,那我们就用这个已有的账户来创建新账户吧。
${owner_key}和${active_key}就是上边我们创建的那两对密钥中的公钥。如下图:
看到了嘛?这账户名的命名规则是有要求的——13个字符以内,且只能在.12345abcdefghijklmnopqrstuvwxyz这32个字符中选取,为什么呢?这和base32这玩意儿有关,回头我们看程序吧。
4、查看账户信息(./cleos get account -j ${accountName})
既然账户已经创建好了,那我们现在就来看看这账户里面都存了些啥东西吧。使用./cleos get account -j ${accountName}命令可以查看账户信息,其中的-j的意思是使用json格式显示数据。如下图:
内容如下:
{
"account_name": "simayi",
"privileged": false,
"last_code_update": "1970-01-01T00:00:00.000",
"created": "2018-06-06T08:45:03.000",
"ram_quota": -1,
"net_weight": -1,
"cpu_weight": -1,
"net_limit": {
"used": -1,
"available": -1,
"max": -1
},
"cpu_limit": {
"used": -1,
"available": -1,
"max": -1
},
"ram_usage": 2724,
"permissions": [{
"perm_name": "active",
"parent": "owner",
"required_auth": {
"threshold": 1,
"keys": [{
"key": "EOS6FwkA7gn9a46LbmJWuRCXdZYW9jznckVKXcZTHYbcFBAB9VcNC",
"weight": 1
}
],
"accounts": [],
"waits": []
}
},{
"perm_name": "owner",
"parent": "",
"required_auth": {
"threshold": 1,
"keys": [{
"key": "EOS8kLLKdikhpY99EWSj8L8HHLSyE8xiRQW9mZAXxcf5thYK2LCzM",
"weight": 1
}
],
"accounts": [],
"waits": []
}
}
],
"total_resources": null,
"delegated_bandwidth": null,
"voter_info": null
}
5、根据公钥获得账户列表(./cleos get accounts ${public-key})
好了,就搞到这里吧,累了。
接下来的操作得加载智能合约才能搞了,所以,咱们下节见!
注意啊,这里面的关于key的内容,都应该使用你自己生成的密钥对哇,别疯疯癫癫的用我生成的弄哈——即便它也是可以用的。
转载于:https://www.cnblogs.com/java-xz/p/9987667.html
eos开发(三)使用cleos命令行客户端操作EOS——关于钱包wallet和账户account相关推荐
- EOS开发基础之二:使用cleos命令行客户端操作EOS(钱包wallet基础操作)
不知道下边这一段英文你们是不是能看懂,如果看不懂那就算了,我就是转过来随便看看的. 总之你记住nodeos.cleos和keosd这三个工程十分重要就行了,回头咱们的研究都从这三个工程杀进去. EOS ...
- EOS开发基础之五:使用cleos命令行客户端操作EOS——智能合约之Exchange
先回答一下上一节中留下的问题,为什么我就看不到eosio这个账户中的钱呢?我明明为它create了很多token啊. 对,你是create了,但是没有issue啊.create了1000000000 ...
- HDFS命令行客户端使用,命令行客户端支持的命令参数,常用命令参数介绍
3.HDFS的shell(命令行客户端)操作 3.1 HDFS命令行客户端使用 HDFS提供shell命令行客户端,使用方法如下: [toto@hadoop hadoop-2.8.0]$ hdfs d ...
- 如何使用Doctl,DigitalOcean官方命令行客户端
An earlier version of this tutorial was written by Brennen Bearnes. 本教程的早期版本由Brennen Bearnes编写 . 介绍 ...
- MySQL数据库介绍、安装(服务端软件安装、客户端软件安装(图形化界面客户端和命令行客户端))
1. MySQL数据库的介绍 MySQL是一个关系型数据库管理系统,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System, ...
- 人大金仓命令行客户端工具KSQL系列1
KSQL是什么? ksql是KingbaseES的交互终端,也就是命令行客户端,其作用类似于Oracle的sqlplus.命令行方式的客户端对开发人员可能不太友好,但是对于运维人员来说非常的方便,是必 ...
- mysql客户端指令_mysql command line client(mysql命令行客户端)
mysql command line client(mysql命令行客户端) (2010-03-24 09:18:38) 标签: 文化 分类: 数据库 1.输入密码:****** 2.ues mysq ...
- MySQL常见问题的解决,root用户密码忘记,不是内部或外部命令,修改数据库和表的字符编码,命令行客户端的字符集问题
文章目录 问题1:root用户密码忘记,重置的操作 问题2:mysql命令报"不是内部或外部命令" 问题3:错误ERROR :没有选择数据库就操作表格和数据 问题4:命令行客户端的 ...
- curl put方法 测试http_HTTP接口调试利器!4.8万Star的HTTP命令行客户端!
[导语]:Python实现的HTTP请求命令行客户端,我理解为curl的Python版本,但是提供了更友好,更易使用的命令及选项. 简介 HTTPie是使用Python实现的HTTP命令行工具,提供了 ...
最新文章
- [SCOI2008]着色方案
- php 添加日志文件,如何在PHP中创建日志文件?
- c++98不支持set初始化列表
- python延时函数_Python实现屏幕自动截图
- Re(正则表达式)库入门
- Tomcat启动失败错误解决Could not publish server configuration for Tomcat v8.0 Server at localhost....
- 如何还原桌面图标_如何为Windows 10桌面图标还原或更改文本的默认外观?
- 继谷歌之后 雅虎退出中国音乐市场
- android 3d地球,动态3D我的地球app
- 古代一些练外丹的资料
- 2020年《财富》世界500强排行榜揭晓
- vue.js毕业设计,基于vue.js前后端分离电影院售票小程序系统设计与实现
- grafana-reporter安装及配置
- java 指纹匹配算法_java – 从生物识别指纹考勤设备中检索数据
- 技术团队分享改进总结
- 基于WiFi的CSI数据做呼吸频率检测-python版(含代码和数据)
- 计算机网络(五):IPv6
- 数据分析三剑客之特征值提取(七)
- Unity碰撞和碰撞检测
- 弘辽科技:淘宝平台的推广方法有哪些?六大推广方式介绍
热门文章
- Android基础:Button按钮
- 超前进位加法器实验报告_超前进位加法器设计报告
- http://www.floorplanner.com/
- 成电858信号与系统专业课——考研学习笔记
- 实现多人聊天——简单群聊服务器的实现
- STM32新手入门-什么是寄存器
- 新媒体月薪4.5万?看完人民日报的招聘我傻了
- Linux开机启动程序的两种方法
- android java花指令_[原创]#30天写作挑战#Android记去花指令还原算法
- #8203;MyEclipse2014发布webservi…