主页 > imtoken百科 > 比特币交易流程,带你看一张老图,相当经典的老图

比特币交易流程,带你看一张老图,相当经典的老图

imtoken百科 2023-04-29 07:38:48

看一张老图,挺经典的。理解比特币交易过程可能过于直观和准确。废话不多说,看图吧。

比特币交易过程 带你看一张老图,挺经典的老图

(图片来自比特币挖矿指南。AlecLiu)

比特币交易网络自 2009 年 1 月以来,比特币网络已经平稳运行了 7 年以上,没有专门的维护,并且在此期间没有停机。图为 Bob 从 Alice 那里收到比特币的场景,详细描述了比特币区块链的工作原理,并解释了所涉及的钱包和地址(WalletsandAddresses)、私钥和私钥(PrivateKey)。和公钥)、密码哈希(CryptographicHashes)、随机数(Nonce)等概念。

钱包和地址

1、Bob 和 Alice 在他们的笔记本电脑上有比特币钱包。

2、钱包是一个允许用户访问多个比特币地址的文件。

3、地址是一串字母和数字。

4、每个地址都有自己的比特币余额。

比特币交易流程图

比特币交易过程 带你看一张老图,挺经典的老图

创建一个新地址

5、Bob 创建一个新的比特币地址来接收 Alice 的付款。

私钥和私钥

6、当 Bob 创建一个新地址时,他真正要做的是生成一个由公钥和私钥组成的密钥对。如果一条消息使用公钥(只有你知道)签名,则可以使用相应的私钥(每个人都知道)对其进行验证。 Bob 的新地址代表一个唯一的私钥,对应的公钥存储在他的钱包中。公钥允许每个人验证由公钥签名的消息的有效性。

7、地址可以被认为是一个建行帐号,但它的工作方式略有不同。比特币用户可以随意创建任意数量的地址,并鼓励为每笔新交易创建一个新地址以提高隐私性。只要没人知道 Alice 属于哪个地址,她的匿名性就会受到保护。

提交付款

8、Alice 告诉她的比特币客户,她想向 Bob 的收款地址汇款。

9、Alice 的钱包包含她每个比特币地址的公钥。比特币客户端这次使用 Alice 支付地址的公钥来签署她的交易请求。

比特币交易流程图

比特币交易过程 带你看一张老图,挺经典的老图

10、此时,网络上的任何人都可以使用私钥来验证交易请求是否真的来自合法账户所有者。

验证交易

11、Gary、Garth 和 Glenn 都是比特币矿工。

12、他们的笔记本将过去 10 分钟的交易打包成一个新的交易块。

13、设置农民工笔记本估计密码哈希函数。

14、加密散列函数将数据集转换为特定宽度的字母和数字字符串,称为散列值。源数据的微小变化将完全改变散列的结果。而且基本无法预测初始数据集会形成的具体hash值。

15、为相同的数据创建不同的哈希。比特币使用随机数来实现这一点。随机数是在散列估计之前添加到数据中的随机数。更改此随机数会导致非常不同的哈希值。

16、每个新哈希都包含有关所有先前比特币交易的信息。

比特币交易流程图

比特币交易过程 带你看一张老图,挺经典的老图

17、农民工的笔记本根据前一个区块的哈希值、新的交易区块的哈希值和随机数希腊值估计出新的哈希值。

18、就估计而言,创建一个哈希是微不足道的,但比特币系统需要一个新的哈希来具有特定的格式——它必须以特定的数量从 0 开始。

19、矿工很难预测哪个随机数会从所需的数字 0 开始形成哈希,因此他们被迫创建许多具有不同随机数的哈希,直到他们得到一个有效的哈希。

20、每个区块都包含一个称为 coinbase 的初始交易,该交易将 50 BTC 支付给获胜的矿工(在本例中为矿工 Gary)。 Gray的钱包里生成了一个新地址,里面的余额就是新挖出的比特币数量。

交易验证

21、随着时间的推移,Alice 给 Bob 的汇款会被其他最近的交易掩埋。任何想要更改历史交易细节的人都必须重做 Gary 的工作,然后是下一级矿工的所有工作,因为所有更改都需要完全不同的获胜随机数。这样的操作几乎不可能成功。

