# 51% 攻擊

> **最後更新：2026 年 1 月**

## 51% 攻擊是區塊鏈最根本的安全威脅：當有人控制了超過一半的算力或驗證權，他就能改寫歷史、重複花費同一筆錢。這就像選舉被買票——當過半數的票都被控制，民主就失去了意義。

想像一個 100 人的村莊在投票。

如果你能收買 51 個人，你就能決定任何投票結果。

區塊鏈也是一樣。

### 什麼是 51% 攻擊？

區塊鏈的安全建立在「去中心化」上——沒有任何單一方能控制整個網路。

比特幣用「工作量證明」（PoW）達成共識：誰的算力大，誰就更有可能挖到下一個區塊。

**問題來了**：如果有人掌控了超過 50% 的算力呢？

他就能：

| 能做到的事       | 為什麼              |
| ----------- | ---------------- |
| 阻止其他人的交易被確認 | 只承認自己挖的區塊        |
| 重複花費同一筆錢    | 先花錢，再用算力「撤銷」那筆交易 |
| 選擇性審查交易     | 不把特定交易打包進區塊      |

但他**做不到**：

* 憑空創造比特幣（仍需遵守協議規則）
* 修改其他人的交易（無法偽造簽名）
* 改變區塊獎勵的數量

### 雙重支付：51% 攻擊的殺手鐧

51% 攻擊最危險的用途是「雙重支付」（Double Spending）。

**攻擊流程：**

```
1. 攻擊者用 100 BTC 在交易所換成美元
2. 交易所看到交易被確認，放款
3. 攻擊者用他的 51% 算力，從那筆交易「之前」開始挖一條新鏈
4. 因為算力更大，新鏈很快超過原本的鏈
5. 網路切換到新鏈——那筆交易消失了
6. 攻擊者保留了美元，也拿回了 100 BTC
```

這就像你用信用卡買了東西，然後回到過去把刷卡記錄刪掉。

商品在手，錢也還在。

### 真實案例

51% 攻擊不是理論，它真實發生過：

| 年份   | 區塊鏈              | 損失              |
| ---- | ---------------- | --------------- |
| 2018 | Bitcoin Gold     | 約 1800 萬美元      |
| 2018 | Verge            | 約 175 萬美元       |
| 2019 | Ethereum Classic | 約 110 萬美元       |
| 2020 | Ethereum Classic | 約 560 萬美元（三次攻擊） |

**為什麼這些幣被攻擊，比特幣卻沒事？**

因為**算力成本**。

要攻擊比特幣，你需要超過全球一半的比特幣礦機。這意味著：

* 數十億美元的設備投資
* 巨大的電力成本
* 而且攻擊成功後，比特幣價格會暴跌，你的設備就變廢鐵

經濟上完全不划算。

但小型幣種？租用雲端算力幾小時可能就夠了。

### 為什麼叫「51%」而不是「50%」？

嚴格來說，50.1% 就足夠了。

但業界習慣用 51% 來指稱這種攻擊。

**有趣的是**：即使只有 30-40% 的算力，攻擊者也有機會成功——只是機率較低，而且需要更長的時間。

這就像賭場：莊家只要有微小的優勢，長期下來就會贏。

### PoS 鏈也會被 51% 攻擊嗎？

會，但形式不同。

在權益證明（PoS）中，「算力」變成了「質押代幣」。

如果有人持有超過 51% 的質押代幣，理論上也能控制網路。

**但這更難**：

1. 購買 51% 的代幣會推高價格，成本急劇上升
2. 攻擊成功後代幣價值歸零，攻擊者損失最大
3. 很多 PoS 鏈有「懲罰機制」（Slashing），惡意行為會被沒收質押

這就是為什麼有人說 PoS 比 PoW 更安全——攻擊者會「自殺」。

### 如何防範 51% 攻擊？

對於**區塊鏈本身**：

* 提高算力門檻（越去中心化越安全）
* 使用 PoS 或混合共識機制
* 增加確認次數要求

對於**交易所和商家**：

* 大額交易要求更多區塊確認
* 比特幣建議 6 次確認
* 小型幣種可能需要 100+ 次確認
* 監控網路算力異常

對於**一般用戶**：

* 選擇算力強大、去中心化程度高的區塊鏈
* 不要在確認數不足時就認為交易完成
* 小心那些算力集中的小型幣種

### 51% 攻擊的成本

想知道攻擊各種區塊鏈需要多少錢？

有個網站 [crypto51.app](https://www.crypto51.app/) 專門計算這個。

**大致概念**：

| 區塊鏈      | 1 小時攻擊成本               |
| -------- | ---------------------- |
| 比特幣      | 數百萬美元（理論值，實際上無法租到足夠算力） |
| 以太坊      | PoS 後幾乎不可能             |
| 小型 PoW 幣 | 幾千到幾萬美元                |

這也是為什麼「網路效應」這麼重要——用的人越多，挖礦的人越多，攻擊就越難。

### 比特幣 6 次確認的由來

中本聰在比特幣白皮書中計算：

如果攻擊者有 10% 的算力，在 6 次確認後成功逆轉交易的機率只有 0.024%。

即使攻擊者有 30% 算力，6 次確認後成功機率也只有 17.7%。

這就是為什麼業界通常建議「等 6 個區塊確認」——這是安全性和實用性的平衡點。

{% hint style="info" %}
51% 攻擊提醒我們一個基本道理：區塊鏈的安全來自於去中心化。當算力或權益過度集中時，「去中心化帳本」就變成了「由少數人控制的帳本」——這與傳統金融系統沒有本質區別。
{% endhint %}

***

#### 相關條目

* [雙重支付](/ren-shi-feng-xian-bao-hu-zi-chan/double-spending.md)
* [女巫攻擊](/ren-shi-feng-xian-bao-hu-zi-chan/sybil-attack.md)
* [共識機制](/qu-kuai-lian-ru-he-da-cheng-gong-shi/consensus.md)
* [工作量證明](https://github.com/dAAAb/Blockpedia/blob/master/gong/gong-zuo-liang-ming.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://www.0x1.academy/ren-shi-feng-xian-bao-hu-zi-chan/51-attack.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
