比特币交易往来于电子比特币钱包之间,并通过数字签名来实现安全。对于期待价格上涨的投机者,持有比特币是不错的选择,但该货币的全部意义在于消费,对吧? 那么,在消费比特币时,交易是如何运作的呢?
没有比特币,只有比特币交易记录
关于比特币的有趣之处在于: 它们不存在于任何地方,包括硬盘。我们经常谈到有人持有比特币,但当你观察一个特定的比特币地址时,里面没有数字化比特币,就像你在银行账户里持有英镑或美元一样。你不能对着任何一个物体,甚至一个数字文件,然后说“这是比特币”。
相反,只存在不同地址之间的交易记录,且余额会不断变化。所有发生的交易都储存在一个巨大的公共账本上,叫做区块链。如果你想计算出任何比特币地址的余额,信息不会存储在那个地址上,你必须通过查看区块链来进行重建。
交易是什么样子的?
如果Alice将比特币转送给Bob,该笔交易将包含3条信息:
输入。记录了Alice最开始是从哪个比特币地址得到的比特币 (她从朋友Eve那里收到了这些比特币)。
数量。这是Alice送给Bob的比特币的数量。
输出。这是Bob的比特币地址。
如何转送?
转送比特币需要两样东西: 比特币地址和私钥。比特币地址是随机生成的,是一个字母和数字的序列。私钥是另一组字母和数字的序列,但与比特币地址不同,是保密的。
将比特币地址想象成一个带玻璃门的保险箱。每个人都知道里面有什么,但只有私钥才能把它打开,把东西拿出来或放进去。
如果Alice想要将比特币转送给Bob,她使用私钥与输入写下包含输入、数量和输出的信息。然后她将这些信息从比特币钱包从发送到更大的比特币网络里。比特币挖矿人员可以在网络中核实这笔交易,将其放入一个交易区块,并最终解决。
为什么有时候必须要等待交易完成?
因为你的交易必须经过挖矿人员的核实,所以有时必须等他们完成挖矿。比特币协议设置的是每个区块需要大约十分钟进行挖矿。
一些商家可能会在区块确认前让你等待,这意味着你可能需要一杯咖啡的时间,然后才可以下载数字产品或利用付费服务。
另一方面,一些商家不会让你等到交易确认。他们实际上是假设你不会在交易确认前尝试在其他地方花费同样的比特币。这种情况经常发生在低价值交易中,欺诈风险相对不大。
如果输入和输出数量不匹配怎么办?
因为比特币只存在于交易记录中,因此,一个特定的比特币地址可能绑定了许多不同的交易。也许Jane送给Alice两个比特币,Philip送给Alice三个比特币,而Eve送给她一个比特币,所有这些都是不同时间独立的交易。
他们不会在Alice的钱包里自动合成为包含6个比特币的一个文件。他们只是作为不同的交易记录存在。
当Alice想要将比特币发送给Bob时,她的钱包将尝试使用包含不同数量比特币的交易记录,直到总数等于她想转送给Bob的数量。
如果Alice只想送给Bob1.5个比特币,她的比特币地址中没有包含相同数量的交易,也无法将不同交易加总至相同数量。Alice不能将一笔交易分成多笔小额交易。只可以花费整笔交易,而不能将其拆分。
她只能将其中一笔进账转出,多余的比特币将作为零钱退回其账户。
Alice把她从Jane那里得到的两个比特币送给了Bob。Jane是输入,而Bob是输出。但数量为1.5个 比特币,即Alice想要转出的金额。因此,她的钱包自动为这笔交易创建了两个输出:1.5 个比特币到Bob, 0.5个比特币 到钱包为Alice创建的一个新地址,用来储存从Bob处退回的零钱。
有交易费用吗?
有时会有,但不是所有时候。
交易费用是通过各种因素计算出的。有些钱包让你手动设置交易费用。没有被接收方接收或者退回的零钱都算费用。这些费用随后将流入解开交易区块的挖矿人员作为额外奖励。
目前,许多挖矿人员都是免费处理交易。但随着比特币的区块奖励减少,免费将变的不太可能。
过去交易费用的一个缺点是计算过程非常复杂晦涩。 对处理比特币交易核心软件的升级将会改变交易费用的处理方式。
可以拿到收据吗?
比特币并不包含收据。然而版本0.9会作出一些变化,改变支付方式,使其更加简便和成熟。
像BitPay这样的支付处理器同时提供了一些本地比特币交易通常没有的高级功能,比如收据和订单确认网页。
能否只转送部分比特币?
比特币是可分的。“satoshi”是比特币的百万分之一单位,可以在比特币网络上一次性最少转送5430 个satoshis。■