主页 > 苹果版imtoken钱包官网 > 比特币挖矿的过程

比特币挖矿的过程

苹果版imtoken钱包官网 2023-07-19 05:12:16

比特币挖矿科普专辑到此结束。在前两篇文章铺垫之后,相信读者朋友对比特币交易和出块的过程有了一定的了解。那么它们和“挖矿”有什么关系呢?

我们知道,在比特币网络中,有很多挖矿节点和矿工参与创建新的比特币区块。如果多个挖矿节点创建了相同高度的区块,应该判断哪个区块更合法?比特币引入了PoW(Proof of Work)共识机制,通过挖矿来争夺新区块的记账权。谁获得了新区块的记账权,它创建的新区块就是合法的。挖矿的目的是为了赢得记账权,并确认新的区块和交易。那么挖矿节点和矿工如何协同完成挖矿呢?

矿工破解挖矿任务

挖矿节点创建预备区块后,将预备区块的区块头数据发送给矿工。矿工收到挖矿任务后,会增加区块头中的随机数。每次调整时,根据比特币协议,使用 SHA256 算法计算区块头的哈希值。如果区块头的哈希值大于目标哈希,则继续改变随机数,直到区块头的哈希值小于或等于目标哈希(或挖矿节点发现新区块已被其他节点挖出,则放弃原来的挖矿任务,构建新的储备块,重新开始挖矿)。

比特币矿机噪音怎么降低

挖矿节点验证区块并扩展本地区块链

当矿工想办法使准备好的区块头的哈希值小于目标哈希的随机数时,会立即将挖矿结果上报给挖矿节点。挖矿节点收到信息后,立即根据矿工上报的信息对区块进行重组,并对区块进行验证。验证后,挖矿节点将新区块保存到节点本地数据库,并添加到节点本地区块链中。

区块的验证信息包括:

区块头是否合法(区块头哈希≤TargetHash);区块头的MerkleRoot哈希与区块内交易数据的MerkleRoot哈希是否一致(验证交易是否被篡改);交易数据中的第一笔交易是否为 Coinbase 交易;区块中的每笔交易是否合法等

比特币矿机噪音怎么降低

将新区块广播到全网

挖矿节点在本地保存新区块后比特币矿机噪音怎么降低,将挖矿结果同步广播到比特币网络。由于整个块的块大小较大,一般先广播新块的块头。其他节点收到广播后,首先会验证区块头信息。验证通过后,节点会首先在其本地区块索引库中创建新区块的索引。节点收到新区块的所有信息后,验证交易信息和区块头的 MerkleRoot 哈希。验证通过后,节点将交易信息记录到新区块中,并扩展本地区块链。至此,新区块的广播和验证完成,挖矿节点开始下一个区块的挖矿。

当前挖矿的一些特点

比特币矿机噪音怎么降低

集群挖矿-矿池:

比特币挖矿这件事,理论上任何人都可以自己搭建比特币挖矿节点,参与挖矿,甚至可以手动验证区块头哈希,破解挖矿任务,争夺记账权。

但博主在上一篇文章中提到,按照目前的挖矿难度,即使使用目前主流的矿机,理论上也需要42年才能找到一个符合比特币网络要求的新区块。 ,而如果使用普通PC或人工计算,则需要数万年甚至数百万年。

因此,普通矿工单次挖矿的经济效益太低,机器可能一分钱都报废。矿池就是在这种情况下应运而生的。大量矿工将自己的矿机接入矿池,从矿池的挖矿节点获取挖矿任务,集体挖矿。这样就可以在比较短的时间内挖出新的区块,获得区块奖励。矿池根据每个矿工在挖矿过程中的贡献分配挖矿收益。所有矿工都可以实时获得挖矿收益并收回成本。或二次投资。

比特币矿机噪音怎么降低

矿工实际收到的挖矿任务中,TargetHash远大于比特币网络所需的TargetHash:

矿池和矿工的挖矿过程同上。矿机通过网络与矿池通信,请求挖矿任务。矿池将挖矿任务(包括区块头数据)发送给矿机。矿机改变区块头的随机数,验证区块哈希。满足挖矿任务TargetHash要求的随机数会按照挖矿协议的格式提交给矿池,矿池根据矿机提交的挖矿结果计算收益。

需要注意的是,如果在发给矿工的挖矿任务中TargetHash是此时比特币网络的TargetHash,那么TargetHash太小,矿工几乎不可能随机找到符合要求的号码。如果提交挖矿结果,是无法获得挖矿收益的。

因此,矿池下发给矿机的挖矿任务中有一条单独的信息:初始挖矿难度。这是一个远低于全网挖矿难度的值,对应的 TargetHash 更大。在这个难度下,矿工可以在较短的时间内找到满足要求的随机数,向矿池提交更多的挖矿结果。

比特币矿机噪音怎么降低

矿池算力与矿机本地算力不同:

说到挖矿,总有一个词绕不开:算力。算力究竟是什么?

哈希率实际上是矿工验证区块头哈希值的速度。矿工获得挖矿任务后,会根据挖矿任务的信息递增区块头的随机数。每次调整随机数时,都会验证区块头的哈希值。可以看出,限制矿工挖矿速度的唯一因素是它验证区块头哈希值的速度,所以有一个“算力”的指标。

目前常规比特币矿机的算力单位是TH/s,也就是说每秒可以验证1T个哈希,1T=1×10^3G=1×10^6M =1×10^9K =1×10^12 次。

有挖矿经验的朋友会发现,矿机本地显示的算力和矿池显示的算力总是存在差异的。这是因为矿机本地显示的算力是矿机验证哈希的速度。只与矿机性能有关。无论是否找到满足挖矿任务要求的随机数,矿机的本地算力始终存在。矿池中的矿机显示的算力不同。由矿池根据矿机提交的实际挖矿结果计算得出。如果无法向矿池提交所需的随机数比特币矿机噪音怎么降低,则会降低矿池中的矿机算力。

但时间延长后,运气对矿机破解挖矿任务的影响会降低。