Difficulty Adjustment 改变可接受哈希阈值,不改变交易数量或补贴。目标越小搜索越难;共识使用 nBits 目标,难度则是比率表示。
Mainnet 在能被2,016整除的高度重算目标,期间沿用 nBits。两周是1,209,600秒的目标时长,不是日历期限。算力突然下降不会触发立即的紧急调整。 [Bitcoin Core v29.0: retarget] [Bitcoin Core v29.0: network parameters]
Bitcoin Core 用已完成周期末块的区块头时间减去首块时间。2,016个区块之间有2,015个间隔,计算保留该历史特点。这些是矿工在允许范围内选择的时间,不是精确发现时间,也不是 Median Time Past。 [Bitcoin Core v29.0: retarget] [Bitcoin Core v29.0: network parameters]
观测时长被限制在目标时长的四分之一至四倍。旧目标乘该时长再除目标时长得到新目标,还受 powLimit 限制并采用紧凑编码。周期更快会降低目标、提高难度;更慢则相反。 [Bitcoin Core v29.0: retarget] [Bitcoin Core v29.0: network parameters]
调整力求在给定算力下平均十分钟,不安排单个区块。它不稳定 BTC 价格、矿工利润或每日交易量。调整后的算力变化和随机性仍影响出块时间;付款规则与 halving 独立运行。 [Bitcoin Core v29.0: retarget] [Bitcoin Core v29.0: network parameters]
从自己的节点取得边界区块时间、旧周期末块和新周期首块的 bits。重建数值目标、时长限制和紧凑舍入。网站百分比预测不够:周期结束前它会变化,测试网络也可能采用其他规则。 [Bitcoin Core v29.0: retarget] [Bitcoin Core v29.0: network parameters]
要获得更完整的理解,请将本词条与以下词条结合阅读: Proof of Work, 挖矿, Timechain, 区块补贴. 反向关联还来自: Timechain, Proof of Work, 挖矿, Halving.