51%攻击是一种假设性的对基于工作量证明(PoW)算法运行的区块链的攻击场景。攻击的本质是,一个人或一群人获得了对网络总哈希算力50%以上的控制权。这将使他们暂时能够操纵区块链。这个术语经常引起恐慌,但重要的是要理解攻击者能做什么和不能做什么。
51%攻击是如何运作的?
在比特币网络中,存在“最长链”规则。区块链的版本,其拥有最大累积“工作量”(即它更长且花费了更多的哈希算力),被认为是真实的。
想象一下,一个拥有51%网络算力的恶意参与者决定进行欺诈:
- 他公开地将1000 BTC发送到交易所,以换取美元。这笔交易进入了所有人都可见的公共区块链。
- 同时,秘密地,他开始挖自己平行的区块链版本。在这个秘密版本中,他没有包含他发送到交易所的交易,而是将这1000 BTC发送到他的另一个钱包。
- 因为他拥有超过一半的网络算力,他的秘密区块链增长速度比公共区块链快。
- 一旦他从交易所提取了美元,他就公布了他现在更长的秘密链。根据规则,整个网络必须将其接受为真实链。他将代币发送到交易所的公共链被“抛弃”并变得无效。
结果是,攻击者既保留了他的1000 BTC(它们现在在他的第二个钱包里),又从交易所获得了美元。这被称为“双重支付”(double-spending)。
攻击者能做什么和不能做什么?
重要的是要了解这种攻击的局限性。
攻击者可以做的:
- 阻止新交易的确认(审查)。
- 阻止某些或所有用户之间的支付。
- 进行自己代币的双重支付,如上述示例。
攻击者不能做的:
- 凭空创造代币或改变区块奖励。
- 伪造签名并从别人的钱包中窃取代币。他无法访问他人的私钥。
- 更改在攻击开始前很久就已经完成的旧交易。
51%攻击不会“摧毁”比特币,但它会破坏对它的信任,这是一个同样严重的威胁。
51%攻击会威胁比特币网络吗?
理论上——是的。实际上——不会。原因如下:
- 天文数字般的设备成本。要获得比特币网络当前哈希算力的51%,攻击者需要购买数百万台最先进的ASIC矿机。这方面的成本将高达数百亿美元。
- 巨大的电力成本。即使能获得如此数量的设备,其运行的电力成本也将达到每小时数百万美元。
- 经济上毫无意义。一旦这种攻击被发现(这会很快发生),对网络的信任就会崩溃,随之而来的是比特币的价格也会下跌。攻击者将花费数十亿美元来贬值他试图窃取的资产。使用如此庞大的算力进行诚实的挖矿并获得区块奖励要有利得多。
正因为如此,尽管51%攻击对于哈希算力较低的小型加密货币仍然是现实的威胁,但对于比特币网络来说,它已成为一个纯粹的理论概念。由于全球大量诚实的矿工,比特币网络已变得“大到不能倒”。