Hi 游客

更多精彩,请登录!

比特池塘 区块链技术 正文
加密你的钱包会使钱包难以在没有密码的情况下打开(和使用)。 同样,拥有多个钱包备份对防止 Qtum 代币丢失也很重要。0 w% a  [) t1 Z9 ?# [
" s' E) u* S/ w1 C7 r
在继续之前,我想说明以下内容:" V/ m% v+ p1 F6 b6 \; x% D
强烈建议先备份钱包,之后再加密(以防万一)
, ]0 n, ], r! ]) |$ ~) G: h  m加密钱包会改变HD钱包的主私钥(详见下文)确保在加密后不使用旧钱包。
  J# N8 r; ]" c' K( Y* q& w4 }# h如果要复制或移动钱包文件(例如 wallet.dat),请务必先关闭钱包/节点程序(例如qtum-qt)。
9 {! J* d+ I  D. K, ]在加密钱包时,建议使用 -noconnect 选项启动钱包/节点程序(例如qtum-qt)(详见下文)。
! T+ j' }9 {* z, g如果已经加密了钱包,必须要解锁(至少“只是为了 staking”)才能 stake QTUM 代币。
6 a3 w8 {# H) u创造一个完美的(100%保证)安全系统几乎是不可能/不切实际的。因此,执行与安全相关的操作(例如输入密码等)总会存在一些风险。5 r8 P: Y- n5 e/ N# e
和以前一样,本文作如下假设:3 U- h- w) q" q. D) J

3 u& t( a! [! S2 v你正在使用 macOS / OSX 或 Linux(例如 x86_64 / amd64 Ubuntu 16.04)。0 \1 M; @, l0 h: g* i$ E0 ?
* [# t) B. t2 D6 ?
你熟悉使用 Unix shell(例如 bash),Unix 命令和工具(如 tar).windows 用户需要找一下等价的命令(在本文评论里问–或加入 Qtum 社区的 Slack或Reddit)9 x7 x, r. [5 a5 @7 [' m

9 S) f- w! S9 v) W' e本文用的是 qtum-qt GUI 钱包,但你也可以用qtumd钱包(使用qtum-cli命令行工具)。# b; N2 f% D% K% g* [8 m2 ?1 L1 E
$ P6 n8 Q& |& [4 R
安装和启动Qtum钱包0 R% c: Z6 `) ~0 u, Z
- \! Y) q# s9 W+ T
按我之前发布的教程安装并启动 Qtum GUI 钱包。务必下载最新的 Qtum 钱包(例如本文撰写时是 Skynet Release v1.2)。) W4 S; Y& ^: g+ M

: R6 \3 I4 N( o+ e% J注意:没必要下载 Qtum 区块链,因此建议指定以下命令行参数:) g- o% W' e3 i' k/ \) V& g; a

  `+ [5 {* f1 f! k% T7 ]$ bin/qtum-qt -noconnect- q5 j. b" ~# {9 V/ c+ a+ P
" E" i% o7 u& `, B# [% l6 F. B6 u6 p
使用 -noconnect 将阻止 qtum-qt(或qtumd)钱包/节点下载区块链。本文中,我们只在钱包上操作。8 |# u3 p' e4 F
8 `5 W2 G% n/ N. e
即使使用 -noconnect 命令行,钱包也会显示警告,似乎还是要连到 Qtum 网络 - 但实际上并非如此(这个小麻烦作为问题#315的一部分得到修复)。 你可以解除/隐藏警告。
4 k8 \5 K: d4 H+ ]7 Q/ v, ^$ H; E9 U. n
回想一下,钱包文件(默认为 wallet.dat)安装目录(默认)跟操作系统有关:
. N$ r: ?1 ?) o9 b! x- \; |( a! f6 ]! G% e- x
Linux: ~/.qtum% J& c" s, I' r8 n
macOS/OSX: ~/Library/Application Support/Qtum2 T0 o) Z4 I9 j; Z4 K$ L
Windows: %APPDATA%\Qtum
( B$ f9 L, w$ p4 Y0 U7 C
& _$ F9 |" |+ v7 q! Q2 o确保你可以找到 wallet.dat 文件。之后我们处理这个文件。
8 E' v' k- h5 w/ R/ `0 f; ]- z: s& }( L
调试控制台(Debug Console). x7 s5 F3 ^% t- @
6 a8 J  W" ^5 U
qtum-qt GUI 钱包包含一个内置的“调试”控制台,可以用控制台与钱包进行交互(比 GUI 功能多)。使用Debug Console 或多或少等同于使用 bin/qtum-cli 工具(即进行 RPC 调用)。  E) y* H  i- s* W. H

" X# J$ D' `5 H/ ~要访问调试控制台,选择“帮助”菜单栏下的“调试窗口”:
& r  H; }3 N$ \" b; a9 c0 ?
$ o2 i1 k7 F# X. o7 e" m( k2 Q# A- X6 ^, Q' E* s

; P+ L& k6 t3 G) U* U. _2 ~接下来,选择“控制台(Console)”  f! X- @- J3 n! ?1 a

) e4 u( O' b. g
' Z1 O% W  [9 o% t! ?2 O4 o, u% K) m' g, Z$ I5 B4 h3 A+ K3 e- g9 ]$ A$ i7 ~
在提示符处(在底部),可以输入 getwalletinfo 等命令:& ~- l9 @$ T$ {8 q( [2 b
; f6 E; E+ N8 W/ L& `- G
/ i- m+ I0 ^; s0 }" c
7 V/ W( b2 S) X$ m: G2 ]5 ?
按Enter / Return后,会有结果:, b2 Y$ ^8 _% ^$ e0 e) G$ O
& F+ L' O  ^" a
0 q" }' ?9 R$ s  I
1 U& w6 Y! Z( C8 V3 A
可以输入 help 获取所有可用命令的列表。
+ v! M0 z6 `% L4 o+ {, N7 S2 f7 H. S2 P' E% u
HD 钱包0 v" l' X$ ?3 z+ t9 H
4 y2 i: u9 a, u$ u7 }
除非(奇怪地)指定其他方式(使用特殊的命令行选项),否则 Qtum 钱包类型就是HD 钱包。简单来说,这意味着钱包创建的地址是预先确定的。这很有用,因为每次分配新的 Qtum 地址时都不需要备份钱包。默认情况下,钱包预先创建 100 个地址,并根据需要添加更多地址。* c0 N, l* H0 j5 r
7 S" z6 `$ N9 P* Z1 k( j! T; h  p
正如注意事项部分所述,如果加密钱包,它也会更改主私钥 - 这意味着未来(预先确定的)地址(除加密前钱包中的地址)将会改变。
  Q- _) w) G  x6 r6 r- c- b) T- _; I8 M4 p) D
