以太坊连载(十三):导入预售钱包,更新、备份、恢复账号

以太坊连载(十三):导入预售钱包,更新、备份、恢复账号_第1张图片

导入预售钱包

使用Mist以太坊钱包

用GUI Mist以太坊钱包导入预售钱包非常简便。实际上,在应用安装期间你会被问到是否要导入预售钱包。

警告:Mist钱包是试用软件。使用风险自担。

安装Mist以太坊钱包的说明在 创建账号:使用以太坊钱包 章节给出。

只需要把.json预售钱包文件夹拖放到指定区域,输入密码,导入预售钱包。

如果你选择不在应用安装期间导入预售钱包,以后你可以随时导入,只需选择应用菜单栏下方的账号菜单,然后选择导入预售账号。

注意:Mist钱包仍在开发中,以上列出的具体步骤可能会随着更新有所变更。

使用geth

如果你单独安装get,导入预售钱包可以通过在终端执行以下操作完成:

1
geth wallet import /path/to/my/presale-wallet.json

会提示你输入密码。


更新账号

 

你可以把钥匙文件更新到最新的钥匙文件格式并且/或者升级钥匙文件密码。

使用geth

你可以在命令行用更新子命令更新现在的账号,可以使用账号地址或者索引作为参数。记住账号索引反映了创建顺序(按字母顺序排列的钥匙文件名包含了创建时间)。

1
geth account update b0047c606f3af7392e073ed13253f8f4710b08b6

或者

1
geth account update 2

例如:

1
2
3
4
5
6
7
8
9
10
$ geth account update a94f5374fce5edbc8e2a8697c15331677e6ebf0b

Unlocking account a94f5374fce5edbc8e2a8697c15331677e6ebf0b | Attempt 1/3
Passphrase:
0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b
account 'a94f5374fce5edbc8e2a8697c15331677e6ebf0b' unlocked.
Please give a new password. Do not forget this password.
Passphrase:
Repeat Passphrase:
0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b

账户以加密的形式储存在最新版本,它会提示你需要一个密码来解锁账户,另一个密码来保存更新的文件。同一个指令还可以用在将弃用格式的账户变成最新版本或者改变账户密码。

对于非交互式使用,密码可以用 —password标志详细说明:

1
geth --password  account update a94f5374fce5edbc8e2a8697c15331677e6ebf0bs

由于只能给出一个密码,所以只能执行格式更新,修改密码只在交互式的情况下才有可能。

注意:账号更新有个副作用就是会引起账号顺序变化。更新成功后,同一钥匙所有之前的格式/版本都会被移除!

 


账号备份和恢复

手动备份/恢复

要从账号发送交易,需要有账号钥匙文件。钥匙文件可以在以太坊节点数据目录的钥匙商店(keystore)子目录下找到。默认数据目录的位置与平台相关:

  • Windows: C:\Users\username\%appdata%\Roaming\Ethereum\keystore
  • Linux: ~/.ethereum/keystore
  • Mac: ~/Library/Ethereum/keystore

要备份钥匙文件(账号),在keystore子目录中复制单独的钥匙文件或复制整个keystore文件夹。

要恢复钥匙文件(账号),将钥匙文件重新复制到keystore子目录,即其原始地址。

导入未加密私钥

导入未加密私钥由geth支持

1
geth account import /path/to/

这个指令从纯文本文件导入未加密私钥并创建新账号和打印地址。钥匙文件被假定包含未加密私钥作为编码到十六进制的标准EC原始字节。账号以加密的形式储存,会提示你输入密码。你需要记住密码用于以后解锁账号。

下面给出一个例子,详细说明数据目录。如果 —datadir标志没有使用,新账户就会被创建在默认数据目录里,例如钥匙文件会被放在数据目录的钥匙文件子目录里。

1
2
3
4
5
6
7
$ geth --datadir /someOtherEthDataDir account import ./key.prv

The new account will be encrypted with a passphrase.
Please enter a passphrase now.
Passphrase:
Repeat Passphrase:
Address: {7f444580bfef4b9bc7e14eb7fb2a029336b07c9d}

对于非交互式使用,密码可以用 —password标志详细说明:

1
geth --password  account import 

注意:因为你可以直接把加密账户复制到另一个以太坊事例中,在节点之间转移账号的时候就不需要这个导入/导出机制了。

警告:当你往已存在节点的keystore里复制钥匙的时候,你习惯的账户顺序可能会改变。因此要保证你不依赖于账户顺序,否则就要进行复核并更新脚本中使用的索引。

你可能感兴趣的:(区块链技术)