数字货币的入门秘笈—操作和储存技巧

近来越来越多人有兴趣投资数字货币(Cryptocurrency),这篇文章是去分享一下笔者一路以来对数字货币的操作心得,对象是一些数字货币的初学者,适合一些听过比特币(Bitcoin, BTC)或以太坊(Ethereum,ETH),但不知道该如何操作数字货币的读者阅读。

概要

本文的目的是分享一些有关数字货币的操作技巧和储存技巧,并不会涉及太多区块链的原理,也没有关于数字货币的投资建议。首先会讲述在数字货币中有关钱包的概念,以及如何创建一个钱包。在你成功创建一个钱包后,文章会介绍如何设置一个交易,以及如何验证你的交易已经成功。

下面所介绍的知识主要围绕着比特币以及以太坊而写的,其他数字货币例如瑞波币(Ripple,XRP)虽然操作上有相似的地方,但却不全然相同。由于数字货币的种类太多,难以在一篇文章中包含所有不同数字货币的操作方法,所以未来笔者可能会继续撰写不同的文章来介绍其他币种的操作方式。

数字货币的银包

在进入数字货币的世界之前,你需要有一个银包去保管好你的数字货币。你可以在个人电脑上创建一个数字货币的钱包,在钱包生成之时你会得到一条钱包地址(Wallet Address)和一条私密匙(Private Key)。

例如在MetaMask上生成的地址(Wallet Address)是这样

0x53C80745DBea415f07fFF92506Af6FB0818A03eF

而私密匙(Private Key)是长成这个样子的

lonely mimic inmate kind this vibrant arm humor brick stand exclude love

示范的以太坊钱包

事实上,你的电脑或手机从来没有管有过或储存过任何数字货币。数字货币实际上是储存在区块链之中,你真正储存在你个人电脑上的东西是一条是私密匙(Private Key),透过这条私密匙,你才可以操作储存在区块链上的数字货币。

简单来说,你可以把钱包地址(Wallet Address)想像成为你的银行帐户号码。当有人需要付款给你时,你需要把你的地址分享给付款方。付款方之后就可以透过付款到这条地址来把自己的数字货币传送到你的管理的钱包。这个收款的动作通常会被称为Deposit,亦有人会称它为Receive .

至于私密匙(Private Key)则你可以把它想像成为你的银行帐户密码,需要妥善保管。这是因为你的私密匙是唯一的途径来把你的数字货币传送给其他人。换句话说,要是你的私密匙被黑客取得,那代表他可以将你的数字货币转到他的钱包。另一方面,要是你遗失了私密匙,那你从此再也不可能操作在那个钱包的数字货币,虽然它们没有被偷走,但也从此被冻结,跟遗失了没有分别。这个付款的动作通常会被称为Withdrawal,亦有人会称它为Send .

私密匙(Private Key)的储存方法

现时主要由两大类方式储存这条锁匙,其中一种方式是可以使用一些较为有名的数字货币交易公司例如Binance或者Coinbase。使用这些平台其实等于你放弃私密匙的监管权,并交由平台来替你管理,概念上有点类似使用一些银行的服务,你把你的金钱交由银行替你保管,到你真的需要交易时就使用密码登入到网上银行介面以进行交易。

使用的好处是你只需要牢牢记住登入密码便可以随时操作你的数字货币。此外这些平台的安全性较有保证,例如以上两个较为有名的平台都提供Two-Factor Authentication,在帐户安全性方面有更大的保障。此外,若果你不幸忘记了自己的登入密码,你也可以联络他们的客服去重新获得登入方法。

可是,使用这种方式储存数字货币的弊处是,由于你实际上没有管理私密锁匙的权利,若果有一天这些公司倒闭了,你的数字货币亦很大机会会全数损失。虽说这些公司规模不细,但仍有倒闭的危机,加上现时没有监管机构去监管这些与数字货币相关的服务机构,并没有像世界各地政府都有推行的银行存款保障计划,因此阁下使用时应衡量风险。除此之外,当你想设立交易将数字货币传送到其他钱包时,这些公司会收取一个较为昂贵的手续费。

另一种方式是在个人电脑上设立数字货币的钱包,如在上图所示使用MetaMask创建一个以太坊的钱包。使用这种方式储存锁匙的好处是你实际上拥有操作数字货币的权利,并不像以上的方法中将锁匙的管理权利假手于人。但这样做的风险是你的私密锁匙( Private Key )有机会会被黑客偷取,继而将你的数字货币转走。此外,要是你的电脑突然坏掉,你的数字货币也有机会遗失。

