本教程将带你将常规 EOS 账号改为使用 Ledger 硬件钱包管理。如果您还没有 EOS 账号,请切换到教程《如何创建用硬件钱包管理的 EOS 账号?》。如果你的 Ledger 还没有设置好,也可以参考这个链接的教程设置。
设置前准备:
一个 EOS 账户
Anchor 钱包电脑桌面端
Ledger Nano 硬件钱包
一、加载 Ledger 的 EOS 公钥
1. 启用 Anchor 的 Ledger 钱包服务。启动 Anchor 钱包电脑桌面端,点击左侧菜单栏中的 Tools
,然后在右侧界面点击 Ledger
,最后在新的页面点击 Enable Ledger Support
。
2. 加载 EOS 公钥。启用服务后,界面会出现下图所示的连接状态。此时点击页面中的 Load Public Key
蓝色按钮,软件将会加载显示你的 Ledger 钱包的 EOS 公钥。如果你的 Ledger 还没有设置好,请参考教程《如何创建用硬件钱包管理的 EOS 账号?》。加载完成后复制并保存 Public Key at index ():
下方的 EOS 公钥,以备后续步骤使用。
二、导入 EOS 账号
如果要用 Ledger 管理的 EOS 账号还没导入 Anchor 钱包桌面端,则需要这一步导入账号。如果你还没有账号可以参看教程《如何创建用硬件钱包管理的 EOS 账号?》直接注册用 Ledger 管理的账号。当然你也参照教程《如何创建账号?》创建常规账号。
如果你已经导入需要修改的账号,可以跳过这一步。但需要注意的是每个 EOS 账号有 2 个权限密钥,分别是管理者 (active) 和拥有者 (owner) 密钥。如果想将这两个密钥都更改至 Ledger,你需要导入你 EOS 账号的拥有者 (owner) 权限(账号后面跟着 @owner)。
1. 在 Anchor 桌面端左侧主菜单点击 Home
菜单,然后在右侧页面点击 Manage Wallets
按钮。
2. 在新出现的页面点击 Import Account(s)
按钮。
3. 在新出现的页面点击 Import an existing Account
按钮。
4. 根据你的实际情况,在新出现的页面点击 Import Private Key
(用私钥导入)或者 Import from key certificate
(用密钥证书导入)按钮。
5. 选择要导入的账号和权限。如果你的账号是同一个密钥同时管理管理者 (active) 权限和拥有者 (owner) 权限,那么一个账号会加载出两个导入选项。如果只修改管理者权限,则只勾选后面带有 "@active" 那一条;如果要修改拥有者权限或者两个权限都修改,则勾选账号后面带有 “@owner” 那一条,然后点击右下角的 Import Account(s)
。之后,新账号就会出现在你的账号列表里了。
三、将权限密钥改为 Ledger 公钥
1. 选择你要修改权限的账号,点击左侧菜单栏中的 Tools
,然后点击 Security
工具组下的 Permissions
进入权限修改页面。
2. 根据需要点击 active permission
或 owner permission
区域的 Modify
进入修改页面。如果需要同时更改拥有者(Owner)和管理者(Active)密钥,我们建议您先更改管理者(Active)密钥。先更改管理者密钥,拥有者密钥保持不变,可以在更改出问题的情况下使用拥有者密钥恢复账号。
3. 在新页面将 Public Key
替换为前面从 Ledger 加载出的 EOS 公钥,核对替换的公钥准确无误后点击 Update Permission
。在交易签名弹窗中确认,交易成功后账号对应权限即变成由 Ledger 管理。
4. 如果需要修改另一个权限,请先根据下一个步骤导入刚刚修改的 Ledger 管理的权限,没有问题后再用相同的方法修改另一个权限。请至少先执行测试交易以确保一切设置正确无误。
您可以通过访问 bloks.io 或 EOSAuthority.com 等区块浏览器并搜索你的账号名来验证账号密钥是否已更新。点击区块链浏览器账号信息页面的 Keys
标签查看账号公钥是否和你修改的一致。一些浏览器显示的密钥开头是 “PUB_” 的格式而不是 “EOS”,你可以单击旁边的钥匙图标切换显示格式,进行核对。
四、用 Ledger 导入账号
在撰写本文时,Anchor 还不会将账号切换为用 Ledger 钱包管理。你需要先把已经无效的导入账号删除,重新导入。当然,如果你原来导入的是拥有者权限,而修改的是管理者权限,则不需要删除,可以直接导入。
1. 点击左侧 Home
菜单,然后点击 Manage Accounts
,找到失效的账号,将其删除。
2. 点击页面中的 Import Account(s)
,跳转新页面点击 Import an existing Account
,然后新页面点击 Load from Ledger
。加载出账号后勾选复选框并点击右下角 Import Account(s)
,成功后账号列表出现新导入的账号。
这个导入账号需要与 Ledger 设备连接才能够确认交易。
发一笔小额测试转账交易,看看是否一切正常。
作者: Peter Valenčič
编辑: Markus Hinrichs
翻译: SHE/ Josh Chung
资源与引用:
EOS 论坛主题帖: Using Anchor to change permissions of an existing EOSIO account to use Ledger(使用 Anchor 将常规 EOSIO 账号改为用 Ledger 管理)