比特币的难度调整机制是其最重要的方面之一,但了解其工作原理可能是一项艰巨的任务。本文利用链上数据来可视化此机制的工作方式,以及它与哈希率、块间隔、事务费用和内存池的关系。阅读本文后,您将更好地了解为什么在某些时候使用比特币可能显得相对缓慢和昂贵,以及比特币如何解决这一问题,以及为什么这一过程对于确保比特币的货币属性如此重要。
比特币供应发行时间表
如果你听说过比特币,你可能听说过它的供应量被严格限制在2100万单位(BTC),这使得它成为一种非常稀缺的资产,从而成为最终的“硬钱”
比特币诞生时,矿工们每建造一个新区块就获得50比特币作为他们工作的报酬。该软件有一个内置规则,即每开采21万个区块(如果区块间隔为10分钟,则大约每4年一次),在一个名为“减半”的活动中,该“区块补贴”将减半。在2012年11月28日结束的第一个“奖励时代”中,1050万BTC被开采——是其最大供应量的一半。在第二个奖励时代,一半的金额(1050万/2=525万)被发行,然后在第三个奖励时代发行一半的金额(525万/2=262.5万),以此类推。经过32次减半后,区块补贴等于比特币中的最小单位(0.00000001 BTC=1 sat),之后不能分割,这意味着区块补贴在此之后完全消失(据信是在2140年,如果区块间隔在其整个存在期间为10分钟)。比特币发行计划的前14个奖励时代如图1所示。
图一:比特币供应发行计划的前14个奖励时代
图一:比特币供应发行计划的前14个奖励时代
图像源
仔细的读者会注意到,在上一段中,我们两次提到,这些减半事件发生的实际日历日期取决于块间隔,我们在这里假设10分钟。为什么在正常的日历时间内,这个供应量发放计划是可预测的,这一点很重要?
相对稳定块段的重要性
让我们考虑一下,如果比特币没有内置的难度调整机制,而只是有一个固定的挖掘难度,它会是什么样子。
如果这个固定的难度设定得相对较高,那么早期开采的成本会非常高,而区块在早期开采的速度会非常缓慢。显然,这对于启动一个新的网络并不理想,可能意味着它一开始就永远不会成功。
另一个极端是,如果将难度设置得相对较低,以激励早期网络参与者加入,那么随着越来越多的矿工加入网络,区块间隔会越来越小,区块进入的速度也会越来越快。它将很快完成整个供应发行计划。如果发生这种情况,比特币网络可能没有足够的时间来开发区块空间市场,而区块空间市场需要充分激励矿商保留采矿区块,以便在区块补贴用完后处理交易并保护网络安全。
综上所述,需要相对稳定的区块间隔来分散比特币的供应发行,这反过来又需要激励矿商在相对较长的引导期内继续加入网络,以及逐步发展一个区块空间市场,在区块补贴奖励用完后能够继续开灯。
为了保证区块间隔在几十年内保持相对稳定,比特币有一个难度调整机制。如图2所示,即使有这种内置的难度机制,它的阻塞间隔也不是很稳定,在它存在的第一年,每个阻塞的平均时间超过10分钟。比特币在2010年7月创下第一个市场价格后,区块区间变得更加稳定,并且在过去五年中一直相对稳定在10分钟以下(图2中橙色线没有结构性的上升或下降趋势)–就像一个魅力。
比特币的难度调整机制
为了开采比特币,矿工们使用高度专业化的计算机基本上猜出一个特定的数字(稍微简化的解释)。当矿商发现网络当前正在寻找的号码时,该矿商就有权在比特币区块链上创建一个新区块,获得区块补贴,选择要包含在该区块中的交易,并收取这些交易的费用。在本文撰写之时,比特币网络上活跃的所有矿工的总容量(哈希率)估计为每秒170 exahash(EH/s),即每秒1700000000000000哈希。
在比特币存在的第一年(2009年),仍然可以在中央处理器(CPU;它基本上是一台计算机的核心芯片,负责处理普通消费类计算机的许多事情,因为网络的散列速率只有每秒几百万次。随着时间的推移,越来越多的计算机加入了网络,并最终通过其图形处理单元(GPU)、计算机中用于图形任务和线性代数的芯片,甚至是为比特币挖掘定制的硬件(ASIC,或专用集成电路),使用了更擅长大量数字运算的芯片。
可以想象,从第一年到现在,网络的散列速率增加了数万亿倍,因此有必要使猜测某个数字变得更加困难,以确保每个大约10分钟的相对稳定的块间隔
在比特币中,“难度”是衡量网络寻找的数字有多难的标准。每2016个区块(如果区块间隔为10分钟,则为14天),比特币软件基本上会计算该期间的区块间隔,并调整难度,以便在当前容量下,平均区块间隔再次约为10分钟。
图3显示了过去三个月比特币的难度(14天移动平均值)散列率和块间隔之间的相互作用。在第一个可视化的难度调整期(左边的红色列)内,散列率呈下降趋势(黑线中的下降趋势)。随着网络容量的减少,阻塞间隔增加(蓝线呈上升趋势),因此有必要降低难度(在此期间之后橙色线略有下降)。
在之后的三个难度调整阶段(图3中的第一个绿色栏),hashrate再次增加,blocks的速度比计划的要快,难度向上调整了三次。2021年4月中旬(右红色栏),中国发生了一次大停电,导致比特币的哈希率大幅下降,区块速度大幅放缓,这一时期过后需要进行巨大的下行难度调整。在这件事发生后(右绿色栏),停电本身就解决了,向下的难度调整使矿工们更容易再次创造区块。因此,一些硬件效率较低和/或能源成本较高的矿商可能再次通过采矿赚取利润,实际上过度补偿了之前散列率的损失,实际上将其推至历史新高。
图3:比特币的难度调整(橙色)和散列率(黑色)和块间隔(蓝色)的14天移动平均值
图像源
最新的散列率下降和恢复是一个很好的例子,说明为什么矿工离开网络不会产生更多矿工离开网络的连锁效应(有时被批评者称为“采矿死亡螺旋”),但该软件只是增加了剩余矿工的利润率,激励其他矿工(重新)加入网络。
交易费用
我们都感觉到这种机制的一个副作用是它对交易费用的影响。当散列率增加并且块比计划的要快时(图4中的绿色列),事务可以相对容易地包含在块中。因为这意味着排队的交易(在比特币中称为“mempool”)将更少地包含在即将到来的区块中,所以交易费用可能相对较低。
在散列率下降和块间隔增加的时期,情况正好相反(图4中的红色列)。当数据块缓慢进入时,等待被包含的交易队列就会变得拥挤,人们需要抬高交易费用才能基本上跳线。因此,当网络容量降低(散列率下降)并等待下一次难度调整时,交易费用会激增。
图4:比特币散列率(黑色)、中间块间隔(蓝色)和中间交易费用(橙色)的14天移动平均值
图像源
在本节中,我们讨论了包含在块中的事务的费用。对于那些希望在比特币网络上进行交易的人来说,更重要的是要了解,那些仍在排队等待被纳入未来区块的所有交易中,有多少是在竞购他们所需的区块空间。
内存池
如上所述,比特币mempool可以解释为在网络上广播但仍在排队等待包含在未来块中的所有交易的总和。从技术上讲,网络上数千个比特币节点中的每一个都有自己的mempool,但由于它们大多互联良好,因此将它们可视化为一个单一的等待队列就可以用于一般的解释目的。
Mempool.space是一个行业标准的网站,任何人只要不运行自己的节点或只是想快速查看Mempool中的所有相关数据,就可以访问它。例如,等待队列的总大小(mempool size)、加入队列的事务数(传入事务)、块是否比预期的快或慢(估计的难度调整)以及需要将新事务的事务费估计为低、中、低,或高优先级。
图5显示了过去三个月的内存池。如您所料,图4中描述的模式也可以在这里看到。2021年2月下旬至4月上旬,比特币网络的哈希率增加,创建的块数超过计划,mempool大小(等待队列的大小)减少,交易费用相应减少。在4月中旬散列率下降后,mempool迅速增加,交易费用猛增,但在4月30日难度调整后,两者都迅速下降,随后散列率增长至历史最高水平。
图5:根据mempool.space的比特币mempool
图像源
未来区块空间市场
正如本文前面简要提到的,比特币的区块补贴旨在随着时间的推移而衰减,而发展一个健康的区块空间市场,交易费用成为矿商的主要收入来源,这对于激励矿商继续处理交易和确保网络的长期安全至关重要。
这可能是未来等待比特币的最重要测试,也是我之前在比特币杂志上发表的题为《比特币四年周期的颂歌和即将到来的讣告》的文章的主题,这是一篇推荐的后续阅读。最后,如果您对本文讨论的主题有任何疑问,请随时在Twitter上给我发消息。
免责声明:本文仅用于教育和娱乐目的,不应作为投资建议。
这是一篇客座文章。表达的意见完全是他们自己的,不一定反映BTC,Inc.或比特币杂志的意见。