在个人电脑上设立的数字钱包亦有分两大种类:

冷钱包–即离线钱包,这种钱包不会连接网路,因此也降低被黑客入侵的风险。传统上,我们会把私密匙手抄到纸张上,但若果我们遗失这张纸条,那也意味着我们的数字货币也都遗失。因此,现在有公司提供了像Ledger,Trezor等的硬体钱包,让你能把私密匙储存在这些硬体上。

热钱包–这种钱包有意无意都会连接网络。跟要数百甚至上千港元冷钱包对比之下,这种钱包的门槛更低,而且很容易可以创建,通常再细分为浏览器外挂钱包(eg MetaMask)和手机应用程式。可是,因为这种钱包连接着网络,因此风险亦会较高。

如何传送(Transfer)数字货币

以上提到,你需要私密是以操作在区块链上的数字货币,特别是传送或付款(Withdrawal)。若你使用个人电脑创建钱包,由于你的私密匙已经储存在电脑当中,你只需要打开钱包就可以作传送操作。

以下笔者会用MetaMask(以太坊的浏览器外挂钱包)作出一个付款示范:

如上图的MetaMask所示,你需要输入接收方的钱包地址,金额,以及手续费,最后再按确认,那你的钱包就会把你的交易请求发布到内存池(Mempool)上。我们之后会讲解交易费用以及内存池(Mempool)是什么东西。

要紧记接收方的钱包地址是最为重要,因为在数字货币的世界中,主要是依赖钱包地址来辨别接收方的身份。请务必在按确认之前,多检查几次接收方的钱包地址。

为什么要缴付手续费(Transaction Fee)?

几乎绝大部份的数字货币在你设立交易时,都会扣除一小部份的货币作为交易费用。俾如比特币和以太坊(直至现时为止)这些以Proof of Work (PoW)共识算法(Consensus Algorithm)支撑的数字货币,手续费是用以支付一些矿工替你验证交易,将你的交易和其他人的交易组成一个区块并将区块发布到区块链上所需的费用(本文不会讨论太多区块链的原理,有兴趣人士请自行上网寻找)。

那其实意味着,当你给予的手续费越高,就越能吸引矿工替你工作,变相你的交易便能更快完成。因此手续费的多与小跟你要传送的金额没有半点关系,你的钱包会根据现时区块链网路的堵塞状况(Network Congestion)来决定手续费的多与小。试想像一下若现时内存池(Mempool)上有很多交易,那么你就要付出更多的手续费来吸引矿工替你插队把你的交易挖掘到区块链中。

一般而言,现在的钱包会在你所需要传送的金额以外,将所需的手续费另外加上,并不会在你要传送的金额内扣除。若果你在交易中将金额设定为所有(Send Max),钱包软体理应会预先扣除一小部分作为手续费,但需要注意这样的话收款方就未必能收到足够的金额。例如你的钱包内有1.0以太币,那么你选取Send Max时,对方最多只会收到0.99XX的以太币,因有一小部分已被扣除。

若果你使用上述的第一种方法来创建钱包,即是使用一些数字货币交易公司,他们所收取的手续费除了是用来支付矿工之外,有一大部份的费用是平台使用收费,因此会比你使用个人电脑上的钱包所收取的手续费更为昂贵。

什么是内存池(Mempool)?

一般来说,当你在钱包中递交了交易要求,矿工并不会即时替你工作。此时,你的交易状态为未完成(Unconfirmed),这个时候区块链上并不存在你刚提交的交易。虽说这个时侯你的文易在区块链中并不存在,但是你已经能够查询得到你自己的交易,下文会有一部分详细讲述如何查询到仍在内存池的文易。这时你的交易已提交到某一节点的内存池,并且会不断散怖出去到其他节点。视乎你愿意缴交的手续费多与少,手续费越多的话矿工就会越快将你的交易挖掘至区块链中。

什么时候交易才算完成?

以本文围绕着的比特币和以太坊为例,由于这些数字货币背后使用了PoW的共识算法,因此需要等待在区块链上交易所在的区块的后方也有数个区块被加插到区块链中,交易才算是完成。

这个原理被称为Block Confirmations

