﻿---
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>

## 直接回答

冷錢包是一種保管系統，將秘密簽署資料和最終核准步驟隔離在日常連網軟體的暴露面之外。資產仍記錄於區塊鏈上；系統控制能授權狀態變更的金鑰或其他權限。「冷錢包」是操作層面的稱呼，而不是協議定義的裝置類別；「冷」是完整工作流程的屬性，並不取決於品牌或連線方式。

硬體簽署裝置可以在連接 USB 時支持冷儲存，因為私鑰可能保持隔離，但如果使用者簽署未驗證的目的地或不透明的合約呼叫，工作流程仍然不安全。相反，僅僅因為空氣隔離電腦沒有網路介面並不代表安全：受損的熵、安裝媒介、交易解析器、可移動媒介、備份或顯示器仍然可能破壞邊界。冷儲存減少了遠端提取金鑰的風險；它並不證明交易意圖、軟體正確性、恢復能力、隱私或最終性。

恢復副本不只是「備份」。助記詞、原始種子、擴展私鑰或等效的恢復份額可能重新建立支出權限，因此需要類似於簽署者的保護。密碼短語、導出路徑、網路、腳本類型、錢包描述符、密鑰順序和閾值策略也可能是恢復預期地址所必需的。公共監視錢包通常無法簽署，但 `xpub` 或描述符可以揭示地址關聯和交易歷史，而 BIP-32 提供的擴展公鑰比普通公鑰具有更強的安全性含義。

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

## 如何設計和驗證冷儲存

### 1. 定義權限與威脅模型

記錄精確的網絡、資產、賬戶或輸出政策、所有者、受益人、恢復權限、預期交易頻率以及最大操作風險。將遠程惡意軟體、惡意應用程式、供應鏈妥協、內部勾結、實物竊盜、脅迫、火災、洪水、損失、能力喪失以及繼承視為單獨的威脅。決定哪些必須保持冷存儲：單個私鑰、門檻內的所有密鑰、簽署者的法定人數、EIP-712 授權密鑰，或能更改錢包代碼的管理員。

### 2. 初始化可信熵與軟體

透過經驗證的管道取得裝置和軟體，檢查初始化狀態，在支援的情況下驗證版本，並拒絕包裝內或協助者提供的任何預生成助記詞或祕密。在受控環境中生成熵，並記錄所用標準與實作。BIP-39 將 `128` 至 `256` 位元的熵編碼為助記詞，並從助記詞與選用的密碼短語導出 `512-bit` 種子；它並不是把自行編寫的易記句子變成安全錢包的標準。

### 3. 綁定可重現的錢包身分

在獲得大量資金之前，請記錄網絡、主指紋、派生標準及完整路徑、帳戶索引、地址或腳本類型，以及首次驗證的接收地址。對於 Bitcoin 策略，保留輸出描述符、校驗和、金鑰來源、閾值、簽署者數量、金鑰順序及找零分支。對於每個簽署者，獨立確認其金鑰及顯示的策略是預期的。將 `xpub` 視為敏感元數據：它可以衍生非加固的公鑰子孫，損害隱私，並且與對應的非加固子私鑰一起，可能曝露 BIP-32 下的父擴展私鑰。

### 4. 備份並測試復原

保護每一個必要的恢復輸入，包括助記詞或分段、可選的密碼短語、描述符或智慧帳戶配置、派生路徑以及恢復說明。不要透過將助記詞拆分為臨時片段來發明方案；當單一副本不足以恢復時，應使用指定的閾值或多重簽章設計。將副本放置在真正獨立的故障域中，並在不暴露其內容的情況下追蹤存取。在受信任的備用或重新初始化的簽署設備上，演練恢復過程，並在清除測試環境前比較預期的指紋、策略以及收款地址。

### 5. 建構並驗證完整意圖

線上協調者可能會獲取鏈狀態並構建未簽名的請求，但它是不受信任的。對於 Bitcoin `PSBT`，請驗證網路、每個輸入及 UTXO 金額、接收方輸出、金額、費用、費率、鎖定時間、簽名雜湊政策，以及每個其他輸出是否為已驗證的找零。對於 EVM 交易，請驗證 `chainId`、`nonce`、`to`、`value`、氣限制、費用上限，以及解碼後的 `data`；對於 EIP-712，請驗證網域、`chainId`、`verifyingContract`、訊息欄位、隨機數以及適用時的截止時間。EIP-712 結構化資料並分隔網域，但標準明確指出它本身不提供重放保護。

### 6. 跨受控傳輸邊界簽署

僅通過經批准的 QR、卡片、電纜或其他通道傳輸必要的未簽名或部分簽名的有效負載。空氣間隙和 QR 代碼並不能使解析器或媒介值得信賴：簽署者必須解析有效負載、驗證政策和變更、顯示實質性後果，並拒絕不受支持的欄位。在多重簽署中，保持簽署者、操作員、地點、供應商和恢復路徑的獨立性，以符合威脅模型；將協調者視為可替換的，且無法在不被察覺的情況下更改政策。廣播前，將已簽署的交易或操作與批准的意圖進行比較。

### 7. 核對、維護並準備遷移

廣播後，將交易標識符、包含的交易、輸出或日誌、實際費用、找零、賬戶 nonce、授權額度以及結果餘額與簽署意圖進行比對，然後等待適合鏈和使用情境的最終性。維護兼容的軟體、經驗證的固件路徑、可讀備份、文件化的描述符，以及定期的恢復演練，且不要將生產秘密輸入到在線設備中。如果任何簽署或恢復秘密可能被暴露，單一密鑰賬戶無法撤銷該密鑰：需建立新的權限、遷移資產和角色、在協議允許的情況下使剩餘權限失效，並保存事件記錄。

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

## 範例解析

### 分階段分配和資金提供

監護計劃限制線上互動錢包至`5%`的`100,000 units`資產價值的`100,000 × 5% = 5,000 units`熱的和`95,000 units`冷。冷目的地首先接收一個`100-unit`測試，以及剩餘的轉移是`95,000 - 100 = 94,900 units`. 在兩次轉帳之後，冷餘額目標是`100 + 94,900 = 95,000 units`；小型測試可以限制一次設定錯誤，但無法驗證未來的簽名或備份恢復。

### Bitcoin PSBT 費用和變更

一個 `PSBT` 使用了 `0.80 BTC` 和 `0.35 BTC` 的輸入，總計 `1.15 BTC`。它支付 `1.00 BTC` 給接收方並估算 `250 vbytes × 8 sat/vbyte = 2,000 sat = 0.000020 BTC`。因此，經驗證的找零必須是 `1.15 - 1.00 - 0.000020 = 0.149980 BTC`。如果簽署者無法從其記錄的政策中識別該找零輸出，即使總數算術上平衡，也不應簽署。

### EVM 最大預算與實際費用

一個 EVM 帳戶以 `5 ETH` 開頭，並批准轉帳 `1.2 ETH`。`30,000 gas` 限額和 `50 gwei` 最高費用意謂著費用預算為 `30,000 × 50 gwei = 0.001500 ETH`。如果交易使用 `21,000 gas`，且有效價格為 `25 gwei`，實際費用為 `21,000 × 25 gwei = 0.000525 ETH`，剩餘 `5 - 1.2 - 0.000525 = 3.799475 ETH`。簽署者必須檢查費用上限及 `data`，而不能假設將收取最高預算，或認為介面看似空白就是普通轉帳的證明。

### 三簽名者中的二人韌性

一個 `2-of-3` 策略，簽署者為 `A`、`B` 和 `C`，有 `3` 個有效簽署組合：`AB`、`AC` 和 `BC`。如果有一個簽署者無法使用，恰好剩下 `1` 個組合；如果有一個簽署者被入侵，該簽署者單獨控制 `0` 個有效組合；如果有兩個簽署者被入侵，他們控制 `1` 個有效組合並可以支出。因此，這種設計容忍一次失效或一次單獨入侵，但不能容忍兩次，而恢復仍然需要正確的描述符、推導數據和鍵序。

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

## 風險與審查失敗

