# 女巫攻擊

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

## 女巫攻擊（Sybil Attack）是指一個人偽裝成很多人，試圖操控去中心化網路。就像一個人在網路上開了 100 個分身帳號，假裝是 100 個不同的人投票。

想像一個小鎮要投票決定蓋公園還是停車場。

有個人想要蓋停車場，但他只有一票。

於是他戴上假髮、換衣服、化妝，假裝自己是 50 個不同的人，投了 50 票。

這就是女巫攻擊。

### 名字從哪來？

「女巫」（Sybil）這個名字來自 1976 年的美國電視電影《乘乙》（Sybil）。

片中女主角有 16 種不同的人格——同一個人，卻表現得像 16 個不同的人。

2002 年，微軟研究員 John Douceur 在論文中首次用這個名字來描述這種攻擊。

他要傳達的概念很簡單：**在去中心化網路中，你怎麼知道對面是一個人還是一百個人？**

### 為什麼這是問題？

去中心化系統的核心假設是：有很多**獨立的**參與者共同維護網路。

比特幣假設大多數節點是誠實的。

以太坊假設大多數驗證者會正確投票。

DAO 假設大多數代幣持有者會理性治理。

**但如果一個人可以假裝成很多人呢？**

他就能：

| 攻擊目標   | 方式        | 影響       |
| ------ | --------- | -------- |
| 投票系統   | 創建大量假帳號投票 | 操控治理決策   |
| 空投機制   | 用大量錢包領取獎勵 | 稀釋真實用戶權益 |
| 聲譽系統   | 給自己刷好評    | 欺騙其他用戶   |
| P2P 網路 | 包圍誠實節點    | 切斷資訊傳遞   |

### 區塊鏈如何防範？

區塊鏈用一個巧妙的方法：**讓偽裝成本很高**。

#### 1. 工作量證明（PoW）

比特幣說：「你想要投票權？先證明你有算力。」

偽裝成 100 個礦工？你需要 100 倍的電費和設備。

**偽裝的成本等於實際擁有的成本。**

#### 2. 權益證明（PoS）

以太坊說：「你想要驗證權？先質押 32 ETH。」

偽裝成 100 個驗證者？你需要 3200 ETH（數百萬美元）。

**你的「分身」有多少取決於你質押多少。**

#### 3. 身分驗證（KYC）

中心化交易所說：「你想開帳戶？先提交身分證。」

這完全阻止了女巫攻擊，但也犧牲了隱私和去中心化。

**這是一種權衡。**

### 空投中的女巫攻擊

近年最常見的女巫攻擊發生在**空投獵人**（Airdrop Farmers）身上。

**標準流程：**

```
1. 新項目宣布：未來會空投給早期用戶
2. 女巫攻擊者創建 100 個錢包
3. 用腳本讓這 100 個錢包都「使用」協議
4. 空投時，一個人領 100 份
5. 真正的用戶權益被稀釋
```

**項目如何反擊？**

| 方法       | 說明                     |
| -------- | ---------------------- |
| 鏈上行為分析   | 檢測相似的交易模式              |
| Gas 來源追蹤 | 100 個錢包的 ETH 都來自同一個地址？ |
| 時間戳分析    | 所有錢包同時進行相似操作？          |
| 機器學習     | 用 AI 識別異常行為模式          |
| 社交圖譜     | 檢查錢包之間的關聯              |

**LayerZero 的做法**：在空投前設置「自首期」，讓女巫攻擊者可以坦白換取部分獎勵，否則被抓到就一毛沒有。

結果：大量可疑錢包主動自首。

### 經典案例：Eclipse Attack

女巫攻擊的進階版是「日蝕攻擊」（Eclipse Attack）。

攻擊者創建大量假節點，「包圍」一個誠實節點，切斷它與外界的連接。

```
正常情況：
  誠實節點 ←→ 其他誠實節點

被日蝕攻擊後：
  誠實節點 ←→ [攻擊者的假節點] ←X→ 其他誠實節點
```

被「日蝕」的節點：

* 收到的區塊都來自攻擊者
* 可能接受無效的交易
* 看不到真正的最長鏈

這是為什麼比特幣節點會主動連接多個**不同來源**的節點。

### 治理中的女巫攻擊

去中心化治理（DAO）特別容易受到女巫攻擊。

**問題**：如果一個代幣持有者可以把代幣分散到 100 個錢包，在某些投票機制下可能獲得更大影響力。

**解決方案**：

1. **二次方投票**（Quadratic Voting）：投票成本是票數的平方。投 4 票要花 16 個代幣，投 100 票要花 10000 個代幣。分散沒有好處。
2. **靈魂綁定代幣**（Soulbound Token）：不可轉讓的身分代幣，證明你是「獨立的一個人」。
3. **社交驗證**：Gitcoin Passport 之類的系統，用多種方式驗證你是真人。

### 為什麼完全解決很難？

女巫攻擊觸及了一個哲學問題：

**在數位世界，身分的意義是什麼？**

你怎麼證明你是「你」而不是「很多人假裝的一個人」或「一個人假裝的很多人」？

目前的解決方案都有權衡：

| 方法      | 優點     | 缺點       |
| ------- | ------ | -------- |
| PoW/PoS | 完全去中心化 | 用錢買影響力   |
| KYC     | 完全阻止女巫 | 犧牲隱私、中心化 |
| 社交圖譜    | 較平衡    | 仍可被攻擊    |
| 生物辨識    | 強身分證明  | 嚴重隱私問題   |

也許未來會有更好的解決方案——某種既保護隱私又能證明「獨特性」的機制。

這是 Web3 身分領域正在研究的前沿問題。

{% hint style="info" %}
女巫攻擊提醒我們：去中心化系統的安全不只在於技術，也在於經濟激勵設計。當偽裝成本低於獲利時，一定會有人嘗試攻擊。好的協議設計會讓「誠實參與」比「攻擊」更划算。
{% endhint %}

***

#### 相關條目

* [51% 攻擊](https://www.0x1.academy/ren-shi-feng-xian-bao-hu-zi-chan/51-attack)
* [工作量證明](https://github.com/dAAAb/Blockpedia/blob/master/gong/gong-zuo-liang-ming.md)
* [權益證明](https://github.com/dAAAb/Blockpedia/blob/master/gong/yi-ming.md)
* [DAO](https://www.0x1.academy/qu-zhong-xin-hua-zu-zhi/dao)
