Hi 游客

更多精彩,请登录!

比特池塘 区块链技术 正文
加密你的钱包会使钱包难以在没有密码的情况下打开(和使用)。 同样,拥有多个钱包备份对防止 Qtum 代币丢失也很重要。
0 X, E# v; j5 i* V
! o# ]# l4 {( R; f* `" L+ O+ Y2 A在继续之前,我想说明以下内容:
3 A' G9 f' |5 W强烈建议先备份钱包,之后再加密(以防万一)7 D( H- {0 L% D- `) g3 Y
加密钱包会改变HD钱包的主私钥(详见下文)确保在加密后不使用旧钱包。$ W( E! j0 `9 ], J6 G* i4 G
如果要复制或移动钱包文件(例如 wallet.dat),请务必先关闭钱包/节点程序(例如qtum-qt)。
1 u1 C/ k5 C) M; I4 M) ?在加密钱包时,建议使用 -noconnect 选项启动钱包/节点程序(例如qtum-qt)(详见下文)。
6 s8 m) j2 a2 t8 Y$ k如果已经加密了钱包,必须要解锁(至少“只是为了 staking”)才能 stake QTUM 代币。
: x8 x+ v' `- Q- I8 }( p创造一个完美的(100%保证)安全系统几乎是不可能/不切实际的。因此,执行与安全相关的操作(例如输入密码等)总会存在一些风险。1 U: N0 {& t& Q+ O# }* K
和以前一样,本文作如下假设:
/ x" n# ?1 ^2 U& m0 ^9 R7 n* c, V% t
你正在使用 macOS / OSX 或 Linux(例如 x86_64 / amd64 Ubuntu 16.04)。
1 I+ U0 D+ O; q2 l& v# n
* m5 H; x& M8 R你熟悉使用 Unix shell(例如 bash),Unix 命令和工具(如 tar).windows 用户需要找一下等价的命令(在本文评论里问–或加入 Qtum 社区的 Slack或Reddit)
6 F9 O0 ~$ T0 Z) N' x( D, w4 t4 o; z( J  u: J) d/ R
本文用的是 qtum-qt GUI 钱包,但你也可以用qtumd钱包(使用qtum-cli命令行工具)。3 k, ?, f* z# c9 ^6 V

% ?+ V7 l5 ^) Y" A2 A4 ~, p安装和启动Qtum钱包6 o/ X* `9 Z! X+ `

6 R# y8 A) `' q) L8 U按我之前发布的教程安装并启动 Qtum GUI 钱包。务必下载最新的 Qtum 钱包(例如本文撰写时是 Skynet Release v1.2)。3 }( Z; Q! z3 j0 s+ j* K8 p9 g% a- ~

