第356部分(第1/4 页)
这个道理就相当于某个人的钱包接受了别人的一笔支付款项,然后他等待这笔款项的合法来源确认,一旦有超过五个人给他发送了确认信息,说这笔钱是合法的,那么他就认为这是一笔有效的交易。
但是一旦有人掌握了全网超过百分之五十一的计算力,那么他就可以伪造这些确认信息,让别人误以为自己收到了合法的比特币,而实际上是这个人自己伪造的。
此外,如果掌握了全网超过百分之五十一的计算力,挖起矿来更是容易无比,可以在众多矿工的挖矿行动中取得明显优势,将绝大部分产生的比特币收归自己所有。
按照比特币的设计,大概每十分钟会有一个比特币“金块”产生(前四年一个金块为50个比特币,此后每四年减半),这个速度是林鸿早就设定好的,无论你的计算力多大,在十分钟的时间内,也只能和全网的所有矿工来争夺这个“金块”。
为了达到这一效果,林鸿另外设计了一个难度参数,这个难度参数是会根据全网的总体计算力进行随时变化的。计算力越大,难度也就越大。
而如果有人掌握了超过百分之五十一的计算力,这种公平性就被打破了。
长此以往,比特币绝对公平的原则就彻底毁了,自然,比特币也就被毁了。
林鸿开着车,以最开的速度回到了四合院。然后立刻打开电脑,查看起比特币的全网运算速度曲线图。
这是一个以时间为横坐标。以全网运算速度为纵坐标的二维曲线图。全网运算速度的单位是HASH/S,即每秒可以尝试运算多少组散列值。
现在最好的CPU的运算速度,一个CPU的运算速度大概在0。1兆HASH/S左右,也就是一秒钟可以重复尝试运算大概一百组左右的散列值。
刚开始的时候,全网的运算速度只是林鸿一个人贡献的,现在在图上几乎看不出来。只是贴着底部前行,而过了一段时间之后,有了全世界的一些比特币爱好者和支持者的加入,全网的运算速度已经攀升到了10兆的量级,但是现在,这个数值却已经极速提升,突然之间翻了至少三倍以上,超过了37兆HASH/S。
这意味着有着大量的计算力接入比特币网络,也达到了林鸿之前设定好的预警条件。
这原本是一件值得高兴的事情。毕竟计算力越大越好,可是现在这种计算力突然之间猛增的情况却让林鸿有些高兴不起来。
刚开始的时候猛增一下可以理解,毕竟基数比较小,翻倍容易,可是这些天来,速率增加的速度已经稳定,基本上是一条缓慢上升的曲线,而现在,这条曲线变为了陡然爬升的直线。却又没有什么特别的因素导致很多人关注比特币。这就有些值得可疑了。
如果这些猛然增加的计算力都是同一个人贡献的话,那么他现在所掌握的计算力已经超过一半。也就是说51%攻击正在进行。
对方到底是谁?
有什么目的?
使用了什么方式接入才拥有如此大的计算力?许多台电脑?亦或者是超级计算机?
现在一切都还不确定。
或许这个攻击并不是故意的,也许这个人只是一个比特币爱好者,他并不知道会存在这种攻击,正好他手中掌握了这么大的计算力并将其用于比特币挖矿。
一切还有待了解和挖掘。
林鸿坐于电脑前,开始着手展开调查。
他设计比特币客户端的时候,其架构和比特币差不多,矿工的具体IP是保密的,也就是说杜绝了被人进行追踪定位的风险。
不过,却有一种方式可以大致统计这些计算力到底来自什么区域,因为吸取了比特币设计的经验,全世界布置了一些主要的P2P的骨干节点,这些节点完全由比特币支持者免费无偿提供,负责完整地保存所有数据,并且处理大量的计算力数据交换。
所有的这些数据都是有记录可查的,通过统计这些节点的运算能力,就可以知道来自某个地区的总体运算速度多大。
林鸿立刻编写了一个功能,对这些主要节点的计算力进行统计,然后和之前的数据进行对比,看看到底是哪些节点的计算力突然猛增。
最终的看到的结果让林鸿心中松了一口气,因为他发现这些计算力主要来自五个节点,并且计算力都非常地接近。
也就是说,这些计算力分别来自五个不同的地方,则是同一个人所贡献的概率变得非常小。
比特币的所有东西都是开源的,