注意:仅在比特币发行的第一阶段,coinbase 向获胜矿工支付每块 50 个新币的数量。从 2009 年 1 月 3 日创世区块的创建开始,新比特币的发行已大约每四年减半。 2012 年 11 月 28 日,第二阶段开始,每个区块中包含的新币数量减少到 25 个。这是历史上的第一次减半;预计今年7月11日,挖矿奖励再次减半;直到第 33 次比特币减半,每个区块将从 0.0021 SGD 减半直接减为 0。比特币总数固定在近 2100 万枚。

从里面可以看出,所谓比特币交易,就是将钱从一个比特币钱包转移到另一个比特币钱包,每笔交易都经过数字签名,保证安全。一笔交易一旦发生,就对所有人开放,每笔交易都可以追溯到相应比特币最初被挖出的那一刻。持有比特币并等待它们升值确实是个好主意,但如果有人不交易这些货币,比特币就没有实际意义,请阅读一些提示。

比特币交易流程图

比特币交易过程 带你看一张老图,挺经典的老图

世界上没有货币,只有交易记录

比特币不存在于任何地方,甚至不在硬盘上。如果有人持有比特币,那么虽然他们有一个特定的比特币地址用于比特币的交易过程比特币交易流程图,虽然所谓的货币并不直接存在于这个地址中,但是这个地址就相当于你的建行账户。但是世界上没有可以称为“比特币”的有形物理或数据文件。

有的只是各个地址之间的汇款记录,余额有增有减。所有交易都存储在一个非常大的分类帐文件中,称为“区块链”。如果你想知道一个比特币地址的余额,那么这不是直接存储在比特币地址中的,我们需要在区块链中进行估算。

为什么交易有十分钟的等待时间

由于交易需要矿工验证确认后才会被纳入区块链,所以必须等待矿工挖矿成功。

比特币合约将挖矿完成时间设定为 10 分钟左右。因此,商店可能会等到您的交易块得到确认后再将其发送给您。但也有一些商店不会让你久等。基于您的信任,我相信在交易确认之前,您不会拿同样多的钱去别处消费。但通常这只适用于小额交易。

如果输入和输出的数量不相等怎么办?

由于比特币仅作为交易记录存在,因此您的一个地址中有很多交易。也许简给了爱丽丝 40 个比特币,露西给了 40 个比特币,而夏娃给了 20 个比特币。这些是不同时间的不同交易。它们没有合成到 Alice 的钱包中。有 100 个比特币。货币文件一直作为单独的交易记录存在。

比特币交易流程图

比特币交易过程 带你看一张老图,挺经典的老图

当爱丽丝想要将硬币转移给鲍勃时,她的钱包会找到几笔交易并将它们的金额添加到爱丽丝想要转移的金额中。当然,也有可能当 Alice 想给 Bob 转账时,她找不到几笔交易并将它们添加到转账金额中。可能她想转30个币,但是钱包里没有单笔交易,或者多笔交易的总和就是这个金额。

同时,她不能将一笔交易缩减为小笔交易。就是这样,你不能将一个大交易分成多个小交易,你必须每次都花掉整个交易。不过别怕,系统会把多余的零钱发给她,然后还给你。

然后 Alice 可以将 Jane 发送给 Bob 的两枚硬币发送给 Bob,所以 Jane 是“输入”,Bob 是“输出”,“金额”是 30 个硬币。这时候,爱丽丝真的很想转账。这样,Alice 的钱包将为她的交易手动创建两个输出:给 Bob 30 个硬币,并将剩余的 30 个放入新地址。这是还原的更改。

交易过程是否有任何费用?

交易费用来自各种激励措施的组合。一些钱包允许你自动设置费用。交易中对方未收到且找零不退的部分为手续费。这笔钱最终将流向那些有权保留账户的幸运矿工。目前,许多矿工不收取费用。但是,随着每次成功挖矿,系统奖励给矿工的币不断减少,未来一定会有更多的矿工支付佣金。一直令人惊讶的一件事是,估算矿工费用的过程非常复杂且难以理解。但是之后你根据合约修改比特币交易流程,现在软件可以手动处理矿工费问题了。

你能写一张支票吗?

比特币系统在设计时并未考虑到支票。但是,在0.9 版本的比特币中比特币交易流程图,支付方式略有变化,使整个过程更加方便。 Bitpay 等支付服务提供商还提供基本交易流程不具备的功能,例如提供支票或交易确认页面。

我可以发送少量比特币吗?

比特币理论上可以无限切割。目前比特币的最小单位叫做“中本聪”,相当于0.00000001比特币。