HASH:一文读懂BTC挖矿难度调整

当我第一次了解比特币挖矿的时候,我认为它很简单,就像坐在家里,做着我想做的事情,而我的电脑会投入工作,在我睡觉的时候赚钱。

但不完全是。事实证明,还有很多原因使得上述情况完全不可能发生。

但为了理解其中的原因,我们首先必须理解挖矿的整个概念,以及它在加密货币方面的意义。

挖矿是什么?

从本质上讲,挖矿就是创建新的区块,用交易记录填充它们,并将它们添加到区块链中,让每个人都能看到,并就特定的货币是如何使用的这件事达成一致。

然而,为了添加一个区块,矿工必须解决一个“加密谜题”,或者用更专业的术语来说,他们必须得到一个有效的块Hash。

我不会讲太多的Hash函数相关的知识,但简单地说,Hash是拿到区块的所有信息,然后把它处理,直到它返回一个与此前内容没有任何关系的随机的字母和数字64位十六进制数。

Arkham推出链上分析的人工智能助手Arkham Oracle:7月18日消息,加密智能分析平台Arkham宣布推出链上分析的个人人工智能助手Arkham Oracle。[2023/7/18 11:02:25]

如果你改变了区块上的任何数据,随机数将会有很大的不同,但如果什么都没有改变,它将总是返回相同的内容。

但是如何知道Hash值是否有效呢?这就是难度目标的由来。目标描述一个阈值,并且要使Hash有效,该值必须小于目标。

你可能会问,如果不能更改交易信息,如何获得不同的Hash值呢?在创建Hash时,区块中还有另一个因素要考虑进去——你可以修改它,它被称为nonce。

Jump Trading过去一周增持MASK、LDO、LEVER和PERP:6月24日消息,据Lookonchain统计,Jump Trading在过去一周积累了MASK、LDO、LEVER和PERP。Jump Trading目前持有:159万枚MASK(615万美元);109万枚LDO(211万美元); 5.09亿枚LEVER(68.6万美元);107万枚PERP(54.5万美元)。[2023/6/24 21:57:42]

资料来源:KhaledSalah

矿工们一直在为了这个数字努力,直到输出的Hash值小于目标值。因为Hash值是随机的,所以目标越低,就越难找到一个有效的Hash值。就像掷骰子一样,掷一个小于3的数字比掷一个小于4的数字更难。

那么你如何确定目标的价值呢?这个问题的答案就是我们今天要讨论的话题:挖矿难度。

什么是挖矿难度?

美国数字商会呼吁国会优先推进加密货币的法律框架:金色财经报道,美国数字商会(Chamber of Digital Commerce)已向国会发出行动呼吁,要求优先推进加密货币的法律框架。该倡导团体要求国会建立一个 \"数字资产和区块链技术委员会\",以制定一套全面的政策方案。该委员会的建议借鉴了德怀特-D-艾森豪威尔总统时代的政策,当时启动了 \"Solarium项目 \"以解决冷战期间的国家安全问题。[2023/5/19 15:12:35]

这是不言自明的,但是挖矿的难度仅仅是指为区块找到一个有效的Hash值有多么困难和耗时。一个更好的问题应该是,为什么挖矿一开始就需要有难度?

区块链的全部意义在于在网络中的多个个体之间建立共识,也就是说在一个真理上达成一致。它们是如何做到这一点的呢?它们取网络中最长的有效链,这取决于向它投入了多少工作,并接受它作为构建的主链。

Tezos和Protocol Labs成为2022万向区块链秋季黑客松赞助商:据官方消息,Tezos和Protocol Labs确认成为2022万向区块链秋季黑客松赞助商。

本次由万向区块链实验室主办的2022万向区块链秋季黑客马拉松以\"一起链未来\"为主题,聚焦低碳环保、Web3.0及数字化转型三大领域。[2022/8/29 12:55:42]

有了这个难度,就可以确保网络的安全性,因为它可以防止欺诈。如果添加区块很容易,那么有人可能会发送欺诈性交易,然后向网络发送垃圾邮件,以创建他们自己的最长链。然而,由于挖矿困难,为了防止垃圾信息,添加块的过程变慢,平均需要10分钟来挖掘一个块。

这里的棘手之处在于,攻击者可以通过寻找增加计算能力的方法轻松绕过这一困难。幸运的是,我们提前想好了,想出了一种方法让系统控制困难。

挖矿难度如何确定?

数据:Bitfinex上以太坊永续合约达1个月低点:金色财经消息,据Glassnode数据显示,当前Bitfinex上的以太坊永续合约(24小时)为8,983,095.43美元,达1个月低点。[2022/7/10 2:03:32]

定期调整难度,以确保总是平均需要10分钟来挖掘一个区块。在每添加2016个区块后,系统会查看创建这些2016个区块所花的时间。正常情况下,需要2周左右,或20160分钟。如果超过两周,难度就会降低,如果不到两周,难度就会增加。难度可以如下确定。

推导出新难度的公式

正如你可以从反比函数中看到的,如果花费的时间超过2周,分数将小于1,新难度将会减少。如果花的时间超过2周,分数就会大于1,新的难度就会增加。

如果难度降低,目标值就会增加,从而更容易找到有效的散列,反之亦然。最大目标值为1,由此可见难度也与目标值成反比。

难度与目标的关系

为了防止突然的变化,难度的增加或减少不能在一次调整中超过4倍。

但回到我们如何想出目标的问题上,我们需要探索影响挖掘区块所需时间的不同因素。

有两件事可能会影响这段时间:

计算能力

网络中个体的数量

计算能力

在比特币的早期,你可能已经能够成功地进行挖矿,就像我过去认为的人们所做的那样——用他们的个人电脑。然而,矿工很快被迫升级。

由于挖矿本质上是一场竞赛,人们竞相首先找到Hash值并获得奖励,那些拥有更强大计算机的人将能够在同一时间内做出更多计算结果,因此获胜的机会也会更高。

升级一开始只是简单的从CPU到显卡的转换,但近年来,升级的幅度要大得多,现在所谓的ASIC(特定应用集成电路)--一种专门为挖矿而设计的器件--已经是能够参与竞争所需的最低限度。

但即便如此,你也不太可能赚到任何东西。目前,你可能需要40年才可以开采一个区块。如果你想赚钱,你可能必须加入一个矿池——矿工们联合起来增加他们获胜的可能性。

考虑到所有这些进步和计算机不断变得越来越快的事实,为了跟上它们并保持10分钟的平均速度,挖矿难度必须补偿这一点。

网络的规模

等等,但我们并不是每两周就有更快的电脑,对吧?虽然计算机的不断改进是需要调整机制的主要原因,但该系统也对网络中的个体数量进行了补偿。

矿工越多,找到一个有效Hash值所花的时间就越少,因为在相同的时间内会进行更多的计算结果。因此,当有更多矿工在场时,困难增加,当矿工更少时,困难减少。

总结

所以回到我们一开始的地方--在今天这个时代,用你的PC挖比特币几乎是不可能的,原因是由于设备升级和网络规模增大所做的补偿,导致挖矿难度不断增加。你的PC根本没有计算能力再跟上其他人的脚步,所以你能够成功挖出一个区块的几率非常非常低。

即使系统的设计是为了降低难度,但很少会这样做。更快、更强大的设备不断被开发出来,同时越来越多的人加入了比特币网络。事实上,自2009年1月比特币诞生到2020年11月,已经有250次难度增加,只有53次难度降低。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

地球链

[0:15ms0-0:923ms