- **網路或策略錯誤：** 在錯誤的鏈、地址類型、腳本、帳戶或智慧帳戶策略下還原有效金鑰，可能得到不同或無法使用的地址。
- **熵不足：** 可預測的隨機數、腦錢包或遭入侵的產生器，可能使離線金鑰也能被猜出。
- **他人提供的秘密：** 預先印製、匯入、拍照保存或由協助者提供的助記詞，可能早已受攻擊者控制。
- **備份洩露：** 紙張、金屬介質、雲端副本、印表機、相機、快遞環節或遺產文件，都可能洩露完整支出權限。
- **密碼短語故障：** BIP-39 密碼短語遺失或輸錯時，可能在沒有報錯的情況下導出另一個錢包。
- **派生參數不一致：** 缺少路徑、幣種、帳戶索引或錢包特定慣例，可能讓原本可復原的資產無法顯示。
- **設定遺失：** 多簽金鑰若缺少描述符、門檻、腳本類型、金鑰來源和順序，可能無法重建已經收款的錢包。
- **公開中繼資料洩露：** `xpub`、描述符、地址清單或協調器資料庫可能暴露餘額、地址關聯和未來地址。
- **供應鏈入侵：** 遭竄改的硬體、韌體、軟體、包裝或更新管道可能替換熵、地址或簽章。
- **主機替換：** 連網協調器可能替換收款方、金額、費用、找零、呼叫資料、型別化訊息或未簽署載荷。
- **顯示能力不足：** 截斷顯示、盲簽、不支援的腳本或不完整解碼可能掩蓋關鍵授權。
- **找零地址攻擊：** 如果簽署裝置未依錢包策略驗證找零，Bitcoin 交易可能把偽裝成找零的輸出傳給攻擊者。
- **費用或 nonce 錯誤：** 過高手續費、過期的 EVM nonce、錯誤鎖定時間或非預期 sighash 模式，可能延遲、替換或改變執行結果。
- **持續存在的合約權限：** 代幣授權、permit、模組、委派和管理員呼叫的效力可能長於眼前這筆交易。
- **傳輸通道攻擊：** QR、USB、記憶卡、線材和解析格式可能攜帶惡意載荷或外洩中繼資料。
- **門檻相關性：** 簽署裝置共置、共用種子、依賴單一供應商或操作員、集中於同一復原地點，都會削弱門檻獨立性。
- **物理攻擊：** 竊盜、脅迫、監視、竄改和秘密遭發現，在沒有網路連線時仍可能發生。
- **環境損毀：** 火災、洪水、腐蝕、介質老化、保險庫無法進入、死亡或失能，都可能使正確秘密無法取得。
- **相容性退化：** 過時韌體、不支援的派生或腳本類型以及未記錄的遷移，可能破壞未來復原或簽署。
- **事件回應不完整：** 只檢查餘額而不遷移金鑰、角色、授權和復原權限，可能讓原有入侵繼續有效。

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

## 常見的誤解

### 冷錢包是否必須永遠保持物理斷開連接？

不。安全性特性在於秘密權限保持隔離，簽署通過受控、可驗證的邊界進行。透過電纜連接的硬體簽署器可能保留此特性；而隔離網路的電腦若設定或程式載荷被破壞，則可能無法保證。

### 硬體設備裡有存放硬幣嗎？

不。區塊鏈狀態記錄資產。該設備保護或使用可以簽署交易的權限，並且相容的恢復材料可能在另一個實現上再現該權限。

### 助記詞備份是否比簽署設備不那麼敏感？

不可以。完整的助記詞和所需的密碼短語可以重新創建錢包。備份通常處於休眠狀態，但其被洩露的後果可能和活躍簽名密鑰被提取一樣決定性。

### 多重簽名是否消除了備份和配置記錄的需求？

不行。閾值可以減少所選單一故障點，但每個密鑰都需要有恢復計劃，而且錢包策略或描述符必須可重現。倖存的密鑰過少或配置遺失仍然可能導致資金被鎖住。

### 成功的測試轉移是否證明冷儲系統是安全的？

不。它一次只確認有限的路徑。它不能證明熵的品質、備份的保密性、還原、未來交易解碼、法定人數獨立性、軟件更新、合約安全性或事件恢復。

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

## 相關主題

- [硬體錢包](/zh-tw/crypto/hardware-wallet/)
- [助記詞](/zh-tw/crypto/seed-phrase/)
- [公鑰與私鑰](/zh-tw/crypto/public-private-key/)
- [多重簽名錢包](/zh-tw/crypto/multisig-wallet/)
- [交易模擬](/zh-tw/crypto/transaction-simulation/)

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

## 來源

- [區塊鏈技術概述](https://doi.org/10.6028/NIST.IR.8202) - NIST（訪問日期：2026-08-19）
- [BIP 32：分層確定性錢包](https://bips.dev/32/) - Bitcoin 改進建議（訪問時間：2026-08-19）
- [BIP 39：生成確定性密鑰的助記碼](https://bips.dev/39/) - Bitcoin 改進建議（訪問時間：2026-08-19）
- [BIP 44：用於確定性錢包的多帳戶層級](https://bips.dev/44/) - Bitcoin 改進建議（訪問時間：2026-08-19）
- [BIP 174：部分簽署的 Bitcoin 交易格式](https://bips.dev/174/) - Bitcoin 改進建議（訪問時間：2026-08-19）
- [BIP 380：輸出腳本描述符一般操作](https://bips.dev/380/) - Bitcoin 改進建議（訪問時間：2026-08-19）
- [BIP 129：Bitcoin 安全多重簽名設置](https://bips.dev/129/) - Bitcoin 改進建議（訪問時間：2026-08-19）
- [EIP-712：類型化結構化數據的雜湊與簽名](https://eips.ethereum.org/EIPS/eip-712) - Ethereum 改進建議（訪問時間：2026-08-19）

Source: https://wiki.fcontext.com/zh-tw/crypto/cold-wallet/index.mdx
