Author

Topic: 关于挖矿的几个疑问,希望大家进来讨论讨论 (Read 160 times)

jr. member
Activity: 106
Merit: 6
没人吗?
jr. member
Activity: 106
Merit: 6
大家都知道比特币的挖矿就是在暴力推算符合结果的哈希256值,只要符合结果 那么就认为是有效的,就会得到奖励,那么基于这种情况给予以下假设:
    1. 矿机之间有没有进行协商?   假设我们要得到的哈希结果就在0-9之间的一个数值,如果我的矿机算力是每秒能算一个数,我有两台矿机的话,矿机之间协商后:A矿机算0-4,B矿机算5-9,那么 我会在5秒之内就会算出结果,最多5秒,假如矿机之间不进行协商,可能A矿机也从0-9开始计算,B矿机也从0-9计算,这样有一台矿机在做无用功, 如果是全网的矿机都这样进行的话,肯定有一部分矿机在做无用功,不过这只是一个假设,因为哈希256我们没法定义范围,这个计算范围是无穷大,但是100%能肯定是很定有些矿机在计算别的矿机之前计算过的值,但是又反过来,无穷大其实也是有个集合范围,不知道矿机之间是如何处理这种情况的?
    2. 在问题1的基础上,即使我们无法定义范围,那么是否有个全网,或者至少矿池是否应该搞个黑名单? 把矿机计算过的不符合结果的值加入黑名单,其他矿机计算的时候排除这些黑名单,加快效率,有人会问每次比特币网络需要的哈希都不一样没法定义,其实仔细想想,即使难度调整,也是一直在一个区间的,比如难度高的时候可能哈希前面要10个0 ,难度低的时候要5个0, 那么黑名单可以至少把开头不是0的过滤掉,这样随着时间的推移,黑名单越来越多,然后可以基于这个黑名单来加快计算,以及避免一些无用功的计算?
   3. 基于问题2,目前以蚂蚁矿机来说每秒有14T的算力,去实时的匹配这个黑名单可能也会很费时间,是否可以改进矿机先穷举出一个准备计算的列表,然后去匹配这个黑名单,过滤后发送给矿机,让矿机按照过滤了黑名单的结果去计算?
    4. 矿机每次计算之前这个值怎么给出的,这个肯定有一定的规则的,虽然是随机值,随机值也有随机值的算法的?
可能这些问题都有些扯淡,不过根据原理来推断能得出这些改进的地方,希望大神解答下目前有没有类似的机制
Jump to: