Hi 游客

更多精彩,请登录!

比特池塘 区块链技术 正文
匿名币Grin(古灵,名字源于哈利波特的古灵阁)在币圈刮起一阵自来水宣传风暴之后,我们仍需要面对一个现实:由于Grin抛弃了地址的概念,这使得它的交易操作比BTC等传统密码货币要更复杂。那这种密码货币是如何在没有地址的情况下完成交易的呢?: R9 Z: G; l3 S1 H
本文就是Grin钱包的具体使用教程,包括初始化钱包、发送交易、接收交易、完成交易、查看余额、查看交易日志、取消交易、钱包检查、通过助记词恢复钱包等操作。% k' I% Y! Y3 G$ Z
先决条件% k' S2 Y& h  ]+ X- _( A/ ]5 ^
此教程,假设你已下载并安装了Grin软件,并且正在运行同步节点。有关如何执行此操作的说明,请参见如何运行GRIN节点页面。3 R! B# z; ~/ F+ J/ e$ `# u8 `
初始化钱包# q: b! P' r( j1 c3 n' i4 o
在使用Grin钱包之前,必须对其进行初始化。此过程将初始化钱包的数据库,并为你创建私密主种子文件。
0 ]: c" [, j" t$ G' ~& g9 O要执行此操作,请运行:$ ~0 \. u0 g, y& t
grin wallet init
8 k6 p: G/ r3 s. D然后系统会提示你输入密码。此密码将用于加密主种子文件,每次使用钱包时你都需要提供此密码。) z) w: c; w2 k# z1 d6 \
File /home/yeastplume/.grin/grin-wallet.toml configured and created: M; D8 h; v6 {8 b3 Q. J
Please enter a password for your new wallet
1 n" \! @* F2 LPassword:4 b; V* d5 p5 D3 W( Z
Confirm Password:- _* @# `8 Z. g; o" S
完成此操作后,系统将生成你的钱包种子文件,并为你提供一串24个单词的恢复短语(助记词),如果丢失种子文件或忘记密码,你可使用该短语恢复钱包。用笔和纸把这些助记词写下来,并将其放置在安全的地方,因为任何掌握这一短语的人都可以控制你所有的资金:9 O' {9 I- h! e4 d+ ]
20190105 17:36:35.814 WARN grin_wallet::types - Generating wallet seed file at: /home/yeastplume/.grin/wallet_data/wallet.seed- C2 L% o* ?+ {( L8 g8 w
Your recovery phrase is:
& ^" U  u+ {' ]2 ^foster approve pen ancient engage bomb fantasy life short stuff mesh bus design truck oyster ankle shallow torch double melody town century nice report; ?( ~% p8 Q5 C( k
Please back-up these words in a non-digital format.
0 ~$ ~, w! G% @) Z) b3 b4 ZCommand 'init' completed successfully- b+ m2 ~# p6 t. `& {; r$ f5 j
你的钱包种子文件位于.grin/wallet_data/wallet.seed。请确保将此文件备份到安全的地方,并确保它仍然是私密的。6 h% L1 ^, ?1 N* e3 @
你的钱包配置文件位于.grin/grin-wallet.toml。通过编辑此文件,可更改默认节点地址、默认侦听器端口和更多选项。有关这些选项的更多信息,请参见下文。* K2 S7 S( h4 [
连接到一个节点2 Y6 _$ v6 U5 a" b9 ?: ^
你的钱包必须总是有一个运转的Grin节点来通信。节点应是完全同步的。+ a& q* ]8 T) D2 n
目前开发社区建议大家运行自己的节点。有关如何执行此操作的说明,请参见如何运行GRIN节点页面。
3 A6 ?& o, X  C0 R默认情况下,钱包会尝试与本地计算机上运行的节点通信。而要和另一个节点通信,你可以在命令行上指定–api_server_address(或者简写为-r),例如:1 R) G' ^" Z, V( }0 Q0 v" O
grin wallet -r http://some_public_node.org:3413 info
& s" x- N+ ?9 Y1 k$ J1 G或者你可以编辑grin-wallet.toml 中的 check_node_api_http_addr值。$ ^+ U/ h4 v0 Y  g
查看钱包资金
6 u* g- M/ r/ z; X: u$ \想要查看钱包中的信息,请使用info命令:3 i" S. r$ a- P  p( M
# grin wallet info
4 z/ E: t6 w! S% ^' }Password:$ |- A+ S5 w0 [
____ Wallet Summary Info - Account 'default' as of height 13833 ____
% |% k% ^3 H8 Z5 b) a) I. }3 vTotal | 60.482000000
- d1 T7 j; Q( EImmature Coinbase (
7 x/ ]1 v, x& r: S7 n: CTotal是你的钱包总金额,包括等待确认的资金;
' A/ V* o; S& H' zImmature Coinbase 表示在可使用前,尚未成熟的任何CoinBase交易(即获胜区块);
! W: e( T+ y# y0 I! A% x1 T8 XAwaiting Confirmation(等待确认)是指钱包在给定数量的确认之前,其不会花费余额。默认为10个区块。; r% o& ~3 ^: V5 T
Locked by previous transaction是由前一笔发送交易锁定的输出,它们不能包含在后续交易中。当交易确认时,这些信息通常会消失。) p7 I6 J# K( R& K& X! S
发送Grin币9 J) A/ O# @) k" i0 t3 |: h7 i
有很多不同的方法可以将grin币发送到另一个钱包:2 P: y+ b$ h' v# f
通过文件进行发送. P/ y2 w. Y9 n) b+ V
目前建议初学者通过文件发送 Grin币。教程如下:: `. u7 e& P# D2 e; }
创建一个交易文件:% A1 W1 p- Q- I2 R- ]
grin wallet send -m file -d my_grin_transaction.tx 10.25
5 g+ w4 I! _" O这将在当前目录中创建一个名为my_grin_transaction.tx的交易文件。6 q) |* Y  l! J0 \5 l; X
将这个交易文件发送给收件人
. L! i7 Y8 d  D; q8 R' S: s通过任何方式(电子邮件、ftp)将此文件发送给目标收件人。收件人必须在其钱包中履行其交易操作,并将相应文件发回给你。请参见下面的接收交易教程。3 W' e- ^5 D* v6 t
完成交易& ]. L3 k& W8 `# n) u3 t
收件人将向你发送一个交易相应文件。在与收件人确认他们处理了你的发送文件之后,你可以完成这笔交易,并将其发送到区块链上:+ c: z& V" p& y; g/ |% L  I
7 |0 z' @* p0 ?: c% U
grin wallet finalize -i my_grin_transaction.tx.response
; B$ l; [0 Z. g/ N0 C/ v4 P这个操作会将交易广播给grin侦听节点,在几个区块时间后,你的钱包和收件人的钱包余额就会得到确认。
' k# F6 K+ B9 h发送到正在运行的钱包侦听器
! u! U1 H5 T. O4 `2 c7 J  e如果收件人正在运行一个HTTP侦听器,你可以将钱包中的金额发送到他们的钱包中,并通过一个步骤将交易过账到链上:
1 ^9 v$ G4 N0 H* A: ^grin wallet send -d http://10.20.20.1:3415 10.25& y% R6 J- ^! y7 o2 L' `& _6 u
如果成功,在几个区块时间后,交易双方的钱包余额就会得到确认。
" f3 w, L% k: S6 b' r, O- Q接收Grin币8 p0 o6 b; t' s! q* m4 ?. e
通过文件进行接收2 d% M! _7 f+ G' u* B
发送方将向你发送一个交易文件(如上所述),你必须通过接收命令将其导入钱包:
5 s9 y8 G" N" K# X' L# {6 Tgrin wallet receive -i my_grin_transaction.tx, O, \6 y  f% g" x6 }
这个操作会创建一个名为my_grin_transaction.tx.response的响应文件,然后你必须将该文件发送回发件人,以完成这笔交易,然后将交易过账到链上。# {6 Y2 H) Y. p) L( G, Y. V
通过钱包侦听器* Y" h! a# r/ j% y' D+ X
运行一个钱包侦听器被认为是一种高级操作,只有那些拥有支持其基础设施且能处理NAT/防火墙、DOS等问题的人,才能执行这种操作,所有这些都远远超出了本指南的范围。
4 V4 A7 K. c% p' i6 k' N默认情况下,钱包将只监听本地计算机上的请求。要接受来自其他机器的钱包连接,您可编辑~./grin-wallet.toml,具体如下所示:
" @( I4 n2 W( d$ @( L! e6 t" uChange
0 t6 i5 S* [" i7 u4 q
% R5 d* z; m/ w6 s* qapi_listen_interface = "127.0.0.1"3 |( M/ M& u* c' {7 ?* Z
to
7 c) U( _) [5 C- qapi_listen_interface = "0.0.0.0"
2 E7 ?/ m. F& o6 Y5 [3 n或者你希望绑定到任何特定的IP地址。然后,你可以使用以下代码运行一个外部钱包侦听器:+ Y/ k! p' y, X
grin wallet listen
. w. u  T* a5 X6 b+ S/ [- }4 I或者,你可以传入-e (外部)钱包参数来监听0.0.0.0:. |5 h, u. Z* Y) l# k
grin wallet -e listen
3 G9 v% q' p) ]0 F' Y4 n你还可以更改grin-wallet.toml中的监听端口或通过命令行(有关详细信息,请参阅grin wallet help listen)。一旦你的侦听器在运行,任何想给你发送Grin币的发送方都可以按照上面描述的方法进行。
: ~3 n3 O; X# R" k交易日志( u% f- J- V- J5 F$ @. F2 ^, O+ ^
Grin钱包会保存所有交易操作的日志。它跟踪所有已完成和未完成的交易,以及与每笔交易相关联的输出。此日志对于查看Grin的来源,以及取消可能尚未完成的部分交易都非常有用。) ?. b1 P6 k; B& B; t& U
查看交易日志的方法如下:
/ [8 Y# C% k# x  Z8 d2 [/ o0 }1 w" l3 v) k
grin wallet txs
# S1 t' h4 |6 h: p0 V; ?( [Transaction Log - Account 'default' - Block Height: 13830
2 c6 |' P. F$ q) P) H3 j/ G0 A--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------9 u/ h: p8 }" G9 {! V
Id Type Shared Transaction Id Creation Time Confirmed? Confirmation Time Num. Num. Amount Amount Fee Net Tx" M! y( _( q8 j+ e: I6 U+ W6 Q$ D
Inputs Outputs Credited Debited Difference Data! w8 e- V+ X6 _+ b( X3 ]
====================================================================================================================================================================================================================- M- y, |) @: [1 Q, l
0 Received Tx 20f978d4-d2a5-4df2-a1a4-806330db5718 2019-01-02 12:50:33 true 2019-01-02 15:56:23 0 1 20000.0 0.0 None 20000.0 None% p: f, ^; X4 c! N) G9 Y
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------$ p! _5 h8 q. Y9 C# z2 |- p, G* U
1 Sent Tx c2dd4216-7820-4545-bd49-eea8119c39d0 2019-01-02 15:59:20 false None 1 1 19998.992 20000.0 0.008 -1.008 c2dd4216-7820-4545-bd49-eea8119c39d0.grintx
+ Y/ u5 x. I) ~/ _; Z& Z--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------7 @# W6 ]; \- O0 G+ V
2 Sent Tx c8a7b02e-78e1-4813-b8a9-7367b630a070 2019-01-02 15:59:27 false None 1 1 19997.984 19998.992 0.008 -1.008 c8a7b02e-78e1-4813-b8a9-7367b630a070.grintx
" Z* c! m& L3 w; N: @--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
9 s6 y, k* u3 J; |; a+ n; I1 p3 Sent Tx 856c3c85-0cb9-4951-9f33-124f032ac21e 2019-01-02 15:59:31 false None 1 1 19996.976 19997.984 0.008 -1.008 856c3c85-0cb9-4951-9f33-124f032ac21e.grintx
+ B1 S( ^% W( Y- c--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------! O; ^# C. d/ g$ i5 j8 ]
而要查看交易的完整详细信息,以及与之关联的输出,请使用-i 参数:2 n1 W; \4 _/ f& `
grin wallet txs -i 3! z6 D6 `1 v! m1 W) f  W% `* l
Transaction Log - Account 'default' - Block Height: 13830' [% U( g& P: [7 V7 o/ h
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
3 G  I  _5 T8 @! ]2 tId Type Shared Transaction Id Creation Time Confirmed? Confirmation Time Num. Num. Amount Amount Fee Net Tx  M4 \6 E# L7 O; a6 x. V( O8 G
Inputs Outputs Credited Debited Difference Data
8 ]! [$ A% d: R/ O" W==============================================================================================================================================================================================================8 ^) c9 ~4 |$ s$ D6 }' s0 G  v
3 Sent Tx 856c3c85-0cb9-4951-9f33-124f032ac21e 2019-01-02 15:59:31 false None 1 1 19996.976 19997.984 0.008 -1.008 856c3c85-0cb9-4951-9f33-124f032ac21e.grintx
9 }5 A$ f2 D- t--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------# ^* b: E8 A6 {' H! c( k/ W
Wallet Outputs - Account 'default' - Block Height: 13830( J) @' {4 Z" }1 P
----------------------------------------------------------------------------------------------------------------------------------------------------8 S- [* k) f  J  A# c
Output Commitment Block Height Locked Until Status Coinbase? # Confirms Value Tx+ e, V$ l1 t" J7 S- \* @
====================================================================================================================================================
' }/ ~* I/ }$ u* _5 d08ad4948a215e22e37f7909c7e36460afa5e38d6696361b0a27b983b38e78540c5 6742 0 Spent false 7089 19997.984000000 3
/ Y" T7 r7 G4 C----------------------------------------------------------------------------------------------------------------------------------------------------
; R$ P3 q4 T' S1 h2 e: ]+ ~" e取消交易1 Y0 i1 |* N$ |* B
当使用Grin时,创建出无效交易是非常可能的,特别是在使用基于文件或完全异步的交易方法时。. @' K8 W( }! ^( I
如果你的日志中有一笔未确认的交易,但你认为该交易不会完成,则可使用以下方式取消这笔交易:9 v# [$ ?9 M% f: o, [, R
grin wallet cancel -i 32 f$ a" N, T1 X# E1 k9 f3 ]/ E% p  p- }
这会将交易的状态设置为“已取消”,删除任何未确认的更改输出,并解锁以前被交易锁定的任何输出,使得它们可再次被使用。请注意,如果你或其他人在取消交易后完成交易,你的输出仍可能会被浪费,并且无法供你的钱包使用。或者,如果你在新交易中使用相同的输出,并且有人试图完成已取消的输出,则发布的交易将会失败。+ x; c) u3 E3 D' U
钱包检查
4 ?1 u& U9 s" i" _$ r6 T由于cancel命令中列出的所有可能性以及分叉的可能性,你的钱包很可能最终处于不一致的状态。因此,Grin提供了一个手动检查命令,以扫描链的utxo集合中属于你的钱包的任何输出,并确保它们与本地钱包数据库处于一致状态。
. i+ @: ^- k! ~0 @' [重要的是要记住,钱包的状态总是可通过钱包的种子文件或恢复短语从链中重建。如果你的钱包余额或输出出现异常或意外情况,请确保它们安全地位于utxo集合中(只要它们尚未用完),并且始终可通过check或restore操作进行恢复。
. u) ?& r# Q- u: v想要检查你的钱包并确保其内容与链上的版本相匹配,请确保你没有未完成的交易,并确保节点是最新的,然后:- [: ^; \: I1 W! H5 B! }
grin wallet check
" K! U" w4 C5 p) X这将扫描区块链,并取消所有等待中的交易,解锁所有锁定的输出,恢复所有丢失的输出,并确保钱包的内容与区块链的版本一致。你可以随时运行此命令来检查和更新钱包的内容。
  b* N: f7 M6 f% l通过恢复短语(助记词)恢复钱包! M& [6 H" J  x% N
备份现有的钱包:9 e2 g+ V' L; p3 Y
mv ~/.grin/wallet_data ~/.grin/wallet_data_bak) f$ Y. I4 l/ _! u5 t9 g
然后:1 L# I7 f, v! w9 z# R5 P! D7 \8 t
grin wallet init -r
% R) `. W4 _& G2 F[... follow onscreen instructions...]5 F1 H- y3 I) J4 L2 i
grin wallet restore
2 n+ v* t9 T+ @3 C$ m# [& z有关详细信息,请参阅《用户指南》中的“restore”操作。
! O( M5 I! J. A! b9 Y; I3 h% U4 L其他命令
  _2 m% |! y$ z# n9 f其他重要命令以及本文中提到的所有命令的详细信息,你可以在详细的钱包用户指南中找到。建议你仔细阅读该指南,以了解钱包的可能用途。
9 ?% ]. J5 {) s1 s6 Y你应该特别注意的一些命令是:
* Q  B( l: o2 [# j  P1 jrecover - 从种子短语中恢复钱包种子,或查看现有的恢复短语;2 \3 C8 L- @! O* I! r' }5 @* b
restore - 从种子文件中恢复空钱包
7 H- W% Z% ^' d以上内容,就是关于Grin钱包的使用方法了,可以说是非常麻烦了,希望之后能有所改进。
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

945坏男人 初中生
  • 粉丝

    0

  • 关注

    0

  • 主题

    10