EOS对于账户的设计与ETH有很大的不同,引入了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分别是两个不同权限的密钥对的公钥。
所以把权限系统加上,图就变成上面这个样子,一个保险柜有两个开关,不过打开后可以进行操作的权限是不同的。2个私钥可以存在一个钱包里,也可以如上图所示存在不同的钱包里(由不同的人控制)。
owner权限是账户的最高权限,可以修改其它权限。
active权限默认可以进行转账等操作,但不能修改权限。
每个保险箱有一个名字,就是EOS账户名。
转自:http://baijiahao.baidu.com/s?id=1600371124073112627&wfr=spider&for=pc