- D) }4 p& R" J1 F' A$ {注意:没必要下载 Qtum 区块链,因此建议指定以下命令行参数:
# n1 K: j( Z9 X+ ?3 t$ F
; Z4 D3 l. k6 `% `1 K8 b$ bin/qtum-qt -noconnect4 P" Y! Z$ H" R1 O8 {# e/ j3 {# `
$ q& k4 Z' f1 S* r
使用 -noconnect 将阻止 qtum-qt(或qtumd)钱包/节点下载区块链。本文中,我们只在钱包上操作。' y/ _( S! k- ]* m% _& M
. }- E3 D2 u+ _5 q8 p
即使使用 -noconnect 命令行,钱包也会显示警告,似乎还是要连到 Qtum 网络 - 但实际上并非如此(这个小麻烦作为问题#315的一部分得到修复)。 你可以解除/隐藏警告。( g8 t, R2 l" W

( j" [0 a. p4 ]回想一下,钱包文件(默认为 wallet.dat)安装目录(默认)跟操作系统有关:! G8 U. M( H( x$ f; m3 Y% J

1 @$ V6 `3 a" A2 TLinux: ~/.qtum
9 `. e9 U8 x% [/ ~- imacOS/OSX: ~/Library/Application Support/Qtum3 a9 J. m$ ~9 E8 p
Windows: %APPDATA%\Qtum% f7 B; u0 W. z, F

: n5 f4 w% Q) J- y. ~% E% z( t确保你可以找到 wallet.dat 文件。之后我们处理这个文件。
$ N# f" j9 M4 F" X7 k- u' K- o9 k( v8 M$ e
调试控制台(Debug Console)
4 n+ i3 _% O0 ~
! z% V9 p5 y% e& m/ n. a9 _qtum-qt GUI 钱包包含一个内置的“调试”控制台,可以用控制台与钱包进行交互(比 GUI 功能多)。使用Debug Console 或多或少等同于使用 bin/qtum-cli 工具(即进行 RPC 调用)。
' w3 w7 L( ?$ P
; Q7 F0 u' _" W1 h3 J  r0 z: l要访问调试控制台,选择“帮助”菜单栏下的“调试窗口”:
. }& T1 {$ X. B8 ]( i. l2 S6 T8 ^
1 Q% c- \( M8 a0 R6 d: h
- S! m3 @" z4 Q: N  g5 D4 }% _' h! [/ P4 c! `' I- C: n: w
接下来,选择“控制台(Console)”3 A  u. _. ]- ~8 X# a: ~5 E; V
3 b! G4 A2 |9 T

) w4 R8 T. a8 g9 V1 Y) [  q% N( r- _7 V  M& R' c
在提示符处(在底部),可以输入 getwalletinfo 等命令:+ X+ G$ x! t+ C+ j" A- q5 H

+ a/ K9 S# @; N5 q% e
4 F, u8 w4 K, e
* z1 |2 e; g8 `9 z8 n2 T8 v按Enter / Return后,会有结果:
% E+ h0 b, x, e9 |, n+ e) R
9 a  N/ _" h  X' ^9 B3 D; V' _2 u9 }

2 I8 W/ E% e$ C# O! W* s可以输入 help 获取所有可用命令的列表。3 |$ i4 k! z4 G4 n! y
2 F" |. A/ I& C
HD 钱包% c; G5 z/ Q$ L3 F: w0 w

  p' O* z/ V) g: i除非(奇怪地)指定其他方式(使用特殊的命令行选项),否则 Qtum 钱包类型就是HD 钱包。简单来说,这意味着钱包创建的地址是预先确定的。这很有用,因为每次分配新的 Qtum 地址时都不需要备份钱包。默认情况下,钱包预先创建 100 个地址,并根据需要添加更多地址。
& W+ A) v$ _5 r4 _: ~; W4 O# t. z  L- A# \' N/ l
正如注意事项部分所述,如果加密钱包,它也会更改主私钥 - 这意味着未来(预先确定的)地址(除加密前钱包中的地址)将会改变。4 e; J( d) n3 K! W" q! P
, w6 h6 R5 y/ G. B
钱包地址转储(dump)到文件中
3 z$ i2 |8 R0 L& X% T4 x3 _/ p- X  Z& q* T
查看预创建的 HD 钱包地址的一种(可选)不安全方式是将钱包中的密钥和地址转储(dump)到文件中。钱包转储文件将包含所有(私)钥及其关联的 Qtum 地址 - 因此,这不推荐在打算保持安全的钱包上执行。8 _6 x: S7 c) o! V
  a6 M) W) d1 H1 D/ N, c
可能你想自定义 -datadir= 命令行参数(而不是 -noconnect)来实现上面这个操作。这会创建一个新钱包(即 wallet.dat 文件)和其他文件、目录等到你自定义的目录下。实现这个操作后,请删除这个临时文件夹。
1 @+ R5 i$ s. D0 h4 ]
% o8 I; X8 A) X7 v! A* W1 y! x用调试控制台(前面介绍过)输入:; @, M* H/ [: d  d" j
7 `* ]6 U1 g* z( j5 A1 j
> dumpwallet /tmp/wallet_dump.txt
6 c' X+ N; d' M
. b0 G; T" q. n! M注意:将 /tmp/wallet_dump.txt(上面)替换为你喜欢的目录/文件名。0 u" P; L$ X# s, a2 s  B

3 q! O2 c2 K( T) f9 u* m. A& v随便打开 /tmp/wallet_dump.txt。可以看到:
  f0 h3 x! S) Q6 a4 Y1 b% d
( n: r6 h- J' X* e( k* U0 h) X# Wallet dump created by Qtum v0.14.2.0-797c365-dirty2 ~* n6 Q, P, e4 _7 H
# * Created on 2017-09-04T22:01:27Z. H! U3 E, K5 k; z. j) Y
# * Best block at time of backup was 16752 (9d57d56217fff0ba9fe948189529b6b05eab9634b511b96fad7665f2a6685a83),2 {8 o  O- T/ A  ?( f8 d
# mined on 2017-09-04T22:00:32Z
* ]/ R4 H! }+ h0 n0 |
% U# D7 l6 y2 H9 p8 q7 c# extended private masterkey: xprv9s21ZrQH143K32GwedMSgRTR4dFQeHX27y8QpyzdoUv58e9n4MfJiEwyAvJc974i48GGJMqrhA2tPQyYyr7FrUnh7vwUN3wUo2bUFCuj4w2
1 H0 d* ?, j* @7 {3 g* ~
* o1 G" E* r6 H8 k& \: y6 j4 J- UL1Pu11NpYqNcozCYFpojbAff3sCMRoubgSJHN6S8Vc3BD8qaeug5 2017-09-04T21:55:04Z reserve=1 # addr=QLf8eTZwSMEsud9P1gBWUb4HM6u9asTH1o hdkeypath=m/0'/0'/9') I$ I7 C# N3 }% e" ]3 D& ^5 }
KwwnFgfhdNEm6ZeNZpf5Q77oBymcT6hgDY9DNaHF3xbM5PdLUQwP 2017-09-04T21:55:04Z label= # addr=QM4SUqLkzoMM5TStmNeWQU18wbqzbNtUDo hdkeypath=m/0'/0'/0', H1 u3 z( ^3 x! c6 ]; [
L5DbkJaPBDMiPApP43fzaHZEdZ1GcQcgwbWJMyygBcf2MsKmSS3Q 2017-09-04T21:55:04Z reserve=1 # addr=QMRdFtfAJ52hC5pL6p1xi6EUJ94C6aYSD2 hdkeypath=m/0'/0'/3'4 w3 @) P( Q4 l
...
! q5 P+ [6 U) S# {$ t8 w
" z; X- B  L8 _/ LL48dP3kLACS71g8czia14iJA5beepyYLBWpXgasgfHWbc8pAZZ6y 2017-09-04T21:55:04Z hdmaster=1 # addr=QaXBqRoPcFGfa3cuqYJ6nvAstZioKt2yBx hdkeypath=m/ d0 r0 ?6 J9 ?: x+ {% _
. i& R7 J/ W2 K. w7 Q9 |  m
...
0 q6 t3 h" s+ q# K6 ?8 k" H% v. v- Y; ]. x) E3 q) F
KyeTUmMrMezBLkTeMtjuExUxQ4Sb6KVaznCdNwaCmkwG3qSUrqsf 2017-09-04T21:55:10Z reserve=1 # addr=QZFZfsfim7os3349ydRC7F1FBqCQvmjLic hdkeypath=m/0'/0'/97'
9 T6 n# k/ m( `5 r, {8 a3 f8 pKxXbhnbzK7Y9SrAoL196NXunUzCBT7arobxadA5UMFLEW9bQS6DQ 2017-09-04T21:55:10Z reserve=1 # addr=Qdh9sZQDd3tqT2emHsvh5Exhgf527iLG2v hdkeypath=m/0'/0'/95'
% \9 x# f8 [5 ^2 j5 _# v6 BL1g2UcRTm3JyV7DRjqpKGkRbGBhdhgqVZ9GFdRnvRcQBgWt26o4q 2017-09-04T21:55:10Z reserve=1 # addr=QeV4zHE6Vb7sFYhs26R1XNMokQSr3EKpyk hdkeypath=m/0'/0'/96', }9 p- D8 s4 J5 n
L3Sh2JsPZw8dhVFWLCh1rupSPGwtjazUhsxFhfskRRCk4AzvEz8G 2017-09-04T21:55:10Z reserve=1 # addr=QiBpoHSfGwJbtJqRsNFTua7hGaMv8zGbGe hdkeypath=m/0'/0'/100'
5 _' F3 I8 @6 K1 v) N% A. b; q5 {% Q" }" u
# End of dump
& x2 T5 t! |' a+ A) w5 Z" m8 _' [, T( X, E4 r4 K8 P+ K" E. {) H
大概有创建了 101 个地址(即 m/0’/0’/0’ 到 m/0’/0’/100’)再加上hdmaster。
8 T3 P; S8 k' K3 v7 y. S
3 I% b2 q; D  j6 M( o5 P! w备份钱包
5 j" b) ~9 q7 Q# ^) |2 q6 n, [& ^9 P! K( h0 \+ ~7 A: Q6 f/ K
希望你找到你的 wallet.dat 文件了(参见前面的部分,找到它的位置)。有两个备份钱包的选择:
# l' {% g$ J" F; U! K2 \; l/ ~5 o4 V) X4 d/ X
将wallet.dat文件复制到安全位置。
2 J0 I0 a$ a* E3 X. _1 L9 S1 |' i5 [
在调试控制台中运行 backupwallet 命令,将钱包文件写入安全位置。
* r0 g2 w2 C  A3 ]
1 r& U# x) D$ B1 j9 V& G6 E9 R8 V选第一项的话,请确保 Qtum 钱包/节点程序(例如 qtum-qt)未运行。9 I. r1 ~5 d, m* \: U
- i& T$ U$ p6 G- y
选第二项的话,只需在 Debug Console 提示符下输入 backupwallet,获取有关如何使用该命令的帮助(即,它需要 1个 参数来指定目录或带有文件名的路径)。
- V, W# L6 {* R- s
% H& J1 o. w6 B' @* B8 u1 M确保将钱包备份文件放在安全的位置(例如安全的U盘里等)9 G! [. y8 h: x" }4 V* J8 U
1 ?7 M' L: }, u+ v
加密钱包
3 @7 l* G' g+ f, C5 |; L4 E
  ?) n8 i7 l; h: u- c, d强烈建议在加密钱包之前先备份好钱包。
8 U; N; X1 {! |" G  V# D7 G
0 p- D3 \' d$ l! p8 ]" A要加密钱包,请选择“设置”菜单栏下的“加密钱包…”选项:2 V) m( n' L# ]5 ?- @- I
3 F2 x9 M. l. M6 K; E) ]
接着,确保输入一个安全密码用来解锁钱包。- p5 L; a4 j2 ?6 r# ?' K
* b2 q0 U% X# V
6 D& j& O) C) a3 Q& j$ n% l1 E3 m
6 t; ?' U& ]+ K; o
阅读并接受警告(是的,请记住密码):
9 A5 |1 z0 B* C- H* a. d4 B3 b: y; S; L4 {0 }

