﻿---
title: "錢包衍生路徑：標準、探索與復原"
description: "了解錢包衍生路徑如何選擇確定性的子金鑰、理解硬化層級和帳戶慣例的差異，以及如何在恢復過程中驗證路徑。"
image: "https://wiki.fcontext.com/og.png"
---

> Documentation Index
> Fetch the complete documentation index at: https://wiki.fcontext.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 錢包衍生路徑：標準、探索與復原

> 僅供教育參考，不構成投資建議；投資可能產生損失。

<a id="answer"></a>

## 直接答案

錢包派生路徑是一個有序的子索引序列，用來告訴確定性金鑰派生演算法從金鑰樹中選擇哪個節點。在常見的 BIP-32 表示法中，`m/84'/0'/0'/0/7` 從主私鑰節點 `m` 開始，遍歷五個子節點。撇號標示一個已加強的 BIP-32 子節點。路徑是路由元資料：它不是私鑰，不加密種子，本身不識別區塊鏈餘額，且在沒有正確根資料和派生演算法的情況下無法恢復任何東西。

對於 BIP-44 類型的錢包，範本是 `m / purpose' / coin_type' / account' / change / address_index`。各層具有約定的意義，而非隨意標籤。`purpose` 選擇錢包慣例，`coin_type` 區分已註冊的資產命名空間，`account` 區分邏輯帳戶，`change` 通常區分外部接收地址（`0`）與內部找零地址（`1`），`address_index` 選擇一個葉子。BIP-44 將前三層設為強化，而將最後兩層保持非強化，以便帳戶擴展公鑰可以在不持有私鑰的情況下衍生接收及找零地址。

相同的助記詞可能會生成許多有效但不相關的地址集。對於 Bitcoin，常見的單鍵路徑包括 P2PKH 的 `m/44'/0'/account'/change/index`、嵌套在 P2SH 中的 P2WPKH 的 `m/49'/0'/account'/change/index`、本地 SegWit P2WPKH 的 `m/84'/0'/account'/change/index`，以及單鍵 Taproot P2TR 的 `m/86'/0'/account'/change/index`。錢包還必須知道輸出或腳本構造；僅有路徑並不是完整的 Bitcoin 錢包策略。

其他生態系統會重用這種符號的一部分，但並不保證語義完全相同。以太幣被註冊為 BIP-44 幣種 `60`，而 `m/44'/60'/0'/0/index` 是一個常見的外部擁有帳戶（EOA）（EOA）（EOA）慣例，但錢包實現已使用多種帳戶布局。相同的 EVM 金鑰可以在多個 EVM 網路上生成相同的帳戶地址，即使餘額和交易歷史是鏈特定的。Ethereum 驗證者 BLS 金鑰使用 ERC-2333 和 ERC-2334，而不是 BIP-32；其 `m/12381/3600/account/use` 路徑沒有撇號，且與 BIP-32 樹不互通。因此，恢復需要精確的實現、曲線、種子或密碼短語、路徑慣例、網路和地址構建，而不是看起來合理的字符串。

<a id="mechanism"></a>

## 如何識別並驗證衍生路徑

### 1. 確認根金鑰材料與衍生演算法

清點助記詞格式、單詞列表、可選的密碼詞、原始種子或擴展金鑰，以及創建該錢包的軟體或硬體實現方式。BIP-39轉換`128`到`256`將一些熵轉換成助記符，並推導出一個`512-bit`從那個助記詞加上精確的密碼短語生成的種子；每個密碼短語都會生成語法有效但不同的種子。BIP-32然後導出 secp256k1從種子擴展出的金鑰。其他錢包系列可能使用不同的助記詞方案、曲線、金鑰衍生函數或主金鑰規則，因此匹配的詞語並不代表匹配的根金鑰。

### 2. 確認標準、網路與金鑰用途

