主页 > 海外版imtoken > 第四条,比特币的原理
第四条,比特币的原理
一、交易查询
每个查询网站都有搜索功能,可以通过地址、交易哈希值或区块号搜索到比特币网络和区块链中对应的等价数据。
2、比特币系统的组成:
1、比特币系统由用户、交易、矿工组成;
1.1 用户:通过密钥控制钱包;
1.2 交易:每笔交易都会广播到整个比特币网络;
1.3 矿工:通过竞争计算在每个节点生成共识区块链。 区块链是一种分布式公共权威分类账,包括比特币网络上发生的所有交易;
3、交易(3种模式):
1 最常见的交易形式是从一个地址到另一个地址的简单付款,通常还包括向付款人“找零”。 一笔典型的交易有一个输入和两个输出。
2 另一种常见的交易形式是将多个输入聚合为一个输出的模式。
2.1 这相当于在现实生活中用很多硬币和纸币换取一张大面额的钞票。
2.2 此类交易有时由钱包应用程序生成,以清除在支付过程中收到的许多小额零钱。
3 比特币账本中一种常见的交易形式是将一个输入分配给多个输出的交易,即与多个接收方的交易。 商业实体有时会使用此类交易来分配资金,例如在向多名员工支付薪水的情况下。
4. 交易构建与输出
1 钱包应用程序知道如何选择合适的输入和输出来建立用户想要的交易(即采用上述交易方式中的哪一种,单次输入还是多次输入);
2 您只需指定目标地址和金额,其余细节将由钱包应用程序在后台自动完成。
3 重要提示:钱包应用程序甚至可以完全离线创建交易。
4 比特币交易在创建和签名时不需要连接到比特币网络。 交易只有在执行时才需要发送到网络。
5 构造交易时,构造交易的输入:
5.1 钱包会检查当前用户单次未消费的输出中是否有足够的手续费来覆盖支出(单次输入); 如果没有,钱包应用程序将寻找当前用户(多次输入)的一些小的未消费支出,类似于:这就像从存钱罐中寻找硬币,直到找到足够的货币来支付您的支出。
5.2 以上两种情况都可能需要找零,这些找零也将成为钱包创建的交易输出的一部分。
6 构建交易的输出:
6.1 交易的输出将以包含此金额的脚本形式创建; 只有引入本脚本的解决方案后才能兑换。 因此,花费者将使用需要当前接收者的签名来包装输出。
6.2 交易还可能包含第二个输出。 改变输出。
6.3 为使本次交易尽快被网络处理,需额外支付交易手续费。
注:交易手续费并未明确包含在交易中,而是隐含在输入输出之间的差额中。
这笔差价会被矿工作为交易手续费放入区块的交易中,最后放入区块链账本中。
5. 将交易记入总账:
1 钱包创建一个一定字节大小的交易,其中包含未来金额所需的所有信息。 然后需要将交易写入比特币区块链。
2 交易的传输:
由于交易包含处理所需的所有信息比特币工作原理及计算过程,因此将交易发送到比特币网络的位置并不重要。
3 交易传播:
3.1 钱包应用程序可以向连接到互联网的任何其他比特币客户端发送新交易;
3.2 当任何一个比特币网络节点(其他客户端)收到一个以前没有见过的有效交易时,它会立即将其转发给连接到自己的其他节点。 结果,交易从 P2P 网络迅速传播比特币工作原理及计算过程,在几秒钟内到达大多数节点。
6. 比特币挖矿:
1 交易在比特币网络上传播。 但是只有在通过称为挖掘的过程验证并添加到块后,交易才会成为共享分类帐(区块链)的一部分。
2 挖矿在比特币系统中扮演两个角色
2.1 挖矿在构建区块时会产生新的比特币,每个区块产生的比特币数量是固定的,并会随着时间的推移逐渐减少。
2.2 挖矿创造信任。 挖矿确保交易在为包含它们的块贡献足够的计算之前不会被确认。
3 POW 工作量证明算法:
是指使用SHA256加密算法,不断对区块头和一个随机数进行哈希运算,直到出现与预设值匹配的解。
4 当这些交易被添加到新区块时,它们会根据交易费用的优先级和其他规则进行排序。
4.1 一旦矿工从网络收到一个新区块,他们就会意识到这个区块的解题竞争已经失败,他们会立即开始挖掘下一个新区块。
4.2 它会立即将一些交易和这个新区块的数字指纹放在一起开始构建下一个新区块,并开始计算它的工作量证明。
5 每个矿工将在他的区块中包含一项特殊交易,将新铸造的比特币(目前每个区块 25 个比特币)支付到他自己的比特币地址。
5.1 因为这个新区块加入了通用区块链,所以他添加的奖励交易也会变成可消费的。
5.2 参与矿池的矿工,通过软件设置,在构建新区块时将奖励地址设置为矿池地址。 然后矿池会根据上一轮贡献的工作量,将奖励分配给参与矿池的矿工。
6 轻量级客户端通过确认一笔交易在区块链中并且后面有几个新区块来确认一笔支付的合法性。 这种方法称为简单支付验证 SPV。
7 全指数客户端可以追踪资金的来源,从比特币第一次在区块中产生的那一刻开始,根据交易之间的关系,直到用户的交易地址。
7. 比特币客户端
1. 比特币交易基于支出“输出”,即前一笔交易的支出,整个交易在地址之间转移所有权。
2. 我们的钱包现在已经收到发送到我们钱包地址的钱(输出)。 一旦解决了,钱就是我们的了。