作者 | 晏文春
出品|白话区块链
封面设计|LDNews DAO
关注比特币的朋友,想必听过51%算力攻击这个词,它到底是什么意思呢,发起这种攻击之后能做哪些“坏事”呢?
今天就来简单介绍一下51%算力攻击相关的事情。
01
什么是51%算力攻击?
比特币白皮书中,有过这样的表述:诚实节点控制算力的总和,大于有合作关系的攻击者算力的总和,该系统就是安全的。
换句说,当系统中有合作关系的恶意节点所控制的算力,超过诚实节点所控制的算力,系统就是有被攻击的风险。
这种由恶意节点控制超过50%算力所发起的攻击,称为51%算力攻击。
那是不是所有的加密货币系统都有可能遭遇51%算力攻击的风险呢?
其实并不是的,只有基于 PoW(工作量证明)共识机制的加密货币,才存在51%算力攻击,比如比特币、比特现金和目前阶段的以太坊等。
02
这种攻击能做哪些坏事?
在了解了51%算力攻击之后,你肯定好奇,这种攻击能做哪些坏事。
1、双花(Double Spending)。
双花的意思是一份”钱”花了两次甚至多次。51%算力攻击是如何做到双花的呢?
假设小黑有 666 BTC,他把这些 Token 支付的大白同时,也把这些 Token 发到自己的另一钱包地址上。
换一句话说,小黑的一份钱,同时转给两个人。最终,发给大白那笔交易先被得到了确认,并打包在区块高度为 N 的区块内。
这时,控制了超过50%算力的小黑,发起51%算力攻击。他通过重新组装第 N 个区块,将发给自己那笔交易打包进区块里,并持续在这条链上延展区块。
由于算力的优势,这条量将成为最长合法链。这样小黑666BTC双花成功,大白钱包里的 666 BTC”不翼而飞”了。
03
小结
那拥有超过50%的算力,就可以为所欲为,什么坏事都可以做吗?其实并不是的。
即使控制超过50%的算力,也不能转移其他人的 Token,因为这个操作是需要私钥进行签名,如果想伪造签名来“偷币”,这种行为是诚实的矿工所不能容忍的,这将颠覆系统共识。
如果你掌握了某个加密货币50%以上的算力,你会发动51%算力攻击吗?为什么?快到留言区说说你的看法吧。