美文网首页
区块链入门

区块链入门

作者: 淡泊人生的智慧 | 来源:发表于2018-02-21 22:13 被阅读8次

    挖矿就是计算机进行每个区块的哈希值计算,不是任意一个 Hash 都可以,只有满足条件的 Hash 才会被区块链接受。区块头包含一个难度系数(difficulty),这个值决定了计算 Hash 的难度。

    区块链协议规定,使用一个常量除以难度系数,可以得到目标值(target)。显然,难度系数越大,目标值就越小。

    Hash 的有效性跟目标值密切相关,只有小于目标值的 Hash 才是有效的,否则 Hash 无效,必须重算。由于目标值非常小,Hash 小于该值的机会极其渺茫,可能计算10亿次,才算中一次。这就是采矿如此之慢的根本原因。

    区块头里面还有一个 Nonce 值,记录了 Hash 重算的次数。第 100000 个区块的 Nonce 值是274148111,即计算了 2.74 亿次,才得到了一个有效的 Hash,该区块才能加入区块链。

    为了将产出速率恒定在十分钟,中本聪还设计了难度系数的动态调节机制。他规定,难度系数每两周(2016个区块)调整一次。如果这两周里面,区块的平均生成速度是9分钟,就意味着比法定速度快了10%,因此难度系数就要调高10%;如果平均生成速度是11分钟,就意味着比法定速度慢了10%,因此难度系数就要调低10%。

    难度系数越调越高(目标值越来越小),导致了采矿越来越难。

    相关文章

      网友评论

          本文标题:区块链入门

          本文链接:https://www.haomeiwen.com/subject/pezotftx.html