前言
在学习EOS开发之前,我们需要搞明白一些概念,尤其是Account(账户)和 Wallet (钱包) 。
钱包、账户、公私钥之间的关系
EOS与Ethereum在账户的设计上有很大不同,引入了Account账户, Wallet钱包, 钱包密码, Key公私钥, Permission权限等概念 。
下面我们通过一张图来理解一下它们之间的关系:
文章插图
如上图所示:
右边是EOS Wallet钱包,里面只存放私钥,而且钱包有一个独立的密码,需要输入密码才能解锁钱包,读取私钥 。
左边是EOS Account账户,可以把它看成是一个保险箱,里面有EOS Token以及智能合约,而需要转移里面的EOS Token(或者执行智能合约),我们需要钱包中对应的私钥来解锁这个保险箱 。
EOS Dawn 3.0测试版本中创建一个账户的命令是:
cleos create account {创建者账户名} {新的账户名} 公钥1 公钥2其中 {创建者账户名} 是为这个创建动作支付EOS的账户,公钥1和公钥2分别是两个不同权限的密钥对的公钥 。
所以把权限系统加上,图就变成下面这个样子:
文章插图
一个保险柜有两个开关,不过打开后可以进行操作的权限是不同的 。2个私钥可以存在一个钱包里,也可以如上图所示存在不同的钱包里(由不同的人控制) 。
权限
每个 Account 有三种权限: Owner、Active、Recovery 。
Owner权限是账户的最高权限,可以修改其它权限 。
Active权限默认可以进行转账等操作,但不能修改权限 。
Recovery权限可以用于恢复账户使用权 。
账户
每个保险箱有一个名字,也就是EOS账户名 。
转账和智能合约等操作的执行都是在Account这个保险箱进行,所以账户名在EOS世界其实是以太坊的地址 。
与以太坊不同,EOS的账户名不再是一串很长很长的地址,而是一个我们可以自定义的英文字母+数字(12345)+符号(.),最长12位,最短1位,全局唯一,先到先得,注册费用还没公布,但据最新的消息,长度不同,注册需要花费的EOS也不同 。
【理解EOS钱包、账户、公私钥之间的关系】
推荐阅读
- 拼多多钱包怎么解绑银行卡
- 一张图带你理解和实现RabbitMQ的延迟队列功能
- 微软关于微服务体系结构的理解
- 如何简单理解 JavaScript 的 Async 和 Await?
- 给微信钱包加密,再也不用担心别人偷看你零钱了
- 中国人对茶德的理解
- 嵌入式Linux框架的理解
- 网络七层协议的通俗理解
- 怎样隐藏微信钱包的金额数字?
- 微信用户注意了,一旦“钱包”出现这四种情况,就需要上传身份证