主页 > 下载imtoken钱包 > 通俗易懂的区块链系列——比特币的挖矿机制PoW

通俗易懂的区块链系列——比特币的挖矿机制PoW

下载imtoken钱包 2023-01-18 14:38:46

区块链知识图谱学习序列

比特币的挖矿机制其实就是利用哈希函数实现哈希碰撞的过程,所以在学习本内容之前,请务必了解什么是哈希碰撞,同时也要了解区块的结构信息,这样才能理解更好的理解本文的内容。

比特币挖矿速度计算_比特币挖矿计算的是什么_比特币挖矿真的是在挖矿吗

矿工如何挖矿

比特币挖矿速度计算_比特币挖矿真的是在挖矿吗_比特币挖矿计算的是什么

比特币挖矿真的是在挖矿吗_比特币挖矿速度计算_比特币挖矿计算的是什么

对于比特币系统,目前有超过10000名矿工分布在世界各个角落,共同维护同一条区块链。 虽然矿工们使用不同的机器,在不同的环境中工作,但他们都在做同样的事情。 工作就是不断地计算同一个数学问题。 谁先找到这个数学难题的答案,谁就可以将答案封装到一个新的区块中,并将自己生成的新区块添加到区块链的后端。 同时,为了奖励矿工所做的工作,比特币系统会奖励矿工一定数量的比特币。

那么我们要想理解挖矿的本质,就需要充分理解这个数学问题是什么? .

比特币挖矿速度计算_比特币挖矿真的是在挖矿吗_比特币挖矿计算的是什么

对于所有的数学问题,必然有一个或多个输入值,经过一定的数学函数处理后,会产生一个或多个输出值。 所谓挖矿过程就是矿工不断寻找新的输入值。 在处理相同的数学函数后,它们将输出值与位系统中指定的目标值进行比较。 如果达到目标值,则相当成功地解决了问题。

比特币挖矿速度计算_比特币挖矿真的是在挖矿吗_比特币挖矿计算的是什么

所以挖矿是一个不断重新计算的过程。

接下来,我们就从这三个方面入手来理解这个数学问题。

先看输入

比特币挖矿计算的是什么_比特币挖矿速度计算_比特币挖矿真的是在挖矿吗

比特币挖矿计算的是什么_比特币挖矿真的是在挖矿吗_比特币挖矿速度计算

挖矿算法的输入来自区块中区块头的六部分。 矿工需要不断构建新的区块头来产生不同的输入。 区块头的六部分中,有一部分内容称为Nonce。 在密码学中,Nonce 是一个不会重复的随机数。 在构建新区块的过程中,随机数Nonce会以线性的方式不断增加,即可以从0开始不断累加,这样每一次累加,都会产生不同的区块头,这将产生不同的输入。

然后看数学函数的选择

比特币挖矿速度计算_比特币挖矿计算的是什么_比特币挖矿真的是在挖矿吗

不同的虚拟货币所使用的数学函数可能不同。 比特币使用的数学函数就是我们之前介绍过的哈希函数,准确的说是SHA-256的哈希函数。 因此,在比特币中,每一次挖矿过程都是在矿工生成的新区块头经过SHA-256计算后生成一个哈希值。

比特币挖矿真的是在挖矿吗_比特币挖矿计算的是什么_比特币挖矿速度计算

最后看看输出

比特币挖矿速度计算_比特币挖矿计算的是什么_比特币挖矿真的是在挖矿吗

在比特币系统中,所有矿工都保持相同的目标值。 每个矿工计算出自己的哈希值后比特币挖矿计算的是什么,就可以与目标值进行比较。 如果计算出的哈希值小于目标值,则说明挖矿成功,否则,就像我们刚才说的,通过调整区块头的随机数,重新计算,并与目标值进行比较。

但是,目标值不是永恒的。 大约每两周,目标值会随着全网的算力进行调整。 如果全网算力增加,目标值就会变小,这意味着矿工挖矿的难度越大比特币挖矿计算的是什么,如果全网算力下降,目标值就会变大,也就意味着让矿工更容易挖矿。

比特币挖矿计算的是什么_比特币挖矿速度计算_比特币挖矿真的是在挖矿吗

所以,所谓挖矿,简单来说就是一句话:就是用一个256位的哈希函数,通过调整区块头的输入,如果计算出的哈希值可以小于当前的目标值整个网络,就代表挖矿成功了。 因此,如果能在单位时间内进行多次哈希运算,挖出一个区块的概率显然更高。 可以说,整个挖矿过程就是一个比拼矿机算力的过程。

后续学习

比特币挖矿速度计算_比特币挖矿真的是在挖矿吗_比特币挖矿计算的是什么

了解了比特币的挖矿机制PoW之后,可以继续学习另一种挖矿机制PoS,或者在此基础上学习什么是分叉。

同时,我也建议大家巩固和加深对区块头六部分具体含义的理解。

这些内容会有相应的学习视频。