pow
PoW 与难度调整
工作量证明(PoW)通过哈希前置约束使新区块产生的平均时间趋近 10 分钟,攻击者要重写链的成本随累计工作量指数增加。
难度调整(每 2016 块)
- 目标周期:2016 块,理想耗时 1209600 秒(2 周)
- 实际耗时
T
:last_time - first_time
- 新目标:
new_target = old_target * T / 1209600
,并截断到 [0.25x, 4x] - 高度相关:创世以来严格按窗口迭代
安全直觉
- 确认数与安全性:攻击者算力占比
q
时,k 次确认被回滚的概率随 k 指数衰减 - 孤块率与传播延迟:更快的区块中继(BIP152)有助降低资源浪费与中心化压力
实现提示
- 计算目标使用整数运算,注意溢出与边界
- 保留历史异常处理(早期网络参数)以保持 共识兼容