確定目標是 Bitcoin 支付金鑰、EVM 外部擁有帳戶（EOA）（EOA）、驗證者金鑰、多重簽署簽署者、合約管理員，或其他權限。記錄鏈和網路、適用的標準與版本、金鑰曲線、輸出或地址類型，以及錢包應用程式。SLIP-0044 幣型註冊分配了一個命名空間；它並不證明該資產的每個錢包都遵循 BIP-44、支持某個專案，或阻止另一條鏈在其他地方導出相同的金鑰。

### 3. 逐項解析路徑

將 `/` 視為父子邊界，並保留每個索引、深度和硬化標記。在 BIP-32 下，普通子項使用索引 `0` 到 `2^31 - 1`；硬化子項使用 `2^31` 到 `2^32 - 1`，通常寫作 `'`、`h` 或 `H`。因此 `7'` 編碼的子項號為 `2^31 + 7`，而不是普通子項 `7`。確認導入介面如何表示根，是否接受完整路徑或相對後綴，以及匯出的擴展金鑰是否已位於該路徑的部分下。

### 4. 將路徑與地址或輸出語意綁定

對於 BIP-44 系列的 Bitcoin 錢包，請確認 `purpose`、`coin_type`、`account`、`change` 和 `address_index`，然後獨立確認預期的腳本類型和網路。BIP-49、BIP-84 和 BIP-86 故意使用不同的用途值，以避免在同一帳戶中默默出現不兼容的輸出類型。對於多重簽名或描述符錢包，請保留每個金鑰來源、主指紋、派生後綴、閾值、金鑰順序、腳本構造和檢查碼；單一路徑無法重建完整策略。

### 5. 重現帳戶與地址探索流程

不要僅因一個空的預設帳戶而推斷損失。BIP-44 探索會依序檢查帳戶並掃描外部鏈，使用 `20` 個連續未使用地址的地址間隔限制。創建了超過該間隔的地址、異常使用內部分支、跳過帳戶或採用專有布局的錢包，預設掃描可能找不到。僅使用受信任的僅監控數據或離線推導進行搜索，設定明確範圍，記錄每個搜尋過的分支，並避免將助記詞或擴展私鑰上傳到網站。

### 6. 依賴餘額前先驗證錢包身分

比較主指紋、帳戶層級擴展公鑰（如適用）、完整來源路徑，以及先前記錄的多個接收和變更地址。對於 Bitcoin，推導預期的輸出腳本或描述符，並查詢正確網路的交易歷史，包括已花費的輸出。對於基於帳戶的鏈，驗證精確的 `chainId`、地址、代幣合約及歷史活動。餘額為零只是薄弱的證據：地址可能錯誤，網路或索引可能不同，或資產可能已經轉移。

### 7. 透過受控流程復原或遷移

在受信任的環境中使用已驗證且相容的軟體；在暴露簽名資料之前，建議先導入僅觀察錶描述符或帳戶公鑰以進行探索。使用隔離帳戶或小額交易測試簽名和恢復，然後對生成的地址、鏈上歷史、輸出所有權、手續費及最終狀態進行對帳。如果秘密資訊已輸入到不受信任的恢復工具，應視為已洩露，並將所有資產、合約角色、授權、驗證者職責及恢復權限遷移到新的根錢包，而不是繼續使用已恢復的錢包。

<a id="example"></a>

## 計算範例

### 解析一條 Bitcoin 硬化路徑

以 `m/84'/0'/2'/1/17` 為例，各欄位依序代表原生 SegWit 用途 `84'`、Bitcoin 幣種類型 `0'`、帳戶 `2'`、內部或找零分支 `1`，以及地址索引 `17`。BIP-32 的硬化索引要加上 `2^31 = 2,147,483,648`，因此序列化子編號分別是 `84' = 2,147,483,732`、`0' = 2,147,483,648` 與 `2' = 2,147,483,650`。最後兩個索引仍是一般的 `1` 與 `17`；少寫一個撇號會選到另一棵子樹，而不是同一寫法的變體。

### 使已用地址無法被探索的地址間隔

假設外部分支在索引 `0` 與 `5` 使用過地址，之後錢包掃描索引 `6` 至 `25`，得到連續 `20` 個未使用地址。依 BIP-44 的地址間隔規則，探索流程會在 `25` 停止，因此索引 `26` 的已用地址位於停止條件之後而被漏掉。將掃描擴大至有紀錄的明確邊界可以找到它，但根因是來源錢包越過標準間隔建立地址，中間卻沒有活動。