不同数字货币所需的区块数量也不一样,例如比特币中所需的区块数量一般为六个(由你的交易所在的区块后面开始计算)。但由于在比特币链上生成一个区块所需时间大约为10分钟,为免节省时间,一般数字货币Exchange公司都会在一个区块后便确认交易,因为区块链中出现分叉攻击(Forking Attacking)的机会率也并不是那么高。在以太坊中则需要12至15个区块已确认交易。

由于需要等待Block Confirmations,因此你需要耐心等候交易完成。之所以你经常听听到比特币需要数小时甚至数天才能完成交易也是这个原因。

如何验证交易已经完成?

现时要验证你的交易是十分简单,因为现时网上提供了很多Block Explorer帮助你方便快捷地查询自己的交易。情况有点像你随时可以登入到你的网上银行帐户来查询以往的交易,只不过在数字货币的世界中所有的交易纪录都是公开的,所以你可以使用这类Block Explorer网页来查询以住的交易纪录。你可以使用交易号码(txId),或者是付款方或接收方的钱包地址(Wallet Address)查询交易状况。

Blockchair: https://blockchair.com/

Blockchain.com: https://www.blockchain.com/explorer

BlockCypher: https://live.blockcypher.com/btc/

Etherscan: https://etherscan.io/

以上为一些笔者推荐使用的Block Explorer,前面三款皆支援查询多于一款数字货币,其中以Blockchair为首,支援查询16款不同的数字货币。第四款Etherscan虽然只能查询以太坊的交易状况,但它以能够最大程度上支援以太坊的所有功能作为卖点,例如它能查询到在以太坊上的智能合约。

现时,你甚至可以在Block Explorer中查询到仍然在内存池中的交易。

如上图所示,在Block ID中我们能够看到现在交易仍尚存在于内存池(Mempool)中,已交易状态为(Unconfirmed),这意味着上述的交易仍未有矿工帮忙把它挖掘到区块链中。

上图展示了另一个已经完成的交易,这时在Block ID中我们能够看到内存池以及未确认(Unconfirmed)的字眼已经消失。取而代之的是一个数字(645254,Block Number),代表交易所在的区块中在链上的位置(第645254个区块),以及「6 confirmations」,意指有六个区块紧接在后。

初学者一般会觉得在Block Explorer上展示的比特币交易细节十分难懂。以下笔者亦会略作简介:

比特币的交易细节
以太坊的交易细节

以上第二幅图是在Etherscan上一个以太坊的交易细节,比起比特币的交易细节来说,的确是简单易明得多。那个以太坊上的交易是指由「From」的地址传送了0.00662356以太币到「To」的地址,而中间被收取0.002289以太币作为手续费(红色方格内),这应该十分简单易明吧。相反,以上第一幅图所展示的比特币的交易细节比起第二幅图就抽象得多了。

这是因为比特币的交易采用了UTXO的模式,反之以太坊所采用的是Account模式。

以太坊所采用的Account模式跟我们的银行帐户体制较为类似,因此并不太难理解,每个银包地址都可以想像成为一个帐户,每次交易内容就只会记下传送金额,而每一次交易过后,就会将帐户的余额纪录在区块链当中。

相反,比特币中的UTXO模式看起来就比较复杂。虽然是这样,但是当你知道窍门后,你就会发现比特币的交易也并不是太难理解。首先,在UTXO模式中,交易中包含了Input和Output。若你的观察力够敏锐,你可能会发现到Fee+Output Total(以上第一幅图上面两个红色方格)是等于Input Total,0.0005 BTC + 0.00645736 BTC = 0.00695736 BTC。这是因为在UTXO模式下有一个条件,就是Output跟Input总数要吻合。此外,观察力敏锐的你也可能会发现,在下面的红色大长方格中的传送方(Senders)分别传送了两个交易到两个钱包地址(Receipents),一笔为0.0052 BTC,而另一笔则是为0.00125736 BTC,两笔交易加起来的总和是0.00645736 BTC,相等是Input Total减去Fee后的Output Total。

后记

在不久的将来以太坊(Ethereum,ETH)有机会会把背后的共识算法(Consensus Algorithm)转为Proof of Stake(PoS)。原本以太坊的社群预定2020年1月就会推出使用PoS的以太坊。不过直到现时为止(2020年8月),以太坊仍然在使用PoW的算法。

本文链接地址:https://www.wwsww.cn/jzb/6426.html
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。