<返回更多

理解EOS钱包、账户、公私钥之间的关系

2019-09-03    
加入收藏

前言

在学习EOS开发之前,我们需要搞明白一些概念,尤其是Account(账户)和 Wallet (钱包)。

钱包、账户、公私钥之间的关系

EOS与Ethereum在账户的设计上有很大不同,引入了Account账户, Wallet钱包, 钱包密码, Key公私钥, Permission权限等概念。

下面我们通过一张图来理解一下它们之间的关系:

 

理解EOS钱包、账户、公私钥之间的关系

 

 

如上图所示:

右边是EOS Wallet钱包,里面只存放私钥,而且钱包有一个独立的密码,需要输入密码才能解锁钱包,读取私钥。

左边是EOS Account账户,可以把它看成是一个保险箱,里面有EOS Token以及智能合约,而需要转移里面的EOS Token(或者执行智能合约),我们需要钱包中对应的私钥来解锁这个保险箱。

EOS Dawn 3.0测试版本中创建一个账户的命令是:

cleos create account {创建者账户名} {新的账户名} 公钥1 公钥2

其中 {创建者账户名} 是为这个创建动作支付EOS的账户,公钥1和公钥2分别是两个不同权限的密钥对的公钥。

所以把权限系统加上,图就变成下面这个样子:

 

理解EOS钱包、账户、公私钥之间的关系

 

 

一个保险柜有两个开关,不过打开后可以进行操作的权限是不同的。2个私钥可以存在一个钱包里,也可以如上图所示存在不同的钱包里(由不同的人控制)。

权限

每个 Account 有三种权限: Owner、Active、Recovery。

Owner权限是账户的最高权限,可以修改其它权限。

Active权限默认可以进行转账等操作,但不能修改权限。

Recovery权限可以用于恢复账户使用权。

账户

每个保险箱有一个名字,也就是EOS账户名。

转账和智能合约等操作的执行都是在Account这个保险箱进行,所以账户名在EOS世界其实是以太坊的地址。

与以太坊不同,EOS的账户名不再是一串很长很长的地址,而是一个我们可以自定义的英文字母+数字(12345)+符号(.),最长12位,最短1位,全局唯一,先到先得,注册费用还没公布,但据最新的消息,长度不同,注册需要花费的EOS也不同。

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>