前几天咱们说区块链的时候多次说到了51攻击这个玩意儿,但是51攻击究竟是怎么完成的呢,(肯定不是攻击51次就叫做51攻击呀。)我们一起来研究一下。
在股份制公司中,有一个词叫做“一票否决权”。(不是联合国的那个一票否决哈)指的是一个公司里某一个股东持有本公司51%及以上的股份时,可以一票否定其他所有股东共同定下来的决定。其实这就是51攻击!
在挖矿过程中也一样,如果所有的矿机里,突然出现了一个超大算力的矿机(比如银河X号)突然加入,并且他的算力直接超过了其他所有矿机的总和。那么,这个矿机就有了整个区块链网络中的绝对话语权,他不承认,其他所有矿机都承认都无效。同样的,他承认的,其他所有矿机都否定也没用!这就导致了巨大的隐患在,万一他是一个坏人。他就能够随意修改区块链内的所有区块的信息,可以让其他矿机的努力都做无用功,这就是咱们区块链里面的51攻击!
51攻击之所以会出现起源于比特币挖矿的一个机制导致的,也不是漏洞啦。这个机制在理论上是很完善的,实行过程中任何可能都会出现的嘛,而且就比特币而且目前也不可能出现51攻击啦。
咱们都知道,挖矿的时候如果挖到了新的区块的时候,就会在全网洛去广告这个消息。但是这个传播是需要一定的时间的。假如在这个时间内又有其他一个旷工耶挖到了这个区块,这个时候就有两条关于同一个区块的广播在网络内留传,这下子怎么办呢,总不能两个人都承认吧, ps:如果两个人都承认,那就是分叉了
这个时候实现定制的规则就出来起作用了,这条广播谁接受的多,谁的广播就是有效的,而另外一条就是无效的,是废块。51攻击依靠的就是这么一个机制产生的。
因为他具有全网51的算力,所以他的传播速度肯定超过了任何一个区块的速度。假如我有超过51的算力的话,我可以将一个转账信息记录在随意一个区块上面,然后马上自己创建一个新的区块去阻挡记录了转账信息的区块,这样。我的转账完成了但是网络里接受的不是我这个转账的信息,从而我这次转出的资产还在我的区块里。这样子,区块里就得不到真实的信息,而我,也可以重复使用同一笔资产。就好像童话故事记得聚宝盆,只要我在里面放了一定量的资产以后,我就有源源不断的资产。不管我取出多少他就会重新补充多少进去。很美妙吧
但是51攻击破坏的是全网的秩序,会导致整个网络的混乱。所以,我们肯定要竭力去打击他的。
网友评论