### 計算有界復原搜尋量

復原紀錄無法確定 Bitcoin 用途屬於 `4` 種路徑（`44'`、`49'`、`84'` 與 `86'`）中的哪一種，並涉及 `3` 個帳戶、`2` 個分支與前 `20` 個索引。初始搜尋量為 `4 × 3 × 2 × 20 = 480` 個葉節點候選。找到一個熟悉地址只能確認一條候選路徑，不一定復原了完整錢包；還要檢查找零、後續索引、其他帳戶、描述符細節與交易紀錄。明確各維度可讓復原重現，避免無邊界試錯。

### 帳戶 xpub 為何不是一般公開資料

對非硬化 BIP-32 子金鑰，私有純量滿足 `child = parent + tweak (mod n)`。以模數 `101` 的簡化範例說明：若帳戶擴展公鑰暴露的衍生資料決定 `tweak = 37`，對應子私有純量洩露為 `12`，則 `parent = 12 - 37 mod 101 = 76`。真實 BIP-32 使用 secp256k1 群階與 HMAC 衍生值，但代數後果相同：父層 `xpub` 加上一個對應的非硬化後代私鑰，可能洩露父層擴展私鑰及其子樹。硬化帳戶邊界正是為了限制這種故障。

<a id="risks"></a>

## 風險與審查缺失

- **助記詞或密碼短語錯誤：** 任一單字、詞序、Unicode 正規化規則或密碼短語不同，都會產生另一個看似有效的根金鑰。
- **衍生方案錯誤：** 若錢包採用其他助記詞方案、曲線、KDF 或主金鑰演算法，套用 BIP-32 只會衍生出無關金鑰。
- **網路或幣種類型錯誤：** 在其他命名空間下衍生出的正確根金鑰也能產生格式合理的地址，而目標鏈仍可能完全未被掃描。
- **用途或腳本錯誤：** 混淆 `44'`、`49'`、`84'` 或 `86'` 會漏掉實際持有資金的 Bitcoin 輸出類型。
- **硬化標記缺失：** `7`、`7'`、`7h` 與 `7H` 可能被軟體以不同方式解析或拒絕；硬化子金鑰與一般子金鑰不能互換。
- **帳戶索引錯誤：** 只檢查帳戶 `0'`，可能漏掉後續邏輯帳戶中的資金或權限。
- **外部與找零分支混淆：** 只掃描分支 `0`，可能漏掉分支 `1` 的找零輸出或錢包特有的分支配置。
- **地址索引錯誤：** 找到熟悉的第一個地址，並不能證明後續索引、略過的索引或匯入地址都已涵蓋。
- **地址間隔造成漏掃：** 連續 `20` 個未使用的外部地址，可能讓標準 BIP-44 掃描在後續非標準用址之前停止。
- **略過帳戶造成漏掃：** 依序探索帳戶時，流程可能在一個未使用帳戶處停止，因而漏掉其後建立的帳戶。
- **Bitcoin 策略不完整：** 缺少描述符、腳本、門檻、金鑰順序、指紋或校驗和時，僅靠路徑可能無法重建已有資金的輸出。
- **錢包特有慣例：** 應用程式可能使用一般復原工具未列舉的舊版、專有或遷移路徑配置。
- **擴展公鑰洩露隱私：** `xpub` 可能暴露地址群、交易紀錄、餘額與未來的非硬化子地址。
- **擴展私鑰暴露過多：** 匯入 `xprv` 可能洩露整個子樹，而不只是某筆交易所需的一個葉節點。
- **BIP-32 父層金鑰洩露：** 父層 `xpub` 與對應的一個非硬化子私鑰結合，可能還原父層擴展私鑰及其子樹。
- **過度相信地址格式：** 地址語法有效，並不能證明種子、路徑、網路、腳本或所有權正確。
- **同地址跨鏈混淆：** 同一 EVM 金鑰可在多個網路對應為同一地址，但餘額、nonce、代幣與風險彼此獨立。
- **惡意復原軟體：** 網站、擴充功能、螢幕分享工具、剪貼簿記錄器或仿冒裝置都可能竊取根秘密。
- **匯入與歸集混淆：** 匯入金鑰會保留舊權限；歸集或遷移會建立交易，必須複核手續費與目的地址。
- **復原範圍不完整：** 只找到一筆餘額，卻未驗證簽章、找零、代幣合約、角色、授權、驗證者金鑰與備份，仍可能讓資產隱藏或持續暴露。

