之前我们学习了如何编译EOS程序,以及如何连接到EOS主网,接下来我们要谈一谈大家最关心的,如何创建自己的EOS账户。

摘要

这篇我们会学习如何创建钱包、秘钥对、主网账户,向大家介绍一些实用工具。最重要的是,我们会学习到在EOS里,公钥和账户到底有什么区别。

第一步:创建钱包

我们使用如下指令创建钱包:

cleos wallet create -n <想创建的钱包名称>

结果如下图:

wallet-create

如果不指定钱包名称,则会创建一个名为default的钱包。

最下面一行Pw...Xr就是我们的钱包密码,钱包每900秒就会自动锁定,需要这个密码来解锁。

解锁命令如下:

cleos wallet unlock -n hammerwang --password "PW5JHRWfAus3fMMiKb2fMfhGLPXjwpsDq9ugszGeEYGmsw95UGvXr"

第二步: 创建秘钥对

创建公私钥对很简单,命令如下:

cleos create key

这个命令我们执行两遍(后面解释为什么),显示如下:

create-key

第三步: 注册账户

和以太坊和比特币不同的是,公私钥并不意味着账户,而是意味着账户中的权限。(后面我们会单独解释公钥和账户的关系)

在创建账户,我们遇到了一个“先有鸡还是先有蛋”的问题,即想要创建一个EOS账户,必须用另一个EOS账户来完成这事儿。讲真,小白到这儿有点无奈,EOS在国内还比较小众,身边也没个贵圈好友,网上是有一些钱包可以创建EOS账户但需要用以太币来支付……币圈小白再次表示大大的无奈。

试了N个网站之后,终于发现了一个注册EOS账户的好网站,推荐给大家。https://eos-account-creator.com/

进入之后点击get started,就可以看到如下界面:

1. 给自己账户取个名字吧

eos-account-create1

给自己取一个账户名吧,12个字符,输入之后会提示是否available,当然如果你不是很在意账户可读意义的话,也可以点击右上角的I'm feeling lucky,这时网站会为你随机生成一个可用账户名,取好名字之后点击continue

2. 导入公钥

完成上述操作之后,就进入到如下页面:

eos-account-create1

这时就分别输入我们之前创建的两个公钥吧(注意是公钥哦!私钥自己保存)。

3. 最后一步:付款

和比特币以及以太坊不一样的是,在EOS创建账户是有成本的,这也就是为什么我们需要一个账户才能创建账户的原因(找个人来买单)。

EOS这样设计的初衷是好的,用户不必要为交易买单,而是让dapp运行方来为用户买单。

回到主题,输入完公钥之后,就可以付款啦。在红色方框中,大家可以选择付款方式,对于没有虚拟币的我来说,只能选择信用卡啦(这也是我看到的唯一一个对币圈小白友好的账户注册网站):

eos-account-create1

可以看到,注册一个EOS账户并不便宜,大概要花费1.5个EOS币。

完成上述三步,我们就拥有了一个属于自己的EOS账户啦!

第四步: 钱包导入私钥

运行如下命令,分别往创建的钱包中导入刚刚创建的2个私钥:

cleos wallet import -n hammerwang 5HsY4tAeGa1eeLv7y7VGAWKhiRd6CCQjxbDg2N1rTwR94VQQbQY

cleos wallet import -n hammerwang 5HxCWqKRd6eS6dLHWFmB28w1Pj5T5wiD67boM4qiR8L1TjRVK48

之后我们运行如下命令来查看钱包中的私钥:

cleos wallet keys

可以看到如下结果:

wallet-keys

导入成功!

到此为止,我们就算是正式拥有了一个EOS账户,未来可以基于这个账户做一些有意义的事情:例如转账、投票等。

当然,EOS生态中也有类似以太坊中的metamask的浏览器钱包应用:scatter。推荐给有需要的小伙伴。

划重点:公钥和账户的关系

在之前注册账户导入公钥的环节,很多玩过以太坊和比特币的小伙伴,应该都会产生相同的疑问:为什么都生成公私钥了,却还是离账户生成差好大一步。以及在创建账户的过程中,导入的owner key和active key到底有什么意义。

1. 为什么公钥≠地址

之前我们在接触比特币和以太坊时,生成地址很简单,只要生成公私钥对即可。币就放在公钥里,知道私钥就可以把币转走。因此这些网络,都不天然支持多签名钱包。即一个钱包只有一个控制人,谁掌握着私钥谁就有实际控制权。

而在EOS中,秘钥对=权限。

一个秘钥对对应了某种权限,即用这个账户做某些特定的事情的权利。举个例子,你生成了一个秘钥对并赋予了它可以通过你的账户买卖RAM,但并不能转账。那么如果你把其中的私钥给了你的朋友,那么他只能为你的账户买卖RAM,而不能操作你账户中的币。

2. 什么是owner key和active key

你可以给你的钱包自定义一些权限用来约束任意事件,但是每个账户都有两个标准权限,即owneractive。可以把owner权限理解成账户的“根权限”,其他人只要拿到你的owner key,基本上就可以用你的账户做任何事情。而active key的权限则要小一点,支持除了修改owner之外的其他操作。

通过上面的解释我们可以看出,EOS有一个巨大的优势:即底层天然支持多签名。

总结

这一章,我们学会了怎样拥有自己的EOS账户。具体通过如下四步:

  1. 创建钱包
  2. 创建秘钥对
  3. 注册账户
  4. 秘钥对导入钱包

王铁塔
33 声望29 粉丝