Hi 游客

更多精彩,请登录!

比特池塘 区块链技术 正文
加密你的钱包会使钱包难以在没有密码的情况下打开(和使用)。 同样,拥有多个钱包备份对防止 Qtum 代币丢失也很重要。
& u. G5 ?& t8 A2 u# @7 q
0 a7 p2 }& X. g8 p7 \- k在继续之前,我想说明以下内容:% r0 w6 s/ L  M4 g
强烈建议先备份钱包,之后再加密(以防万一)  ^- {- X/ l4 z7 O9 }0 F
加密钱包会改变HD钱包的主私钥(详见下文)确保在加密后不使用旧钱包。
! a& @- _4 V; A) o  H# C如果要复制或移动钱包文件(例如 wallet.dat),请务必先关闭钱包/节点程序(例如qtum-qt)。
! Z. A) r/ l6 |3 y6 G$ N在加密钱包时,建议使用 -noconnect 选项启动钱包/节点程序(例如qtum-qt)(详见下文)。
& q0 t: W, Q( p- d* d* i如果已经加密了钱包,必须要解锁(至少“只是为了 staking”)才能 stake QTUM 代币。
, K7 v& R4 @+ d9 J/ }创造一个完美的(100%保证)安全系统几乎是不可能/不切实际的。因此,执行与安全相关的操作(例如输入密码等)总会存在一些风险。
/ c9 ~" m: S- ]$ \! d和以前一样,本文作如下假设:  U0 E6 ?, Q& Y! @4 `

