请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

比特币中算的哈希值需要跟目标值比较。那么目标值是谁给定的呢?

比特币中算的哈希值需要跟目标值比较。那么目标值是谁给定的呢?

正在回答 回答被采纳积分+3

1回答

马里布 2022-07-15 22:38:40

比特币通过动态调整区块难度的方法来实现区块生成速度的调整,比特币被设计为每隔2016个区块时全网均会自动统计过去2016个区块生成耗时,然后重新计算出下一个2016个区块的目标值。

PPT中所指的目标值是一个虚拟概念,实际中通过个区块头中都有一个 Bits 字段,被称为“目标位”,也就是所谓的难度值。

参考 https://btc.com/stats/diff 例如最近的一条交易,Bits=0x1709a7af

其中0x17称为指数,后面0x9a7af称为系数,

目标值计算 target = 0x9a7af * 2^ (8 * (0x17 -3))

等于 0x9a7af0000000000000000000000000000000000000000

在比特币系统中,难度值越小,挖矿难度就越大,因为哈希值可落的范围会越小;反之难度值越大,挖矿难度就越小。


0 回复 有任何疑惑可以回复我~
  • 提问者 LanceMai #1
    嗯这个我明白了,不过这个不应该叫难度值吧,也许应该叫难度值的反比?
    另外,关于PPT中说挖矿中是需要提供算例去解决难题的,解决的是什么难题,谁来指定这些难题。比如说那些数学难题?
    回复 有任何疑惑可以回复我~ 2022-07-18 10:35:41
  • 马里布 回复 提问者 LanceMai #2
    这个值就是做target 可以叫做目标值也可以叫做难度值。
    说它难是因为target 如果越小,那么算出来的哈希能比这个值还要小的可能性就急剧下降,因为我们知道哈希结果是不可预测的,也可以从随机预言的角度来理解它,正因为随机性不可预测性导致计算值小于这个目标值的难度就比较大,需要无脑尝试非常多的次数才可能正好“撞到”一个比target还要小的值,这个就是难度的意思,当全世界的算力在上升的时候,比特币系统也会上调难度,也就是减小target的值,也就是PoW机制的控制比特币生成速度的关键点。
    回复 有任何疑惑可以回复我~ 2022-07-18 20:53:16
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信