在代码实现中,出块速度移动平均值的测算窗口是回溯前2016个区块,每2016个区块重新测算和调整一次(刘教链注:中本聪的代码里其实有一个小bug,就算计算时少算了一个区块,这个bug叫做off-by-one,一直未被修复)。以每个区块的设计时间间隔大概10分钟计算,这个窗口期就是大约14天也就是刚好2周(两个星期)。用这个目标窗口期时长除以实际窗口期时长,就可以得到难度调节的系数。比如因为算力下降,每个区块出块速度变慢,实际用了3周时间才产出了2016个区块,那么难度调节系数就是2除以3等于2/3,就在下一个窗口内把难度值乘以2/3,难度下降。如果难度调节系数过低,低于1/4,或者过高,高于4,那么就不能忽然做如此剧烈的调整,此时就会最小取到1/4,最大取到4。 在这次算力冲击中,我们就看到,算力骤降之后,网络出块速度立刻发生了显著的减缓。原本每小时大约应该产生6个区块,现在下降到4-5个。所以,虽然每个区块的区块奖励也就是挖矿的产量并未发生变化,但是从单位时间的产量而言,是发生了减少。不过coinbase的新币都是有一个冷却期的,矿工并不能立刻把新挖出来的币拿来砸盘。 网络会耐心等待矿工完成算力的搬迁和恢复工作。以两周为一个时间节点。如果不成,难度值就会继续降低,这会鼓励仍在坚持生产的矿工有更大的几率获得比特币,从而激励矿工尽快完成搬迁和恢复。 比特币通过二级市场完成对矿工工作的支付,矿工的代价就是割肉卖币。这两件事本就是一件事的两种视角、两种说法。有全球买家在二级市场上的支持,矿工才能顺利卖出自己手中的币,获得算力搬迁和恢复工作所需的资金。所以说,是价格决定算力,而不是算力决定价格。关于这一点,中本聪早在2010年2月21日论坛发言时就已经指出:“任何商品的价格都趋向于生产成本。如果价格低于成本,那么生产就会放慢速度。如果价格高于成本,则可以通过生产和出售更多产品来获利。同时,增加的产能(算力)将增加难度,将生产成本推向价格。”“在后面的几年中,当生成的新币只占现有总供应量的一小部分时,市场价格将决定生产成本,而不是反过来。” (责任编辑:admin) |