zoukankan      html  css  js  c++  java
  • 如何给EOS账户设置自定义权限

    https://bihu.com/article/1508858

    EOS从上线以后,不断有传出token被盗的消息,安全无小事,我们一定要重视,今天从EOS帐户自己定义权限的角度来谈谈如何做好账户的安全问题。

     

    一、自定义权限有什么用?

     

    EOS账号默认的只有owner和active两个权限,除了默认的权限外,我们也可以给EOS账户设置自定义权限,权限的名字可以根据自己的需要定义,我们也可以根据自己的需要设定,给该权限绑定相应的功能。

     

    EOS账户自定义权限非常灵活,例如可以设置一个自定义权限vote,绑定该权限只能用于投票,不给该权限转账的功能,这样用vote权限对应的公钥导入钱包后,只用用于投票,不能用于转账等其他操作,这样即使该私钥泄漏,也仅仅只能用于投票,不能转走账户里边的EOS。

     

    我们自定义的这个vote权限只赋予了给节点投票的权限,所以相比直接使用active或者owner权限来操作,会更加安全。即使vote这个秘钥丢失也不影响账户的资金安全。

     

    如何设置EOS账户的自定义权限呢?

     

    二、给EOS账户设置自定义权限

     

    主要分为两步,第一步是给帐户添加自定义权限,第二步是为该权限赋予相应的功能。

     

    (一)设置自定义权限

     

    1、使用scatter工具连上 https://eostoolkit.io/ 网站,

     

    2、点击左侧「Manage Account」,然后点击左边菜单中的 「Advanced Permissions」 按钮

     

                 

     

    3、在下边的表单中新增一个权限,如下图所示(默认)

     

                  

     

    各个字段的含义如下:

     

    • Account:要添加自定义权限的账户,连接了scatter以后,这里会默认显示scatter连接的账户。

    • Parent:要添加自定义权限的父权限,默认为owner,一般来说,我们设置为active就可以了。

    • Threshold:阈值,在多设置多签的时候用,我们用默认的1即可。

    • Weight:账户的权重,默认设置为1。

    • Permission:权限名称,例如常见的权限为owner和active,这里默认显示的是active,我们以自定义投票功能为例,我起的权限名字叫vote。

    • Authority:权限对应的公钥(也可以是账户名,这里只介绍设置公钥)。我们先用自己安全的方式生成一对公私钥,用scatter的新建密钥对功能就可以,然后把私钥保存好,这里填入公钥。

     

                  

     

    上边的表单字段都填写完毕后,点击下边的「UPDATE」,然后在弹出的scatter框中,点击「接受」,授权Scatter发送交易后,权限就新增成功了。

     

                 

     

    此时,我们在eosflare查询帐户时,就可以查到新添加的vote权限了。

     

                  

     

     

    到这里,只完成了第一步。权限是增加好了,但是刚刚我们新增的自定义权限并不能进行任何操作。下面我们还要给这个权限关联一些功能。

     

    (二)给权限关联相应的功能

     

    1、点击左侧「Manage Account」下边的「Link Auth 」按钮

     

                 

     

    然后可以在右侧看到如下信息:

     

                  

     

    各个字段的含义如下:

     

    • Account Name:默认显示的是scatter连接的eos账户。

    • Account Permission:就是我们要自定义权限的名称。

    • Contract Name和Contract Action:就是需要连接给这个权限的一些功能。

     

    一些常用功能的Contract Name和Contract Action,都有哪些呢?

     

    可以在eospark网站里边查询账户:eosio

     

                 

     

    点击「查看合约 

     

                

     

    一些常用的都在这里了,点击上下滚动条,可以查看更多。

     

                 

     

    更详细的信息,可以访问: https://blog.eospark.com/system_contract_API_introduction_v1.2.1.html 进行查看。

     

    较常用的如下:

     

                

     

    2、然后在上边的表单中,填写相应的信息:

     

    Account Permission:vote

    Contract Name:eosio

    Contract Action:voteproducer

     

    如下图所示:

     

                  

     

    3、填写完后,点击「LINK AUTH」 按钮。在弹出的scatter框中,点击「接受」。

     

    成功后,我们现在可以试验下vote的权限。

     

    三、测试EOS自定义权限

     

    我用vote权限绑定的公钥导入该EOS账号到TokenPocket钱包。

     

                 

     

    从上图中,我们可以看到自定义权限vote已经显示出来了,点击后边的「 > 」符号,还可以修改公钥。

     

    我们试着转一笔账:

     

                 

     

    出现了错误提醒:密钥,权限等不匹配,说明该vote权限并不能做transfer操作,设置成功。

     

    有了自定义权限功能,我们可以根据需求设置相应的权限,特定的权限,只赋予特定的功能。能不用Owner和active权限就尽量不用。例如设置vote权限只能用于投票,ram权限只能用于购买RAM等,在一定程度上,可以保护我们的EOS账户安全。

  • 相关阅读:
    Splashtop :符合 HIPAA 标准的远程桌面软件
    学生如何在家中访问学校许可的软件
    Splashtop用于远程实验室的功能得到增强
    docker环境安装,镜像和容器常用命令
    vue-cli入门
    webpack快速入门
    Vue路由vue-router
    Vue组件化
    Vue指令
    Vue实例
  • 原文地址:https://www.cnblogs.com/welhzh/p/10065686.html
Copyright © 2011-2022 走看看