% S% W( p* w; Q8 d2 B/ V$ K: _+ {( ~" T7 r8 F. H! }
加密完成后,收到另一条消息:
6 D9 r8 ^/ U! n8 K. ~+ v2 o1 F* ^6 q" M- {/ B2 F9 I$ B

' o$ W3 y1 B6 ]* o9 Z" w4 d1 Z% v, K4 y- i
单击“确定”,然后关闭钱包/节点程序(如qtum-qt)。
  I; i! _  _- Z% o: X, q; ]+ k
1 K  p; T$ s' _! p, c* t关闭钱包/节点程序后,建议用前面提到的第一项备份钱包(即复制加密的 wallet.dat 文件),然后重启 qtum-qt。  h! \0 n: C3 {/ \

1 J/ @* o8 ~" u5 v' L) s. q解锁钱包
+ M; H, g  K, M: N/ N
( F5 b3 T0 |$ x7 T重启加密的 Qtum 钱包后,你会在右下角看到“锁定”图标:
8 r! ^) K' q$ A$ i+ J+ ~/ k
; m) A2 E4 _' l4 e) a0 w! c3 Z' @, v& v8 V* X
6 C3 \$ M7 S5 _& i' s
这意味着(加密)钱包目前已被锁定。你不能用锁定的钱包 staking QTUM 代币。
0 V' R. T# `5 f
8 }% ?% V% }9 C; Z. S% w, y注意:启动后的一段时间内,钱包可能看起来没有响应。这是正常的。
- `/ i% n# b$ u9 d: x( A3 v( c
- o+ t) l  ~0 e要解锁钱包,请选择“设置”菜单栏下的“解锁钱包…”选项:; L( y; X# E$ _& D1 h

- i4 m) V, l, @! x9 U* Y% ^7 ]# V( p1 q+ I6 c
% h% W. _2 G' b) _5 Q* d
然后,可以看到欢迎页面:
3 @0 g) V/ ^$ T/ ~7 f: ^" ?7 m/ n6 n% I: m2 H: z

* U' \$ y+ R6 b0 @" W. w3 i
5 t) n, r- \3 D: {输入加密钱包时设置的密码。还可以选择是否只为 staking 而解锁钱包。如果选择这个选项,则你(或任何访问正在运行的钱包/节点的人)将无法从钱包中转移代币,或执行任何需要访问钱包的操作 - 例如将钱包转储(dump)到文件(在调试控制台中使用 dumpwallet 命令)。 不过,backupwallet 命令仍然有效。+ @5 f' `) P- J, y3 j
# j5 I0 u7 u1 K" f# c
如果仅为 staking 解锁,你会注意到右下角的图标如下所示:' ]" |4 S2 d& D6 N! f
% T2 ~- ]# [; k$ y: x

