> For the complete documentation index, see [llms.txt](https://www.0x1.academy/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://www.0x1.academy/gei-kai-fa-zhe-de-zhi-nan/fork/soft-fork.md).

# 軟分岔

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

## 軟分叉（Soft Fork）是區塊鏈的「溫和升級」——新版本向後相容，舊節點不升級也能繼續運作。就像把速限從 100 降到 80，開 80 以下的車，不管新舊規則都合法。

想像一個圖書館有規定：借書最多 10 本。

現在改成最多 5 本。

已經借了 5 本以下的人？完全沒影響。

這就是軟分叉——**規則變嚴了，但舊的做法在新規則下仍然合法**。

### 硬分叉 vs 軟分叉

用「區塊大小」來理解：

**硬分叉**（放寬規則）：

```
舊規則：區塊 ≤ 1MB
新規則：區塊 ≤ 8MB

新節點產生 5MB 區塊 → 舊節點拒絕（太大了！）
結果：不相容，可能分裂
```

**軟分叉**（收緊規則）：

```
舊規則：區塊 ≤ 1MB
新規則：區塊 ≤ 0.5MB

新節點產生 0.4MB 區塊 → 舊節點接受（沒超過 1MB）
結果：相容，平滑過渡
```

| 特性   | 軟分叉       | 硬分叉      |
| ---- | --------- | -------- |
| 向後相容 | ✅ 是       | ❌ 否      |
| 規則方向 | 變嚴        | 變鬆或重大改變  |
| 升級要求 | 多數礦工即可    | 所有節點     |
| 分裂風險 | 低         | 高        |
| 典型用途 | 新增功能、修復漏洞 | 擴容、改共識機制 |

### 為什麼軟分叉更「安全」？

**舊節點不知道升級發生了什麼，但它們仍然認為新區塊是有效的。**

這有幾個好處：

1. **不強制升級**：舊節點可以繼續運作（雖然功能較少）
2. **不會分裂**：不會產生新幣
3. **漸進式採用**：社群有時間慢慢升級

但也有缺點：

* 功能受限——只能「收緊」規則
* 舊節點可能錯過新功能
* 如果礦工支持度不足，可能造成混亂

### 歷史上的軟分叉

#### SegWit（隔離見證）

2017 年，比特幣最重要的軟分叉。

**問題**：區塊太小（1MB），交易費用飆升。

**解決方案**：把「簽名數據」（見證）從交易中分離出來，有效增加區塊容量。

```
傳統交易結構：
┌─────────────────────────────────┐
│ 交易數據 + 簽名數據（見證）     │ ← 全部佔用區塊空間
└─────────────────────────────────┘

SegWit 交易結構：
┌─────────────────┬───────────────┐
│ 交易數據        │ 見證（分離）  │ ← 見證有折扣
└─────────────────┴───────────────┘
```

**為什麼是軟分叉？**

舊節點看 SegWit 交易時，會把見證部分當作「任何人都能花」的腳本。

技術上合法，只是舊節點不知道新功能的存在。

**SegWit 的影響：**

| 效果      | 說明               |
| ------- | ---------------- |
| 容量增加    | 有效區塊大小提升到約 2-4MB |
| 手續費降低   | 交易成本下降           |
| 啟用閃電網路  | 為 Layer 2 鋪路     |
| 修復交易延展性 | 解決了一個長期漏洞        |

{% hint style="info" %}
SegWit 是比特幣歷史上爭議最大的升級之一。支持者認為它是優雅的解決方案，反對者認為它是「hack」，直接擴大區塊才是正途。這個分歧最終導致比特幣現金的分裂。
{% endhint %}

#### Taproot

2021 年，比特幣另一次重大軟分叉。

**目的**：

1. 增強隱私——複雜交易看起來和普通交易一樣
2. 提升效率——簡化多重簽名驗證
3. 智能合約能力——更靈活的腳本功能

Taproot 是比特幣自 SegWit 以來最重要的升級。

### 軟分叉的啟動方式

軟分叉不是「按個按鈕」就能啟動，需要礦工的支持。

#### BIP 9：信號機制

礦工在挖出的區塊中「投票」支持或反對。

```
啟動條件：
- 在一個「難度調整週期」（約 2 週）內
- 超過 95% 的區塊表示支持
- 升級就會啟動
```

#### BIP 8：使用者啟動

如果礦工不配合，用戶可以自己啟動。

這是一種「最後手段」——如果礦工持續反對，用戶可以選擇無視他們挖的區塊。

{% hint style="warning" %}
使用者啟動軟分叉（UASF）是核武器級別的手段。2017 年 SegWit 爭議期間，社群曾威脅使用 UASF，這被認為是推動礦工最終支持 SegWit 的關鍵因素之一。
{% endhint %}

### 軟分叉的風險

雖然軟分叉比硬分叉「溫和」，但仍有風險：

#### 1. 51% 攻擊窗口

如果只有 51% 的礦工升級：

* 新規則的區塊會被舊礦工視為有效
* 但舊規則的區塊會被新礦工拒絕

這可能導致暫時的鏈分裂和確認延遲。

#### 2. SPV 錢包風險

輕量級錢包（SPV）不驗證所有規則，可能被騙接受無效交易。

#### 3. 功能限制

軟分叉只能「收緊」規則，有些改變（如增加區塊大小）必須用硬分叉。

### 以太坊用軟分叉嗎？

以太坊主要使用硬分叉進行升級。

**為什麼？**

1. 以太坊升級通常涉及 EVM 改變，很難「向後相容」
2. 社群高度一致，硬分叉風險較低
3. 以太坊的開發節奏更快，需要更靈活的升級方式

比特幣社群則傾向軟分叉，因為：

1. 保守穩定是優先
2. 強調「不強制升級」的精神
3. 礦工和用戶可以自己選擇

### 軟分叉 vs 硬分叉：哪個更好？

**沒有絕對的答案。**

| 場景             | 建議方式         |
| -------------- | ------------ |
| 增加新功能（不改變核心規則） | 軟分叉          |
| 修復安全漏洞         | 軟分叉（快速部署）    |
| 擴大區塊/改共識       | 硬分叉          |
| 社群高度共識         | 都可以          |
| 社群意見分裂         | 硬分叉（讓兩派各走各的） |

{% hint style="success" %}
軟分叉是區塊鏈「保守升級」的藝術。它讓網路能在不強制所有人升級的情況下演進，保持了去中心化系統的彈性。SegWit 和 Taproot 證明了：即使在嚴格的向後相容限制下，仍能實現重要的技術突破。
{% endhint %}

***

#### 相關條目

* [硬分叉](/gei-kai-fa-zhe-de-zhi-nan/fork/hard-fork.md)
* [SegWit](https://github.com/dAAAb/Blockpedia/blob/master/blockchain-dev/segwit.md)
* [Taproot](/gei-kai-fa-zhe-de-zhi-nan/taproot.md)
* [閃電網路](https://github.com/dAAAb/Blockpedia/blob/master/layer2/lightning-network.md)
