Grin钱包使用教程 : 如何在没有地址的情况下发送区块链交易
945坏男人
发表于 2022-12-20 06:15:07
1477
0
0
本文就是Grin钱包的具体使用教程,包括初始化钱包、发送交易、接收交易、完成交易、查看余额、查看交易日志、取消交易、钱包检查、通过助记词恢复钱包等操作。/ v8 H& _4 f, @7 j' b5 Y
先决条件
此教程,假设你已下载并安装了Grin软件,并且正在运行同步节点。有关如何执行此操作的说明,请参见如何运行GRIN节点页面。; z8 c" N7 P% S5 I% Z, m2 |
初始化钱包
在使用Grin钱包之前,必须对其进行初始化。此过程将初始化钱包的数据库,并为你创建私密主种子文件。
要执行此操作,请运行:
grin wallet init9 Z8 N o' I$ N
然后系统会提示你输入密码。此密码将用于加密主种子文件,每次使用钱包时你都需要提供此密码。/ m2 f; b/ J4 l0 e0 g7 t! a
File /home/yeastplume/.grin/grin-wallet.toml configured and created' u" L- q' Q4 Z0 p" `
Please enter a password for your new wallet$ K- j& U6 }. P2 x I
Password:
Confirm Password:) ?) O* b/ I+ H. l, p
完成此操作后,系统将生成你的钱包种子文件,并为你提供一串24个单词的恢复短语(助记词),如果丢失种子文件或忘记密码,你可使用该短语恢复钱包。用笔和纸把这些助记词写下来,并将其放置在安全的地方,因为任何掌握这一短语的人都可以控制你所有的资金:8 h9 A U7 f' Z8 i' C
20190105 17:36:35.814 WARN grin_wallet::types - Generating wallet seed file at: /home/yeastplume/.grin/wallet_data/wallet.seed
Your recovery phrase is:
foster approve pen ancient engage bomb fantasy life short stuff mesh bus design truck oyster ankle shallow torch double melody town century nice report8 y1 i$ l% `& C, L1 `4 A
Please back-up these words in a non-digital format.
Command 'init' completed successfully/ O" F* C- l: x* g3 V( `3 N
你的钱包种子文件位于.grin/wallet_data/wallet.seed。请确保将此文件备份到安全的地方,并确保它仍然是私密的。6 Q4 {: W' E6 Q/ U3 ~' z! K
你的钱包配置文件位于.grin/grin-wallet.toml。通过编辑此文件,可更改默认节点地址、默认侦听器端口和更多选项。有关这些选项的更多信息,请参见下文。3 ?/ \& P4 ]4 z" j- H3 J
连接到一个节点
你的钱包必须总是有一个运转的Grin节点来通信。节点应是完全同步的。
目前开发社区建议大家运行自己的节点。有关如何执行此操作的说明,请参见如何运行GRIN节点页面。
默认情况下,钱包会尝试与本地计算机上运行的节点通信。而要和另一个节点通信,你可以在命令行上指定–api_server_address(或者简写为-r),例如:& h+ t' M# {$ e: q# E. e
grin wallet -r http://some_public_node.org:3413 info( ^" Y, t0 H! D, w; A0 m
或者你可以编辑grin-wallet.toml 中的 check_node_api_http_addr值。2 q3 q; E* t0 V% f
查看钱包资金
想要查看钱包中的信息,请使用info命令:
# grin wallet info
Password:
____ Wallet Summary Info - Account 'default' as of height 13833 ____
Total | 60.4820000004 j& y/ {2 y' J3 O9 b8 q' W, M9 ]
Immature Coinbase (" v5 r n3 x' _0 l) y4 F0 M9 c
Total是你的钱包总金额,包括等待确认的资金;
Immature Coinbase 表示在可使用前,尚未成熟的任何CoinBase交易(即获胜区块);
Awaiting Confirmation(等待确认)是指钱包在给定数量的确认之前,其不会花费余额。默认为10个区块。
Locked by previous transaction是由前一笔发送交易锁定的输出,它们不能包含在后续交易中。当交易确认时,这些信息通常会消失。3 u5 B& v4 S1 Z7 A! W5 W
发送Grin币) U6 A/ F7 u* E7 ~
有很多不同的方法可以将grin币发送到另一个钱包:
通过文件进行发送6 Q! A& ?. z/ x4 J
目前建议初学者通过文件发送 Grin币。教程如下:
创建一个交易文件:5 g1 ]- i, i& P! ?& @
grin wallet send -m file -d my_grin_transaction.tx 10.25 J0 O" {: L, e' x
这将在当前目录中创建一个名为my_grin_transaction.tx的交易文件。
将这个交易文件发送给收件人% h8 B; Y+ v5 B; y4 L1 s; i
通过任何方式(电子邮件、ftp)将此文件发送给目标收件人。收件人必须在其钱包中履行其交易操作,并将相应文件发回给你。请参见下面的接收交易教程。
完成交易7 I h" o( f' W H" l( N
收件人将向你发送一个交易相应文件。在与收件人确认他们处理了你的发送文件之后,你可以完成这笔交易,并将其发送到区块链上:
grin wallet finalize -i my_grin_transaction.tx.response2 M5 A; H) j. J" U I
这个操作会将交易广播给grin侦听节点,在几个区块时间后,你的钱包和收件人的钱包余额就会得到确认。# g. j% o- Z' Y9 Q
发送到正在运行的钱包侦听器: ~2 F, C7 `/ ~. p, m
如果收件人正在运行一个HTTP侦听器,你可以将钱包中的金额发送到他们的钱包中,并通过一个步骤将交易过账到链上:
grin wallet send -d http://10.20.20.1:3415 10.258 Q8 w/ }1 z; {* \
如果成功,在几个区块时间后,交易双方的钱包余额就会得到确认。) D" H' u! i" v& \
接收Grin币8 q3 T8 L$ W1 r
通过文件进行接收
发送方将向你发送一个交易文件(如上所述),你必须通过接收命令将其导入钱包:; K2 t6 h5 ?& P/ g
grin wallet receive -i my_grin_transaction.tx1 n2 Z4 l! w8 [
这个操作会创建一个名为my_grin_transaction.tx.response的响应文件,然后你必须将该文件发送回发件人,以完成这笔交易,然后将交易过账到链上。
通过钱包侦听器6 f- b# g% r4 S7 ]9 ^$ v2 T# c
运行一个钱包侦听器被认为是一种高级操作,只有那些拥有支持其基础设施且能处理NAT/防火墙、DOS等问题的人,才能执行这种操作,所有这些都远远超出了本指南的范围。8 h" V' T1 p3 G
默认情况下,钱包将只监听本地计算机上的请求。要接受来自其他机器的钱包连接,您可编辑~./grin-wallet.toml,具体如下所示:
Change8 |6 Q+ Z! q( e+ j+ h
api_listen_interface = "127.0.0.1"
to$ m( z6 b. W) ^
api_listen_interface = "0.0.0.0"
或者你希望绑定到任何特定的IP地址。然后,你可以使用以下代码运行一个外部钱包侦听器:
grin wallet listen. m: _- g* s% S Q6 X
或者,你可以传入-e (外部)钱包参数来监听0.0.0.0:( z( w& E) P7 [6 |1 d5 A/ o- e- @; n
grin wallet -e listen
你还可以更改grin-wallet.toml中的监听端口或通过命令行(有关详细信息,请参阅grin wallet help listen)。一旦你的侦听器在运行,任何想给你发送Grin币的发送方都可以按照上面描述的方法进行。
交易日志! F- B }8 U0 a w- V
Grin钱包会保存所有交易操作的日志。它跟踪所有已完成和未完成的交易,以及与每笔交易相关联的输出。此日志对于查看Grin的来源,以及取消可能尚未完成的部分交易都非常有用。5 U! H+ R# M- y% m: y4 m+ D* S
查看交易日志的方法如下:
grin wallet txs
Transaction Log - Account 'default' - Block Height: 13830
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Id Type Shared Transaction Id Creation Time Confirmed? Confirmation Time Num. Num. Amount Amount Fee Net Tx
Inputs Outputs Credited Debited Difference Data
====================================================================================================================================================================================================================. k3 I3 K% L. z3 B7 }
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
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: Z9 e; d0 b& L# r! X, b
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.grintx4 D, \+ k# `4 T! S' w2 }4 a* f
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
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+ X% q# u% a0 K- c+ Z5 N7 f
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
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
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
而要查看交易的完整详细信息,以及与之关联的输出,请使用-i 参数:! h$ V1 F' q# b
grin wallet txs -i 3
Transaction Log - Account 'default' - Block Height: 13830' j M1 ^. {0 a4 C/ i% v
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------$ N5 `% p5 M: g& S) G8 @
Id Type Shared Transaction Id Creation Time Confirmed? Confirmation Time Num. Num. Amount Amount Fee Net Tx% C' ~2 f# G$ W8 m
Inputs Outputs Credited Debited Difference Data3 U* E( n( C' ~: F# {( p" R
==============================================================================================================================================================================================================4 F! v- q# G$ \9 z- A4 l
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$ D g& I- Z2 k& {, O# M& S
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------( k/ E) W( K7 `0 {: p, r
Wallet Outputs - Account 'default' - Block Height: 13830( M/ G1 j* {; ?, @2 P1 { h/ h
----------------------------------------------------------------------------------------------------------------------------------------------------
Output Commitment Block Height Locked Until Status Coinbase? # Confirms Value Tx
====================================================================================================================================================3 j* }2 M0 [3 I3 L( A
08ad4948a215e22e37f7909c7e36460afa5e38d6696361b0a27b983b38e78540c5 6742 0 Spent false 7089 19997.984000000 3& C6 d; R6 ^+ I& W" B
----------------------------------------------------------------------------------------------------------------------------------------------------
取消交易
当使用Grin时,创建出无效交易是非常可能的,特别是在使用基于文件或完全异步的交易方法时。6 Z; @+ L' |2 z; U7 w6 f
如果你的日志中有一笔未确认的交易,但你认为该交易不会完成,则可使用以下方式取消这笔交易:
grin wallet cancel -i 3/ T J1 T2 h3 h
这会将交易的状态设置为“已取消”,删除任何未确认的更改输出,并解锁以前被交易锁定的任何输出,使得它们可再次被使用。请注意,如果你或其他人在取消交易后完成交易,你的输出仍可能会被浪费,并且无法供你的钱包使用。或者,如果你在新交易中使用相同的输出,并且有人试图完成已取消的输出,则发布的交易将会失败。
钱包检查- g& {' v! E* b( T
由于cancel命令中列出的所有可能性以及分叉的可能性,你的钱包很可能最终处于不一致的状态。因此,Grin提供了一个手动检查命令,以扫描链的utxo集合中属于你的钱包的任何输出,并确保它们与本地钱包数据库处于一致状态。( c# l) E" J' _" k# q
重要的是要记住,钱包的状态总是可通过钱包的种子文件或恢复短语从链中重建。如果你的钱包余额或输出出现异常或意外情况,请确保它们安全地位于utxo集合中(只要它们尚未用完),并且始终可通过check或restore操作进行恢复。* ]8 e( O' e/ d& x; ]: v
想要检查你的钱包并确保其内容与链上的版本相匹配,请确保你没有未完成的交易,并确保节点是最新的,然后:0 Q" ^6 z- X% w
grin wallet check
这将扫描区块链,并取消所有等待中的交易,解锁所有锁定的输出,恢复所有丢失的输出,并确保钱包的内容与区块链的版本一致。你可以随时运行此命令来检查和更新钱包的内容。1 c; s, q' C% h0 N
通过恢复短语(助记词)恢复钱包6 g$ Y0 ?! i# b) J. m
备份现有的钱包:: Q6 ]( P4 t e; K( }$ [
mv ~/.grin/wallet_data ~/.grin/wallet_data_bak
然后:( H/ V! U% u4 h+ g8 Q0 Y5 M
grin wallet init -r
[... follow onscreen instructions...]% L- f4 T8 `/ q* y+ ?
grin wallet restore
有关详细信息,请参阅《用户指南》中的“restore”操作。
其他命令
其他重要命令以及本文中提到的所有命令的详细信息,你可以在详细的钱包用户指南中找到。建议你仔细阅读该指南,以了解钱包的可能用途。
你应该特别注意的一些命令是:
recover - 从种子短语中恢复钱包种子,或查看现有的恢复短语;
restore - 从种子文件中恢复空钱包
以上内容,就是关于Grin钱包的使用方法了,可以说是非常麻烦了,希望之后能有所改进。
成为第一个吐槽的人