! A, z2 T" X& E8 B; w: ]5 Z3 T  d0 k( v" [6 M/ {
如果不是仅为 staking 解锁,你会看到一个略有不同的图标(和悬停消息):
+ x: E+ Q, h: J/ W2 i, e: c+ ?0 ~# {

! ?) n: ^: n3 g  t8 j6 Z$ g' D! p+ g
2 x* {( Y1 [+ v如果你刚刚在第一次加密钱包后就解锁钱包,我建议你再进行一次备份。
" O2 d" ]' f# {2 y! N0 v6 \* p  ]1 b& _( C! H+ _" C4 C" i/ L. v
锁定钱包
. D3 e" H& ^! X. s) Y; v+ Z
: h$ X, X) x' e要再次锁定钱包(例如,如果想让钱包/节点保持运行而不staking 代币),只需选择“设置”菜单栏下的“锁定钱包…”选项:
2 l, t; u( d: [* w* J8 d+ m7 T
0 v' B2 l, I; N  W5 F1 R. u1 q( C6 ]. g! \4 i3 {) U
恢复钱包9 w7 @# m* J! t+ a( K
  t0 L& Y3 H. V5 a: M
如果你完全丢失了正在运行的钱包(以及区块链区块数据),可以通过将(先前)备份的钱包文件复制到(跟操作系统有关)数据目录中,然后重启 Qtum 钱包,轻松恢复钱包/node程序(例如qtum-qt)。
0 U6 z1 {+ m; D" O2 g9 Q0 j+ v3 x6 g5 D8 P: W' G
如果数据目录不见了(比如你换了台新电脑),最简单的是:! c6 e/ l  A8 I, @# O

- c# h" M. G; b( _9 i- i# R. x" b2 x使用 -noconnect 命令行参数启动 Qtum 钱包/节点程序,以便重新创建数据目录。( E( r+ @* G  P) O' D  j0 M. b

. _$ G! s1 T6 O- G钱包/节点程序运行后(大约10秒左右),再次关闭它。3 ^3 ?( B' E( b
  W! k# t6 `/ z
将(跟操作系统有关的)数据目录中创建的 wallet.dat 文件替换为最新的钱包(即 wallet.dat 文件)备份文件。
! `7 u! e( {' n& G$ ]1 I( `% H; F- l" A7 o& t2 S2 o9 y; B, p. Q
不使用 -noconnect 命令行参数重启 Qtum 钱包/节点程序。
8 n6 A1 h0 p. f# r6 S. Q( J+ h; m: M# L6 t6 C
上面重要的一步是确保钱包文件(即 wallet.dat 文件)在正确的(跟操作系统有关)目录。
( v; t! P% t3 M4 F0 ^6 f( c& `3 K/ S4 b
注意:这不是Qtum(Quantum)团队的官方文章。我只是一个粉丝。
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

mark7914 小学生
  • 粉丝

    0

  • 关注

    0

  • 主题

    2