钱包地址转储(dump)到文件中0 Z# }! {: ]4 v* K! b% u
. K7 K' M- t! \" ]) o! a- T
查看预创建的 HD 钱包地址的一种(可选)不安全方式是将钱包中的密钥和地址转储(dump)到文件中。钱包转储文件将包含所有(私)钥及其关联的 Qtum 地址 - 因此,这不推荐在打算保持安全的钱包上执行。. M  k4 q( J/ B# g( I/ ?

! ]/ e, {; z  E! G: B可能你想自定义 -datadir= 命令行参数(而不是 -noconnect)来实现上面这个操作。这会创建一个新钱包(即 wallet.dat 文件)和其他文件、目录等到你自定义的目录下。实现这个操作后,请删除这个临时文件夹。* F7 D* u2 M& U. R( }; \

, G( @% c; _8 G+ ^用调试控制台(前面介绍过)输入:
2 d/ X6 W" C( i& f
. ]6 z/ F5 s* m9 @& X> dumpwallet /tmp/wallet_dump.txt, b9 f& `& N  U; R$ w
4 p1 B& u' K: B2 i; n+ O* d
注意:将 /tmp/wallet_dump.txt(上面)替换为你喜欢的目录/文件名。0 v) G8 {; k, u  f2 E
6 j) u  |7 j, a: b0 g# _+ O+ Y# x
随便打开 /tmp/wallet_dump.txt。可以看到:
- v$ @3 U- t/ w' J: e7 b6 p1 d9 k7 G) E+ h7 Y3 s
# Wallet dump created by Qtum v0.14.2.0-797c365-dirty
1 g7 i  w  o# g4 U3 z* |+ g# * Created on 2017-09-04T22:01:27Z0 C7 ~# y( H" U- r0 {
# * Best block at time of backup was 16752 (9d57d56217fff0ba9fe948189529b6b05eab9634b511b96fad7665f2a6685a83),
6 j: B; P* B4 e1 k; P# mined on 2017-09-04T22:00:32Z
9 [- I- o" `' M) f' ?- X' P! c1 {3 U: ~
# extended private masterkey: xprv9s21ZrQH143K32GwedMSgRTR4dFQeHX27y8QpyzdoUv58e9n4MfJiEwyAvJc974i48GGJMqrhA2tPQyYyr7FrUnh7vwUN3wUo2bUFCuj4w2
, {( `# ~: n, T
1 e5 {% J3 y* WL1Pu11NpYqNcozCYFpojbAff3sCMRoubgSJHN6S8Vc3BD8qaeug5 2017-09-04T21:55:04Z reserve=1 # addr=QLf8eTZwSMEsud9P1gBWUb4HM6u9asTH1o hdkeypath=m/0'/0'/9'
, a1 Q: q) A- v: A! P: i: k( {3 VKwwnFgfhdNEm6ZeNZpf5Q77oBymcT6hgDY9DNaHF3xbM5PdLUQwP 2017-09-04T21:55:04Z label= # addr=QM4SUqLkzoMM5TStmNeWQU18wbqzbNtUDo hdkeypath=m/0'/0'/0'
/ C6 ]; C( _7 S2 H& n" r5 dL5DbkJaPBDMiPApP43fzaHZEdZ1GcQcgwbWJMyygBcf2MsKmSS3Q 2017-09-04T21:55:04Z reserve=1 # addr=QMRdFtfAJ52hC5pL6p1xi6EUJ94C6aYSD2 hdkeypath=m/0'/0'/3'
$ u3 Q& X( x" Z: w! y- h...
+ Z' Z; l7 {- u% L+ e# L+ x
2 @! ]; n( q, T7 G, q. dL48dP3kLACS71g8czia14iJA5beepyYLBWpXgasgfHWbc8pAZZ6y 2017-09-04T21:55:04Z hdmaster=1 # addr=QaXBqRoPcFGfa3cuqYJ6nvAstZioKt2yBx hdkeypath=m  ~( ?4 b' b- O. ~4 z: V

+ v9 Q: G* c% i% q( K...  q# i$ R+ T% K8 g) b2 {2 L5 l5 z

0 g4 J3 r/ A( v  V& g$ C6 BKyeTUmMrMezBLkTeMtjuExUxQ4Sb6KVaznCdNwaCmkwG3qSUrqsf 2017-09-04T21:55:10Z reserve=1 # addr=QZFZfsfim7os3349ydRC7F1FBqCQvmjLic hdkeypath=m/0'/0'/97'; W" {' J9 m# H3 d# t- Z4 F) Y
KxXbhnbzK7Y9SrAoL196NXunUzCBT7arobxadA5UMFLEW9bQS6DQ 2017-09-04T21:55:10Z reserve=1 # addr=Qdh9sZQDd3tqT2emHsvh5Exhgf527iLG2v hdkeypath=m/0'/0'/95'  M0 ~& n* o" |0 O2 N: M
L1g2UcRTm3JyV7DRjqpKGkRbGBhdhgqVZ9GFdRnvRcQBgWt26o4q 2017-09-04T21:55:10Z reserve=1 # addr=QeV4zHE6Vb7sFYhs26R1XNMokQSr3EKpyk hdkeypath=m/0'/0'/96'& W; p- @& X2 h$ b: j' I
L3Sh2JsPZw8dhVFWLCh1rupSPGwtjazUhsxFhfskRRCk4AzvEz8G 2017-09-04T21:55:10Z reserve=1 # addr=QiBpoHSfGwJbtJqRsNFTua7hGaMv8zGbGe hdkeypath=m/0'/0'/100'9 W7 D/ @5 t8 V- v: o: ^" a

0 m' e8 P' U$ [2 V# End of dump
) s* }4 y9 X: \% u3 h) W
1 v  d2 O- Y! @% V2 k4 u# O大概有创建了 101 个地址(即 m/0’/0’/0’ 到 m/0’/0’/100’)再加上hdmaster。
2 z( B2 `8 k- e/ C
- V' }) H4 x; k4 q+ p& O7 y; s备份钱包1 m( ~- J, c1 r+ c6 g
0 l: o# d+ N2 C5 t
希望你找到你的 wallet.dat 文件了(参见前面的部分,找到它的位置)。有两个备份钱包的选择:' G' C. O) |+ c' i3 r
" }$ E6 }6 C& h6 P0 P+ W; J# S
将wallet.dat文件复制到安全位置。
  S: U9 V- c8 ^/ M2 }, i& Z! n+ g- ]& \( }
