【干货】关于EOS账户、公私钥、权限及账号转让的一切操作
关于账户
EOS 的代币不直接由密钥(或者钱包)支配,那由什么支配呢?答案就是 Account 。最终拥有 EOS 的是账户,而账户又比较有意思,里面又有两个权限,一个是 owner 权限,一个 active 权限,注意,每个权限可以对应一个公钥,这说明一个账户可以对应两个私钥,就是说一个账户可以被两个私钥控制。但是其中 owner 私钥的权限更大一些,可以做任何事,包括所有 Acitve 能做得事情,以及重置 Acitve ,或者更改 Acitve 和 Owner 自身公钥以转让账号给其他人等高级操作,但是 active 私钥的权限就小一点点, active 私钥不能进行权限操作,主要用来平时的转账、投票等日常的操作。一般 EOS 私钥是 51 位( 5 开头), EOS 公钥是 53 位(以 EOS 开头)。
一般日常操作是不使用 onwer 权限的, 目前只是对于大部分个人来说, 启用强制的权限管理意义不大 ,在市面上,很多人不知道 EOS 账号体系有两种权限,主要原因是大部分钱包多采用「单私钥模式」,即 Owner 和 Active 使用同一把私钥,这样来说相对简单,只需要备份一把私钥,之前映射所提供的私钥也是属于单私钥模式。其中 MORE.TOP 钱包所使用的操作模式为「双私钥」,所以有网友把私钥导入其他钱包时,既可以选择 Acitve 也可以选择 Owner 对应的私钥。
但是一定要记住,无论是 Owner 还是 Acitve 私钥,任何钱包 APP 都没有拥的权利,这就是你的个人财产,去中心化资产最核心的东西,所以通过钱包或者朋友,网友帮忙注册的账号,都要检查下对应的 Owner 和 Acitve 是否都是属于自己的,是否自己都备份好了对应的 Owner 和 Acitve 私钥(如果 Owner 和 Acitve 公钥一样,你只需要备份一个私钥即可)
Acitve 实际上可以有多个公钥绑定,有些找人帮注册的网友可能对方给了你的账号只有 Acitve 绑定了你的公钥, Onwer 实际是绑定的自己的公钥,这样你的账户他就能自由操作了。所以一定要确认 ower 和 active 是否自己都拥有对应私钥
查询你账户 ower 和 active 权限的网站 链接: EOSPark ,之前推荐的 链接: https://eosmonitor.io/account 不太准确,我有个账户因为重置过一次 Acitve 结果查询还是两个公钥,前面那个可以查到三个公钥, 1 个 Owner,2 个 Acitve 。
助记词是私钥的另外一种表现形式,目的是为了更好地帮助用户记忆复杂的私钥。和私钥一个意思,助记词等于私钥。
一个私钥可以对应多个账户,所以如果你私钥对应了几个账号,导入其他钱包时就会有一个选择某个账户导入。
Acitve 实际上可以有多个公钥绑定,所以有些找人帮注册的网友可能。
关于账号转让
为了明白上面的说明,我专门拿 TP 和 more 钱包讲一个操作案例。
我其中一个钱包 More 有好几个账户,放着也没用,我想转让或者送给我朋友,之前找过通过代码命令行修改 active 和 owner 公钥转让账户的方法,但是操作太麻烦,自己也不太懂代码,就没弄,后来才知道 TP 钱包其实早就有权限管理功能了,具体操作方法见下图,击变更权限图标即可,分别把 acitve 和 owner 权限变为对方公钥就实现了账户转移,注意一定要安全,不要转给陌生人了。
我遇到到的问题就是第一次转入时,发现变更权限无可用,后来问了 TP 的工程师才知道是导入私钥是 Acitve 的私钥, Active 没有权限变更的权利,因此再换成 Owner 对应的私钥就没问题了!如果你的 Acitve 和 Onwer 是同一个公钥生成的,就不存在这个问题。
关于账户被盗和遗失
EOS 针对以下两种情况设计了应急措施:
EOS 有可能会强制要求所有账户的 Owner 权限必须使用多签名,也就是说 Owner 权限列表里要有至少两个私钥或其他账户,这样就减少了因为单个私钥泄露而导致的危险。再配合转账延时,为用户找回被盗账户提供了时间上的可能。
理解了上一篇内容的读者应该明白, EOS 里账户被盗有可能是控制权限的私钥被盗,也有可能是控制权限的其他账户被盗,总之,找回被盗账户的核心就是更改账户权限的权重列表,删掉被盗的部分。
Owner 权限是账户的最高权限,可以直接更改其他权限。推荐用户在 Owner 权限列表加入亲朋好友,并通过调整阈值使得任何行使 Owner 权限的行为都需要亲朋好友的 Active 权限签名(例如 Owner 阈值 10 ,本人私钥权重 8 , 5 个亲朋每人权重 1 ,自己和亲朋都无法单方面行动),黑客不得不再去盗取亲朋好友的账户。就算黑客盗取了亲朋好友的 Active 权限 , 他们也可以直接使用自己的 Owner 权限修改掉 Active 权限。
Owner 权限列表通过本账户 Active 权限可以修改,但需要长达 30 天的 “ 公示 ” 才能执行。这样既保证了账户安全,又可以在亲朋好友反目 / 失联后把他们从 Owner 权限列表删掉。
综上,防止账户被盗的关键就是在 Owner 权限列表加入信赖的亲朋账户,并给予合适的阈值和权重。唯一不能解决的情况是:黑客偷了你的 Owner 私钥,你同时忘了 Active 私钥。虽然黑客偷不走任何东西,但你也无法通过 Active 权限将被偷的私钥从 Owner 权限列表删掉。只能转移走所有资产并丢弃这个账户。所以一定要安全地备份好钱包文件与钱包密码。在 Active 权限列表中加入亲朋好友也是个办法,但是会损失便利性。
账户遗失包括私钥遗失或有权限的其他账户的私钥遗失,请备份好钱包,避免落入如此尴尬的境地。
遗失了私钥( Owner/Active )后,需要你的账户连续 30 天没有任何活动,你的 Recovery 权限列表中的亲朋好友就可以发起 Active 权限修改,替换一个新的公钥, 7 天后会被执行。拿到 Active 权限后你就可以发起 Owner 权限修改,又需要 30 天延时。综上,拿回 Active 权限需要 37 天,拿回 Owner 权限需要 67 天。
如果你交友不慎,亲朋好友不配合你发起 Active 权限修改,你只能通过线下(司法)途径解决了。
关于上面权重阈值调整和添加其他人 Acitve 公钥目前还没办法通过 APP 操作,未来这个核心安全功能有可能更多 APP 会开放。如果懂代码的可以通过代码操作!
以上由「 Ram ( EOS )社区」星球整理归纳