您现在的位置是:首页 > 文章详情

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

日期:2018-11-29点击:395

难度系数的概念


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

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


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


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


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


具体代码实现也很简单:

/**      *       * 类名:BlockService.java       * 描述:区块服务       * 时间:2018年3月12日 下午7:05:06      *       * @author cn.wenwuyi      * @version 1.0      * @param hash 区块hash      * @return boolean       */     private boolean isValidHashDifficulty(String hash) {         //定义难度系数         int dificutty = 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;     }


作者:文武艺

原文链接:https://blog.roncoo.com/article/134055
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章