. {+ E; V: @, `$ x2 I你正在使用 macOS / OSX 或 Linux(例如 x86_64 / amd64 Ubuntu 16.04)。4 {0 [) p5 B* }/ g) S. \) ?; |9 M
3 l: h: x7 `+ r% I! s, B
你熟悉使用 Unix shell(例如 bash),Unix 命令和工具(如 tar).windows 用户需要找一下等价的命令(在本文评论里问–或加入 Qtum 社区的 Slack或Reddit)
( U$ \% D: G3 l5 h% z! ^8 z% S5 [, S5 l! l4 ]! |
本文用的是 qtum-qt GUI 钱包,但你也可以用qtumd钱包(使用qtum-cli命令行工具)。8 B1 U& s3 W2 u2 \2 H# f

' \. c2 l% F: u6 k) s+ Z; Z# N6 A( l- o安装和启动Qtum钱包9 e( h4 w$ W% [& ~! ]
, @1 N, r! G! Q$ X) o
按我之前发布的教程安装并启动 Qtum GUI 钱包。务必下载最新的 Qtum 钱包(例如本文撰写时是 Skynet Release v1.2)。
0 k$ O6 y% V# b4 F, D6 W( d. u& M
- I, R# X9 x3 j! A4 w# _注意:没必要下载 Qtum 区块链,因此建议指定以下命令行参数:
# u9 G% Y$ L  |: X+ w" C. {
' @: Q3 {7 F- l5 |+ J& J6 ?; h$ bin/qtum-qt -noconnect( o. A7 e* \- f. l! U

* x- z, S1 W1 ^$ U1 b" [使用 -noconnect 将阻止 qtum-qt(或qtumd)钱包/节点下载区块链。本文中,我们只在钱包上操作。- I9 o0 x( \9 d8 S1 Y( T- Y

: e! [9 E, A# w) d/ S即使使用 -noconnect 命令行,钱包也会显示警告,似乎还是要连到 Qtum 网络 - 但实际上并非如此(这个小麻烦作为问题#315的一部分得到修复)。 你可以解除/隐藏警告。7 L$ c2 X4 \* H- F7 m; z( V
3 O7 Q/ }8 a8 `
回想一下,钱包文件(默认为 wallet.dat)安装目录(默认)跟操作系统有关:
1 R) B& _0 U* J) M$ d3 \6 y0 ~& ^1 f( A) ~
Linux: ~/.qtum; H8 r/ V! W% b3 D) `
macOS/OSX: ~/Library/Application Support/Qtum
% W- V+ Y4 G* v, h, F( MWindows: %APPDATA%\Qtum" T9 B: P3 F! u5 l) x1 S" E

3 H5 T6 b2 ~0 I  }0 o9 [3 O* \  w9 g确保你可以找到 wallet.dat 文件。之后我们处理这个文件。
/ `- g6 q: o& T/ r( C5 k/ j
& [: C/ N" m% `9 t4 @+ D& O) Y调试控制台(Debug Console)8 i2 q6 H' e+ r4 p

$ L* a. i: {. q, C' _7 }% ~: hqtum-qt GUI 钱包包含一个内置的“调试”控制台,可以用控制台与钱包进行交互(比 GUI 功能多)。使用Debug Console 或多或少等同于使用 bin/qtum-cli 工具(即进行 RPC 调用)。+ D* Q" ?; ]0 H+ q3 _# G

7 |) j; ?1 m9 b, _8 y; W# K  Y要访问调试控制台,选择“帮助”菜单栏下的“调试窗口”:
! G( s9 Q! y2 [% b4 v8 I8 y+ |- e1 r9 y2 D/ y, ]( e' g8 s
  s/ q: w5 }6 P% V$ d! U% V2 T; a
: ?! t9 X5 W4 y( v
接下来,选择“控制台(Console)”
; C' d$ [/ j7 Y- ^1 t
7 X8 T7 H3 r% Q* w
9 [5 I$ B! Z7 e3 |8 B; a' o2 J8 t% \/ f; S7 D
在提示符处(在底部),可以输入 getwalletinfo 等命令:
4 d" [, x0 z: s+ j+ w* X3 H* e3 J, H( c7 W! B, x) ^
7 k* m! K. g+ D/ {7 @* g) K8 C

7 C" [, ^) u8 w; ~1 C, ^6 L$ c3 l* ~1 f按Enter / Return后,会有结果:
' i# K6 `2 W# g) A9 L
+ D, }6 _1 ?% {* T7 q3 l6 m4 I/ F) t1 D/ q& ^( n0 f

: c* T# ^1 w) M" ~! \可以输入 help 获取所有可用命令的列表。
/ B; R) ]- Y6 ^
! x3 Q1 Q6 f/ @  m0 \HD 钱包! j, `" E6 |9 ~4 t0 [

+ o# |9 u. [/ Z4 ?! `. }除非(奇怪地)指定其他方式(使用特殊的命令行选项),否则 Qtum 钱包类型就是HD 钱包。简单来说,这意味着钱包创建的地址是预先确定的。这很有用,因为每次分配新的 Qtum 地址时都不需要备份钱包。默认情况下,钱包预先创建 100 个地址,并根据需要添加更多地址。
$ d5 k2 W/ B7 ~7 z, u, c% Z
. }8 n! W; X- O: G7 \+ W正如注意事项部分所述,如果加密钱包,它也会更改主私钥 - 这意味着未来(预先确定的)地址(除加密前钱包中的地址)将会改变。
/ a" ~" n2 S$ i1 {  a4 R/ f2 V- \  V3 J# K  V
钱包地址转储(dump)到文件中
/ l& V# t) x* K. e, D8 h* s: k9 [3 A" J! c! B
查看预创建的 HD 钱包地址的一种(可选)不安全方式是将钱包中的密钥和地址转储(dump)到文件中。钱包转储文件将包含所有(私)钥及其关联的 Qtum 地址 - 因此,这不推荐在打算保持安全的钱包上执行。
' Y9 B2 ^5 b2 x$ `0 }( v1 l5 R/ }. O3 U! I, v
可能你想自定义 -datadir= 命令行参数(而不是 -noconnect)来实现上面这个操作。这会创建一个新钱包(即 wallet.dat 文件)和其他文件、目录等到你自定义的目录下。实现这个操作后,请删除这个临时文件夹。" @" A5 S9 F2 D% Y2 {5 d
4 N; ?5 t1 m6 t
用调试控制台(前面介绍过)输入:: n8 a( X) Q  v! \3 p

$ B- Q7 V7 ]( M: E> dumpwallet /tmp/wallet_dump.txt
4 b5 s! ^. E# K3 x1 l* H, ?
" w: [- ~& e: \- Z注意:将 /tmp/wallet_dump.txt(上面)替换为你喜欢的目录/文件名。; g; ^$ W3 J2 Z9 H( d1 \- b

* m; C" M7 o: ]/ Y' E随便打开 /tmp/wallet_dump.txt。可以看到:
# k3 l. A/ K$ d( k+ o
5 ]+ \+ J( ~  F% H# Wallet dump created by Qtum v0.14.2.0-797c365-dirty
" ~1 l/ p4 ~) e2 l8 G+ l) o1 v# * Created on 2017-09-04T22:01:27Z
/ o$ g: A# p7 y3 N& B# * Best block at time of backup was 16752 (9d57d56217fff0ba9fe948189529b6b05eab9634b511b96fad7665f2a6685a83),
- R3 O, E% C6 p- r# mined on 2017-09-04T22:00:32Z( @( ~- i7 K7 z. x

9 n( C5 s/ K' t# e) X: i4 U6 f# extended private masterkey: xprv9s21ZrQH143K32GwedMSgRTR4dFQeHX27y8QpyzdoUv58e9n4MfJiEwyAvJc974i48GGJMqrhA2tPQyYyr7FrUnh7vwUN3wUo2bUFCuj4w22 t# ]( e, H  Q: o
. w! l" A- L! {2 n& P3 l1 M
L1Pu11NpYqNcozCYFpojbAff3sCMRoubgSJHN6S8Vc3BD8qaeug5 2017-09-04T21:55:04Z reserve=1 # addr=QLf8eTZwSMEsud9P1gBWUb4HM6u9asTH1o hdkeypath=m/0'/0'/9': {* f7 W: k. ^3 E  L' q
KwwnFgfhdNEm6ZeNZpf5Q77oBymcT6hgDY9DNaHF3xbM5PdLUQwP 2017-09-04T21:55:04Z label= # addr=QM4SUqLkzoMM5TStmNeWQU18wbqzbNtUDo hdkeypath=m/0'/0'/0'7 e/ d: S/ J  r8 Q# g7 d( q: D
L5DbkJaPBDMiPApP43fzaHZEdZ1GcQcgwbWJMyygBcf2MsKmSS3Q 2017-09-04T21:55:04Z reserve=1 # addr=QMRdFtfAJ52hC5pL6p1xi6EUJ94C6aYSD2 hdkeypath=m/0'/0'/3'8 k3 B7 l" l' J- x( F7 [' p1 O
...
/ O" Y; F/ T( Q$ l, q0 i) Z7 a4 X+ ~/ n$ o, j+ y
L48dP3kLACS71g8czia14iJA5beepyYLBWpXgasgfHWbc8pAZZ6y 2017-09-04T21:55:04Z hdmaster=1 # addr=QaXBqRoPcFGfa3cuqYJ6nvAstZioKt2yBx hdkeypath=m
3 Z2 i: N' I! |; {) p, I" M5 u. R! y7 h& u" J" a
...
- Q+ n( A* ?( v
2 y' g5 w9 N5 A; {KyeTUmMrMezBLkTeMtjuExUxQ4Sb6KVaznCdNwaCmkwG3qSUrqsf 2017-09-04T21:55:10Z reserve=1 # addr=QZFZfsfim7os3349ydRC7F1FBqCQvmjLic hdkeypath=m/0'/0'/97'; Q3 P7 ^# M" o5 h
KxXbhnbzK7Y9SrAoL196NXunUzCBT7arobxadA5UMFLEW9bQS6DQ 2017-09-04T21:55:10Z reserve=1 # addr=Qdh9sZQDd3tqT2emHsvh5Exhgf527iLG2v hdkeypath=m/0'/0'/95'* C8 C- t5 X5 Z2 X
L1g2UcRTm3JyV7DRjqpKGkRbGBhdhgqVZ9GFdRnvRcQBgWt26o4q 2017-09-04T21:55:10Z reserve=1 # addr=QeV4zHE6Vb7sFYhs26R1XNMokQSr3EKpyk hdkeypath=m/0'/0'/96'3 m5 t' S9 i+ z+ L# ^% w
L3Sh2JsPZw8dhVFWLCh1rupSPGwtjazUhsxFhfskRRCk4AzvEz8G 2017-09-04T21:55:10Z reserve=1 # addr=QiBpoHSfGwJbtJqRsNFTua7hGaMv8zGbGe hdkeypath=m/0'/0'/100'/ m3 H2 r  \+ w$ F

$ P" n  X" D! v! V# End of dump
1 `  h" c# X. m( s( j, M% F7 K8 @8 c
5 l3 t+ e. }8 l- e大概有创建了 101 个地址(即 m/0’/0’/0’ 到 m/0’/0’/100’)再加上hdmaster。4 M% Q! \* U' j2 O0 D( E
/ o. D7 `2 X* T
备份钱包' u$ Z# @/ e; W5 ^- I3 `  n

4 H3 V1 J. X1 v" }& ~# c* O; m  F希望你找到你的 wallet.dat 文件了(参见前面的部分,找到它的位置)。有两个备份钱包的选择:1 p# Q5 ~$ _( p+ ~% D! k' A& M$ ~

+ W8 y- k; _! t将wallet.dat文件复制到安全位置。) c8 c2 c( w2 y6 `1 K& P* o

/ n; Y) I& l+ ~# G0 w, y$ I- [  C在调试控制台中运行 backupwallet 命令,将钱包文件写入安全位置。
7 M% s9 _6 l7 m! X" N8 O6 C6 M! k
) M6 Y8 w' k7 k3 C0 }6 L  X选第一项的话,请确保 Qtum 钱包/节点程序(例如 qtum-qt)未运行。
2 @, R9 P3 v2 ?  S6 a2 e
9 L# N9 N$ I: p8 P- D' Y: o选第二项的话,只需在 Debug Console 提示符下输入 backupwallet,获取有关如何使用该命令的帮助(即,它需要 1个 参数来指定目录或带有文件名的路径)。6 `$ ^0 P5 P8 |% L) V
- x( k/ T0 e$ ]
确保将钱包备份文件放在安全的位置(例如安全的U盘里等)
) \( l2 I/ H% r5 Y/ }( |: r% m
2 F4 h( h( u0 ~4 R加密钱包0 h6 |/ k; x. M3 j7 O' g3 s& ~; [
1 s0 i- o9 Y* |: `3 j- S: z
强烈建议在加密钱包之前先备份好钱包。( e& b- a" [0 ?
/ I$ f5 t+ H2 D3 q$ c% Z* _
要加密钱包,请选择“设置”菜单栏下的“加密钱包…”选项:
  _% X5 H3 I/ D: b: A5 F+ V; W
5 x5 r  u$ k) s2 r" ~接着,确保输入一个安全密码用来解锁钱包。! E! J( y6 @6 F  u. i% e, |5 t
+ o5 ]3 q( O. t. P8 a4 g" r

" T$ ?8 L2 B8 T7 Z& I0 o( J. x# ~0 y1 c3 S" N
阅读并接受警告(是的,请记住密码):* [( t% J* ~5 v, q

9 N. c: [" `/ Q0 b8 D7 ?
/ L+ I2 _: g9 E4 j5 X; [4 W; X" Q
4 e5 M1 d8 B( A2 K加密完成后,收到另一条消息:. U) k' B! ]. P: i

* N' p; l2 w  n* [2 V. q! N3 f3 p* p; M. l
- V7 d5 ~; a9 E, K
单击“确定”,然后关闭钱包/节点程序(如qtum-qt)。
5 e3 q* L9 }2 J0 c/ m* v5 P; `) Z5 \5 A* l. X' F  G
关闭钱包/节点程序后,建议用前面提到的第一项备份钱包(即复制加密的 wallet.dat 文件),然后重启 qtum-qt。8 l3 h& u; L0 t+ F1 z$ e4 _% F  x' |

" o( X; m  v2 H/ A. _- \解锁钱包
/ l- Z2 K' v5 U5 Q
  W  ?8 b* q7 ]' ]( G  K$ O* B' g重启加密的 Qtum 钱包后,你会在右下角看到“锁定”图标:
' R/ ^3 @: r! _8 R# C+ [# m5 U# i; j  i

, a, g9 |  S  ~9 R5 j+ O8 `( J7 |3 N+ t# p3 A
这意味着(加密)钱包目前已被锁定。你不能用锁定的钱包 staking QTUM 代币。
4 _. ^7 C) d+ q% N5 S- j4 t3 ~# n* i, \8 m; V9 ?" ]& Y3 z& `2 l
注意:启动后的一段时间内,钱包可能看起来没有响应。这是正常的。
* D, J: \% l  U; q+ F$ ^; ^  w6 e+ e- Q& B9 ?0 D( J+ L) \# d( b
要解锁钱包,请选择“设置”菜单栏下的“解锁钱包…”选项:
) @1 F$ P: h- ^& z1 G0 w! k! F9 }# \7 b$ L5 Y1 Q% v

4 b' i! _$ E  G3 Q" v( m( H% c3 k' y( _% }( J( o) s5 Y7 z
然后,可以看到欢迎页面:
1 |6 q# E# l" J
+ J8 P8 \, ~3 g7 Y% h7 A  a
8 I$ Y; w: K( z9 I
! N- N, a/ \% c输入加密钱包时设置的密码。还可以选择是否只为 staking 而解锁钱包。如果选择这个选项,则你(或任何访问正在运行的钱包/节点的人)将无法从钱包中转移代币,或执行任何需要访问钱包的操作 - 例如将钱包转储(dump)到文件(在调试控制台中使用 dumpwallet 命令)。 不过,backupwallet 命令仍然有效。
/ z1 X" [4 v# b; W- u# N' w
" b6 ^! }( y4 W如果仅为 staking 解锁,你会注意到右下角的图标如下所示:* ]% p0 m  }4 b7 c0 f$ k3 Q
7 Z. e9 c3 r# e4 B/ [6 G

  J# Y/ O4 g; J8 Q4 C" t* Y. u8 K1 U, t% n6 l: C" X
如果不是仅为 staking 解锁,你会看到一个略有不同的图标(和悬停消息):! z1 I/ Z# K/ B' O8 r) X8 b

7 @1 j- F* S4 P. I/ F' p2 Y
& k9 `! X! U" @$ @% T
& c+ `8 M2 [) O% y  s/ O+ _4 q, }如果你刚刚在第一次加密钱包后就解锁钱包,我建议你再进行一次备份。
# n+ w8 ]- \/ p6 C; C7 B3 V8 t2 {3 T( w) i9 U$ C: P8 e- \- V
锁定钱包  i% P* A! V& T: [2 o2 f7 U
2 j( h- g7 [0 `" B+ P( O
要再次锁定钱包(例如,如果想让钱包/节点保持运行而不staking 代币),只需选择“设置”菜单栏下的“锁定钱包…”选项:
5 L3 `2 X# ^0 F
$ Z. V  ?* T0 z# L$ p# w, M$ a) Q: n" O1 n9 t8 U3 I6 O
恢复钱包9 `2 H# Q, R& g4 j) `- q5 Z

5 s! [5 @: a( [" i6 n  d' ~如果你完全丢失了正在运行的钱包(以及区块链区块数据),可以通过将(先前)备份的钱包文件复制到(跟操作系统有关)数据目录中,然后重启 Qtum 钱包,轻松恢复钱包/node程序(例如qtum-qt)。5 J$ f/ _! h; |# M

! H3 l( k. k  [( p2 X9 T如果数据目录不见了(比如你换了台新电脑),最简单的是:2 N% o  d& G4 `$ d

( R- K5 r  K+ W+ M1 L使用 -noconnect 命令行参数启动 Qtum 钱包/节点程序,以便重新创建数据目录。
! p+ ]  `$ Y% s6 d
7 V) |+ n8 k9 m# U! z钱包/节点程序运行后(大约10秒左右),再次关闭它。9 x- ^4 y- E8 @

5 z$ b% \6 R6 A9 y将(跟操作系统有关的)数据目录中创建的 wallet.dat 文件替换为最新的钱包(即 wallet.dat 文件)备份文件。# g1 Q1 [+ g% w# F

3 j% b6 O0 a( _$ e: C不使用 -noconnect 命令行参数重启 Qtum 钱包/节点程序。) r1 S0 c5 h' b# U1 O

7 _. ]0 `7 D; a3 J$ t7 r上面重要的一步是确保钱包文件(即 wallet.dat 文件)在正确的(跟操作系统有关)目录。
" o3 w) T  R, O) |* C
2 g7 i: E6 Y  B  H# [" z7 n 注意:这不是Qtum(Quantum)团队的官方文章。我只是一个粉丝。
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

mark7914 小学生
  • 粉丝

    0

  • 关注

    0

  • 主题

    2