在调试控制台中运行 backupwallet 命令,将钱包文件写入安全位置。
: d  Q+ Q2 l) W) w9 ]: x" K5 L. Y0 x6 F# S- w9 b5 l3 v
选第一项的话,请确保 Qtum 钱包/节点程序(例如 qtum-qt)未运行。* O* Q1 p6 l1 l) C: V' P
" t, g3 V" _+ Q$ \
选第二项的话,只需在 Debug Console 提示符下输入 backupwallet,获取有关如何使用该命令的帮助(即,它需要 1个 参数来指定目录或带有文件名的路径)。* z, _: L5 }. s! ~( P

4 d& u5 [" X3 v2 B" O确保将钱包备份文件放在安全的位置(例如安全的U盘里等)
, U2 d8 S% h  |/ v- m& J  }6 u! z/ r" V
加密钱包
+ u7 V' Y# t8 \1 _3 v6 Q- p$ M* a; p+ h/ v' E4 ^% z) L
强烈建议在加密钱包之前先备份好钱包。" k( R/ c& l- I; a4 X! t+ {) A
! M: {6 _7 O% E( ?
要加密钱包,请选择“设置”菜单栏下的“加密钱包…”选项:
0 _" V! Z. ~' Q9 z5 `7 c4 j& Y8 v/ @
; Z9 D8 R* F: r1 F( c' p8 _接着,确保输入一个安全密码用来解锁钱包。
" Q7 b( _; ]! k( G& B, q' E0 p0 ^1 J- G6 Q4 K+ y4 ?; F6 m

! b  l1 Q/ r  V: \6 _
' ?" i& H4 t" u阅读并接受警告(是的,请记住密码):
3 q- M# t4 Z1 k* B+ d( I/ E/ B4 e7 P; W- w* |, f

% M/ d+ m; `3 x/ c: V; w3 k. b" R! I- V2 `4 V0 ?' o! f' D
加密完成后,收到另一条消息:
8 f2 _( r3 T2 H1 f( ^' G2 q8 z
& c2 X' B( o" X" X: x2 F% F1 h* c5 Y9 w9 ^

: o# `6 m* T% }$ N单击“确定”,然后关闭钱包/节点程序(如qtum-qt)。9 [; F& R( y/ H, D! N9 @( b

2 \& [( k4 }- a关闭钱包/节点程序后,建议用前面提到的第一项备份钱包(即复制加密的 wallet.dat 文件),然后重启 qtum-qt。9 H0 p) g" P6 f9 Q

' U# k% ]. d5 ]6 `' X解锁钱包! l- h- _6 y! j. J
$ A! J: n* u; w+ M, R
重启加密的 Qtum 钱包后,你会在右下角看到“锁定”图标:
2 K0 u. b0 G+ g0 M; M; L
& [/ w/ E$ q- k) X1 f( v/ T
0 N4 Z; l& a. X. e9 |1 r% Z
7 H- f7 K. T& C  w0 _# |  q% a3 e这意味着(加密)钱包目前已被锁定。你不能用锁定的钱包 staking QTUM 代币。0 F" P. `& z" n+ e; O1 ?
' N) j5 o. y  d0 A' [' @
注意:启动后的一段时间内,钱包可能看起来没有响应。这是正常的。( p0 e0 ]. \& k* C
% j* S  U* o2 r; ]/ S  D+ W
要解锁钱包,请选择“设置”菜单栏下的“解锁钱包…”选项:
* b7 V8 l0 A. p7 m9 i9 {* D: Z# K* A& H( s$ M6 z# K
/ v2 ~" {% C  K" X6 @; V$ X3 A2 i
+ Z9 z# D5 D9 U  b
然后,可以看到欢迎页面:$ O0 F8 z, O; o! D, [: L

. y, s6 i' `) }, M: @* o- D; f% ^2 ~3 F( Y' y

. }$ @% B( `6 O/ n& T5 d  S* m输入加密钱包时设置的密码。还可以选择是否只为 staking 而解锁钱包。如果选择这个选项,则你(或任何访问正在运行的钱包/节点的人)将无法从钱包中转移代币,或执行任何需要访问钱包的操作 - 例如将钱包转储(dump)到文件(在调试控制台中使用 dumpwallet 命令)。 不过,backupwallet 命令仍然有效。0 k+ q! m8 H; Z& P! t& @/ q, l

' Z  c# z9 f) g: e9 M如果仅为 staking 解锁,你会注意到右下角的图标如下所示:
/ w2 W, V1 @- M- R
7 o+ D0 g- D3 |4 \  a4 e' c" |) i6 I2 @; q3 x* Z
6 y% ]8 [0 F) d( T9 k) {9 R
如果不是仅为 staking 解锁,你会看到一个略有不同的图标(和悬停消息):8 b: v: e7 H8 b* F0 M% S$ _0 Q

( R8 m% U, P( G% [8 [4 ~2 H
$ Q* H6 D1 \  J. j% d, u+ O  K) F* L$ S. w1 [; b! T  z- I
如果你刚刚在第一次加密钱包后就解锁钱包,我建议你再进行一次备份。! P' g0 W% U) s6 `0 I1 }; |/ l8 O

& p& m8 z' `$ ]6 m9 G锁定钱包, b8 w" f# Y& ?1 l
9 u5 A9 `  a1 c+ \
要再次锁定钱包(例如,如果想让钱包/节点保持运行而不staking 代币),只需选择“设置”菜单栏下的“锁定钱包…”选项:% B" r  M5 H. J# H' n7 ]% J
9 g+ h! [- O; A6 f. F2 w( v( t4 m
! K* j% b9 c0 n( m
恢复钱包
7 W( b" X# w6 m1 Z& H6 Y. ]2 K( a$ _" t4 m1 {5 [
如果你完全丢失了正在运行的钱包(以及区块链区块数据),可以通过将(先前)备份的钱包文件复制到(跟操作系统有关)数据目录中,然后重启 Qtum 钱包,轻松恢复钱包/node程序(例如qtum-qt)。' _6 C1 x& G+ I  K2 @, h
, @' ?2 V6 D+ r0 H/ p+ I
如果数据目录不见了(比如你换了台新电脑),最简单的是:
, [1 Q. W1 N5 p& X" `" \: g
& }2 ?, e# D) j! g. g; i4 j使用 -noconnect 命令行参数启动 Qtum 钱包/节点程序,以便重新创建数据目录。4 r, k' t, h, c6 W

! X: ]0 U2 p. B, `8 S钱包/节点程序运行后(大约10秒左右),再次关闭它。" z$ O2 y2 A- o  L
. h0 q5 @* F( \  p  W- R
将(跟操作系统有关的)数据目录中创建的 wallet.dat 文件替换为最新的钱包(即 wallet.dat 文件)备份文件。# T/ Y. P& K% w" ]' ]# y
% ?& _2 F& T5 N/ ?
不使用 -noconnect 命令行参数重启 Qtum 钱包/节点程序。- S" O. h/ R* E) I' n

, M8 t, T0 L9 h$ q+ y上面重要的一步是确保钱包文件(即 wallet.dat 文件)在正确的(跟操作系统有关)目录。' n0 E, F; F" R3 d+ @& f, o

8 ~! ^& P# E1 V5 Q7 M2 E 注意:这不是Qtum(Quantum)团队的官方文章。我只是一个粉丝。
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

mark7914 小学生
  • 粉丝

    0

  • 关注

    0

  • 主题

    2