你知道如何实现区块链难度系数

一、前言

自从     比特币   大火之后,挖矿就非常流行,由许多人都购买矿机挖坑。许多人说采矿很难,可是采矿不就是用     计算机   算出哈希吗,这正是计算机的强项啊,怎么会变得很难,迟迟算不出来呢?

 你知道如何实现区块链难度系数_设计制作_接口/总线/驱动

二、区块链难度系数

区块链的难度系数:是设计区块链挖矿难易的关键因子,难度系数越低,挖矿越容易。难度系数越高,相应越难。例如比特币的难度系数是18。

难度系数一般是hash值的前置0的个数。

    java   区块链中设计合理的难度系数

例如难度系数定为6,也就是区块的有效hash,必须前面有6个0

例如难度系数为6的有效hash为:

00000048bfdc5e67aa448686438f1350a6cc7f4477feb5562b0368a808fdef57

具体代码实现也很简单:

/**

*

* 类名:BlockService.java

* 描述:区块服务

* 时间:2018年3月12日 下午7:05:06

*

* @author cn.wenwuyi

* @ve     rs   ion 1.0

* @pa     ram   hash 区块hash

* @return boolean

*/

priva     te   boolean isValidHas     hDi   fficulty(String hash) { //定义难度系数

int d     if   icutty = 6; //定义标志符0(当然也可以定义其他,一般是0)

char zero = ‘0’; int i; for (i = 0; i 《 hash.length(); i++) { //获得hash     字符   串的i位置的字符

char ichar = hash.charAt(i); //如果i处的值不为0则跳出

if (ichar != zero) { break;

}

} //判断i是否大于等于难度系数,返回即可

return i 》= dificutty;

}

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

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

三、难度系数的动态调节

比特币选择10分钟来产生区块,也就是1/600 BPS (Blocks/Sec),这个是根据具体设计而制定的, 也是人为的选择。而比特币的交易处理速度最高为:7 TPS (Transac     ti   ons/Sec), 这个是整个交易验证机制、共识机制,和P2P通讯机制,以及代码实现后所达到的一个技术上限。相比而言,以太坊目前是1/20 BPS和20 TPS,维基链是1/10 BPS和1000+TPS。对于POW共识机制的公链来说,BPS是通过变更挖矿的难度系数来动态调节的。然而对于DPOS机制的公链,BPS是恒定的。

矿具有随机性,没法保证正好十分钟产出一个区块,有时一分钟就算出来了,有时几个小时可能也没结果。总体来看,随着硬件设备的提升,以及矿机的数量增长,计算速度一定会越来越快。

为了将产出速率恒定在十分钟,中本聪还设计了难度系数的外汇赠金http://www.k     ai   fx.cn/ques  TI on/kaifx/1792.html调节机制。他规定,难度系数每两周(2016个区块)调整一次。如果这两周里面,区块的平均生成速度是9分钟,就意味着比法定速度快了10%,因此接下来的难度系数就要调高10%;如果平均生成速度是11分钟,就意味着比法定速度慢了10%,因此接下来的难度系数就要调低10%。难度系数越调越高(目标值越来越小),导致了采矿越来越难。

责任编辑:ct

95
122
0
46

相关资讯

  1. 1、准备称王了么《烈焰龙城》第二届跨服联赛将启3019
  2. 2、ICHU和梦100登陆CCG帅气偶像和迷人王子的嘉年华4218
  3. 3、《巨龙之战》跨服战攻略谁会成为最终霸主305
  4. 4、愚人节不愚人《龙门镖局》全民福利大放送4228
  5. 5、《幻城》手游玉符打造全民提战新风潮1581
  6. 6、《新剑与魔法》3v3挑战赛中国夺冠女神泰妍助阵对决205
  7. 7、《火线精英》超级刀战震撼上线掌上刀战就要狠4758
  8. 8、《万万没想到之大皇帝》AppStore今日上线2482
  9. 9、《无敌唤灵》新版本灵宝降世明日开启新旅程来临614
  10. 10、《魂斗罗归来》“全民军团战”版本爆料1228
全部评论(0)
我也有话说
0
收藏
点赞
顶部