如果你想给朋友汇款,在传统银行系统中,你可能会使用银行应用或网站来转账,银行会在幕后处理一切。然而,你可以在没有银行等中央机构的情况下发送比特币。比特币交易过程确保交易是合法、安全和透明的。以下是比特币交易概述:
我们将比特币定义为数字签名的链条。每个持有人通过对前一个交易的哈希和下一个持有人公钥进行数字签名,并将这些添加到硬币末尾来将比特币转让给下一个持有人。收款人可以通过验证签名来验证所有权链。
-- 中本聪,比特币白皮书
比特币本身并不存在。没有实体比特币,比特币持有人也没有“账户”。相反,有一个“区块链”,你可以将其视为一个账本,记录了所有比特币地址之间的交易。这些交易记录由比特币网络参与者(节点)更新,并在每个节点之间共享,以显示余额的增加和减少。如果你想查看任何给定比特币地址的历史记录及当前余额,可以使用区块浏览器。
要发送比特币,你必须能够访问与要发送的比特币数量相关的公钥和私钥。当我们谈论某人“拥有”比特币时,实际上是指那个人拥有一个由以下组成的“密钥对”:
公钥,也称为比特币地址,是随机生成的字母和数字序列,类似于电子邮件地址或社交媒体用户名。顾名思义,它们是公开的,因此安全地分享给他人。事实上,当你想让别人给你发送比特币时,你必须提供你的比特币地址。私钥是另一串随机生成的字母和数字。然而,私钥就像 电子邮件或其他账户的密码,必须保密。绝不要与任何你不完全信任的人分享你的私钥,以免被盗。
可以将你的比特币地址视为一个透明的保险箱。其他人可以看到里面有什么,但只有持有私钥的人才能解锁保险箱以访问其中的资金。
虽然可以单独处理硬币,但为每一分钱进行单独交易是很不方便的。为了允许价值分割和组合,交易包含多个输入和输出。通常会有来自较大先前交易的单个输入或结合较小金额的多个输入,最多两个输出:一个用于付款,另一个返回找零(如果有的话)给发送者。
--中本聪,比特币白皮书
让我们通过查看实际交易来解析比特币白皮书的这一部分:
马克想要发送1 BTC给杰西卡。为此,他使用他的私钥“签署”一条包含交易细节的消息。这个消息必须被广播到网络,并将包含以下内容:
这可能看起来很复杂,但这样做是为了提高效率--好消息是,了解比特币交易的幕后细节并不是发送或接收比特币的必要条件。你的比特币钱包会处理这些!
在上述例子中,马克(通过他的钱包软件)会将他提议的交易广播到比特币网络。网络中一个被称为“矿工”的特殊群体会验证马克的密钥是否能够访问他声称控制的输入(即地址)。矿工还会将大约同时广播到网络的其他交易列表收集在一起并形成一个区块。任何完成“工作量证明”的矿工都可以提议一个新块,并通过引用最后一个块将其添加或“附加”到链上。然后,该新块被广播到网络。如果其他网络参与者(节点)同意这是一个有效块(即它包含的交易符合协议的所有规则,并且正确引用了前一个块),他们会将其传递出去。最终,另一个矿工会在其上构建,通过引用它作为前一个块来提议下一个块。任何在前一个块中的交易现在将被下一个矿工“确认”。随着块被添加到链中,马克交易的确认数量增加。
每个块只能包含一定数量的交易,这个数量主要由每个块的可用空间或“块大小”决定,块大小为1MB。有限的空间引发了费用市场,矿工收取费用,只选择包含那些支付足够高费用的交易。因此更高的费用作为激励让矿工优先处理你的交易。
请注意,块大小是一个任意限制,但比特币社区选择将块大小保持尽可能小,以便让人们更容易操作比特币节点。比特币现金是比特币的一个分叉,拥有更大的块大小,因此交易费用更低。
了解更多:了解比特币网络如何决定像块大小这样的关键问题。
发送比特币的费用可能从几美分到100美元不等。费用差异大的原因是比特币费用取决于供需(即某个时间点网络的拥堵情况)和交 易的“大小”。大小主要受输入影响,因此如果你的交易有很多输入,它会占用更多的块空间,需要更高的费用。例如,如果你想发送10 BTC,很可能你的交易需要比发送1 BTC更多的输入。10 BTC的交易可能由5+2+1+1+1组成(总共5个输入),而1 BTC的交易可能只有两个输入,如我们之前的马克/杰西卡例子。
包括Bitcoin.com钱包在内的许多钱包允许用户手动设置交易费用。这有助于你避免支付过高费用。例如,如果你不急于交易,你可以将费用设置得较低,以便在网络不太拥堵时被矿工处理。你也可以通过增加费用来确保你的交易立即被处理。
了解更多:了解比特币发送的细节。
探索购买、出售和交易加密货币的顶级平台