主页 > imtoken钱包怎么下载 > 白话区块链介绍085 |比特币如何维持平均10分钟出块

白话区块链介绍085 |比特币如何维持平均10分钟出块

imtoken钱包怎么下载 2023-01-18 12:05:01

白话区块链

从入门到精通,看我就够了!

“白话区块链入门”系列比特币全网难度,即使是零基础的朋友也能轻松上手。刚入门的小伙伴,建议从第一期开始阅读!扫描文末二维码,获取零基础文集。欢迎大家在文末点赞和评论,告诉我们你最想知道的区块链小知识。参与有奖!

作者 |闫文春

制作 |白话区块链(ID:hellobtc)

之前有读者在“”留言区提问:

1、这一次谁先找到问题的答案,谁就做对了。比特币系统的问题是什么样的?

2、随着全网算力的增加,问题的难度系数也随之增加。这是如何实现的?

640?wx_fmt=jpeg

对于第一个问题,白话区块链曾经在文章“”中解释过:

比特币系统给矿工的问题是让矿工找到满足要求的随机数。矿工构建区块并确定区块头中的其他 5 个字段。另一个需要不断试错的变量是随机数。只有符合要求的随机数才能召唤出“龙”。满足要求是指:取整个区块头的哈希值,使得哈希值小于等于难度目标(准确的说是小于目标值Target)。

今天我们主要回答第二个问题:比特币系统的挖矿难度目标是多少,如何调整?

友情提示:建议初学者先阅读以下文章,有助于更好地理解本文。

挖矿系列文章,后台回复“挖矿”即可获得

01

难度目标是多少?

难度目标是比特币系统中的一个参数,它规定了挖掘一个区块所需的平均时间,是区块头的六个字段之一。

比特币挖矿难度(Difficulty)是衡量挖矿难度的指标。挖矿难度越大,挖出区块的难度就越大。目标值(Target)与挖矿难度成反比。难度越高,目标值越小。难度目标是通过目标值转换得到的,它是一个只有4字节的字段(为了便于理解,本文将难度目标作为目标值)。比特币系统通过调整区块头中的难度目标来控制挖掘区块所需的平均时间。

目标值是一个长度为256位的字符串,也就是说,目标值有大约2^256个可能的值。调整难度目标就是调整目标值在整个输出空间中的比例。

例如:采矿就像射击,所有发射的子弹都会落在一个大目标上。难度目标是在大目标上圈出一个范围。射程越小,越难被击中。调整难度目标就是调整这个圆圈在整个目标上的比例。

640?wx_fmt=jpeg

挖矿算力增加,单位时间内的射击次数越多,目标射程所需的时间越短。反之,挖矿算力越低,命中目标范围所需的时间就越长。比特币系统所追求的平均出块时间为10分钟比特币全网难度,需要调整难度目标才能达到。

02

如何调整难度目标?

比特币系统如何调整难度目标?在《》一文中,我们介绍了比特币系统每 2016 个区块(约 14 天)自动调整难度目标。对于所有高度为2016整数倍的区块,系统会自动调整难度目标。如果上一个难度目标调整周期(即之前的2016个区块)平均出块时间大于10分钟,说明挖矿难度过高,需要降低挖矿难度,增加难度目标(准确地说,目标值);相反,在之前的难度目标调整期,平均出块时间不到10分钟,说明挖矿难度较低,需要降低难度目标。

640?wx_fmt=jpeg

03

难度目标可调范围

比特币系统设置,难度目标增加和降级范围有4倍限制。例如:假设由于算力暴涨,上一个难度目标调整期的2016个区块仅用了7天就全部挖出。通过调整难度目标,难度目标翻倍,可以减少平均出块时间。维持在10分钟左右,但如果算力暴涨,2016年第一个区块全部挖完只需要1天,最低难度目标只能调整到原来的四分之一。

04

总结

比特币的计算能力不断波动。比特币系统调整难度目标,将平均出块时间保持在 10 分钟左右。难度目标与挖矿难度成反比,挖矿难度越大,难度目标越小。当区块高度为 2016 的整数倍时,比特币系统会自动调整该区块的难度目标。如果上一次难度目标调整周期的平均出块时间超过10分钟,则降低挖矿难度,增加难度目标;否则,增加挖矿难度,降低难度目标。难度目标上下范围有 4 倍的限制。

比特币每2016个区块(约14天)调整挖矿难度,与BCH每区块调整(约10分钟)相比有明显的滞后性。您认为哪种调整方式更合理?为什么?欢迎在评论区分享你的看法。

《白话区块链入门系列》互动奖品

上期精选内容

★后台回复“入门”获取完整目录! ★

——结束——

『免责声明:本系列内容仅用于介绍区块链科学,不构成任何投资意见或建议。如有错误或遗漏,请留言指出。 』

640

640?wx_fmt=png

亲,据说99.9%的有品位的人都点了“Pretty”?