<a id="misconceptions"></a>

## 常見誤解

### 衍生路徑是密碼或秘密嗎？

不。路徑通常描述公共結構，應該作為恢復元數據保存。它不會取代助記詞、密碼、種子、私鑰或錢包策略。公開路徑可能會洩露組織資訊，但僅擁有路徑本身並不賦予簽署權限。

### 相同助記詞一定會自動復原相同錢包嗎？

不行。結果還取決於助記詞方案、精確的密碼短語、種子處理、導出算法、路徑、曲線、網路以及地址或腳本的構建。即使錢包軟體接受相同的單詞，它也可能選擇不同的預設值。

### 幣種類型能阻止金鑰用於其他鏈嗎？

不。幣種類型是一個衍生命名空間和相容性約定，而不是協議權限。軟體可以在其他地方衍生或重用一個金鑰，而 EVM 網路通常會對相同的私鑰公開相同的帳戶地址。

### 復原後的空帳戶能證明資產已消失嗎？

不。它僅證明目前查詢的特定地址和網路未檢測到餘額。錯誤的路徑、賬戶、分支、腳本類型、發現限制、代幣索引或網路選擇都可能隱藏預期的歷史。

### 復原工具能安全嘗試所有可能路徑嗎？

不行。搜尋空間可能很大，錢包約定並非完全通用，將根密鑰暴露給不受信任的工具本身就是一個損失事件。使用來源、記錄的指紋和地址、有限的離線探索，以及驗證過的軟體來縮小搜尋範圍。

<a id="related"></a>

## 相關主題

- [HD 錢包](/zh-tw/crypto/hd-wallet/)
- [助記詞](/zh-tw/crypto/seed-phrase/)
- [冷錢包](/zh-tw/crypto/cold-wallet/)
- [硬體錢包](/zh-tw/crypto/hardware-wallet/)
- [公鑰與私鑰](/zh-tw/crypto/public-private-key/)

<a id="sources"></a>

## 來源

- [BIP 32：分層確定性錢包](https://bips.dev/32/) - Bitcoin Improvement Proposals（訪問日期：2026-08-19）
- [BIP 39：生成確定性密鑰的助記碼](https://bips.dev/39/) - Bitcoin Improvement Proposals（訪問日期：2026-08-19）
- [BIP 44：用於確定性錢包的多帳戶層級](https://bips.dev/44/) - Bitcoin Improvement Proposals（訪問日期：2026-08-19）
- [BIP 49：P2WPKH 嵌套在 P2SH 帳戶的衍生方案](https://bips.dev/49/) - Bitcoin Improvement Proposals（訪問日期：2026-08-19）
- [BIP 84：P2WPKH 帳戶的衍生方案](https://bips.dev/84/) - Bitcoin Improvement Proposals（訪問日期：2026-08-19）
- [BIP 86：單鍵 P2TR 輸出的密鑰派生](https://bips.dev/86/) - Bitcoin Improvement Proposals（訪問日期：2026-08-19）
- [SLIP-0044：BIP-0044 註冊的幣種](https://github.com/satoshilabs/slips/blob/master/slip-0044.md) - SatoshiLabs Improvement Proposals（訪問日期：2026-08-19）
- [ERC-2334：BLS12-381 確定性帳戶層級](https://eips.ethereum.org/EIPS/eip-2334) - Ethereum Improvement Proposals（訪問日期：2026-08-19）

Source: https://wiki.fcontext.com/zh-tw/crypto/derivation-path/index.mdx
