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

## 直接答案

多簽簽署者輪換會改變獲准核准交易的帳戶。通常不必更換錢包地址或轉移資產，而是透過一筆高權限交易更新帳戶的擁有者集合，有時也會更新核准門檻。不同實作的機制並不相同，因此應核驗已部署合約和目前鏈上狀態，不能想當然地認為介面標籤準確描述了權限。

安全的輪換應先證明每位新簽署者的控制權，在整個變更期間維持可執行且不集中的法定簽署人數，再移除舊簽署者並在鏈上核驗最終狀態。若在執行前失去所需法定人數，一般擁有者輪換可能無法進行；為方便而降低門檻則可能製造接管窗口。

人員、簽署裝置、私鑰和鏈上擁有者地址是不同的紀錄。應記錄準確地址、保管人、獨立控制域、備份狀態和輪換原因。任何正當輪換都不需要任何人披露助記詞或私鑰。

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

## 運作方式

1. **盤點目前權限。** 從獨立核驗的鏈和帳戶地址讀取已部署實作、擁有者清單、門檻、nonce、已啟用模組、guard、fallback handler、恢復路徑和任何 timelock。模組或恢復機制可能繞過一般擁有者門檻執行，而限制性 guard 可能阻止原本有效的輪換。
2. **簽署前定義目標狀態。** 記錄變更後的準確擁有者集合和門檻。確認門檻不超過擁有者數量，並且至少有同樣數量的獨立簽署者能保持運作。如果所有裝置都由同一個人、密碼庫、雲端帳戶或管理員控制，地理分離並不等於獨立。
3. **登錄並驗證新簽署者。** 在預定的保管環境中產生或恢復新金鑰，在可信裝置上核驗地址，並透過約定的挑戰或測試簽章證明控制權。透過第二個經過驗證的管道確認地址；不要只依賴複製的聊天文字或錢包介面。
4. **選擇中間狀態安全的順序。** 某些合約可以原子替換一個擁有者。例如，Safe 提供 `swapOwner`，也提供 `addOwnerWithThreshold`、`removeOwner` 和 `changeThreshold`。如果某個實作需要多筆交易，應分析每一步之後的擁有者集合和門檻。除非存在進行中的洩露事件使該順序不安全，否則應先增加並驗證簽署能力，再將其移除。
5. **解碼並模擬準確交易。** 獨立檢查 chain ID、帳戶地址、target、函式選擇器、新舊擁有者地址、最終門檻、nonce、value 和操作類型。將 `delegatecall`、批次處理、模組變更和 guard 變更視為相互獨立的高風險影響。每位簽署者都應核准同一份已解碼 payload 和交易雜湊。
6. **使用現有權限執行。** 除非有文件明確規定其他恢復路徑，否則由目前有效法定簽署人數授權輪換。應急時只能透過經過驗證的聯絡人協調，並使用未洩露的簽署者。如果一般法定人數和預先設定的恢復權限都不可用，標準擁有者管理呼叫無法恢復存取權。
7. **核驗並結束變更。** 確認後直接查詢擁有者集合和門檻，依實作需要檢查發出的事件或 trace，並確認舊地址不再具有權限。讓新簽署者參與一筆需要預定門檻核准、已獲授權的低風險或零價值交易。檢查待處理交易，撤銷前簽署者的鏈下存取權和備份，並封存提案、簽章、交易雜湊、區塊和最終狀態。

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

## 完整範例

假設一個 `3-of-5` 帳戶的擁有者是 `A`、`B`、`C`、`D` 和 `E`，需要用 `F` 替換 `B`。團隊先核驗 `F` 確實控制擬新增的準確地址，並且與其他擁有者保持獨立。對於相容的 Safe 部署，團隊準備 `swapOwner(prevOwner, B, F)`。該呼叫本身是一筆 Safe 交易，因此需要目前擁有者集合提供 `3` 個有效確認。解碼結果應保持擁有者數量為 `5`、門檻為 `3`。

交易確認後，團隊讀取 `getOwners` 和 `getThreshold`，核驗 `B` 已不存在且 `F` 已加入，再由 `F` 與另外兩位擁有者執行一筆獲准的 `0` 價值測試。團隊還要檢查待處理交易：移除後，來自 `B` 的簽章或預先核准可能不再符合擁有者檢查，因此受影響的提案必須取消或重建，不能假定仍可執行。

如果 `B` 可能已經洩露，團隊不會要求其核准移除。由另外三位未洩露的擁有者執行替換，隨後檢查模組、恢復權限、allowance、session key 和已經執行的交易，因為移除 `B` 不會逆轉先前操作，也不會撤銷透過其他路徑授予的權限。如果可用的未洩露擁有者少於 `3` 個，只有預先設定的恢復或管理路徑可能提供協助；分享助記詞或信任主動找上門的「恢復」服務不能替代法定人數。

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

## 風險與控制

- **帳戶或地址錯誤。** 透過獨立裝置和來源核驗 chain ID、多簽地址、實作和新擁有者地址。地址投毒和複製錯誤可能把控制權交給攻擊者。
- **失去法定人數。** 對每個中間狀態建模。過早移除擁有者、把門檻提高到可用簽署人數之上，或同時輪換多個相關裝置，都可能使帳戶無法使用。
- **暫時集中控制。** 較低門檻或新加入的簽署者可能造成由更少參與方控制帳戶的時段。在支援時優先使用原子替換，不要只為簡化儀式而降低門檻。
- **相關性保管。** 如果不同地址的助記詞、裝置、備份、通訊或管理員共用同一個故障域，它們就不獨立。應在不集中秘密的前提下測試恢復。
- **隱藏權限。** 模組、guard、fallback handler、session key、timelock 和恢復合約可能繞過或阻止擁有者路徑。輪換前後都要盤點並核驗。
- **與已洩露簽署者的競速。** 在移除確認前，可疑簽署者可能搶先執行、轉走資產、更改設定或核准另一筆交易。應使用事件應變流程，在適當時採用私有交易投遞並持續監控狀態；不能假定已提交的交易已經贏得競速。
- **過期待處理核准。** 擁有者和門檻變更可能使已收集簽章失效，或改變足夠核准的條件。根據最終狀態重新評估每筆排隊交易，並取消過時提案。
- **錯誤的完成判斷。** 介面顯示成功並不能證明目標狀態已經實現。等待規定的確認政策完成，然後讀取合約狀態並核驗交易 payload、事件和執行結果。
- **離任處理不完整。** 移除鏈上擁有者不會刪除複製的金鑰、組織存取權、relayer 憑證、密碼庫項目，也不會撤銷其他合約和鏈上的權限。應逐項撤銷並保留稽核紀錄。

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

## 常見誤解

- **「輪換就是把所有資產轉到新錢包。」** 很多智慧帳戶多簽會在同一帳戶地址更新擁有者。遷移是另一種操作，只有特定實作或事件應變方案才可能要求遷移。
- **「先新增新簽署者總是安全的。」** 這樣能保護可用性，但也可能暫時擴大獲授權集合。在發生進行中的洩露時，原子替換或另一種應急順序可能更安全。
- **「`3-of-5` 門檻表示任意三位指定人員都可用。」** 合約計算的是有效擁有者帳戶，而不是人員、部門或裝置。共用保管和無法存取的金鑰會降低實際獨立性與可用性。
- **「移除已洩露擁有者就能撤銷損害。」** 確認移除後只能阻止今後使用該擁有者路徑；它不會逆轉已執行交易，也不會撤銷在其他位置建立的權限。
- **「錢包介面就是充分證據。」** 介面和索引服務可能過時、設定錯誤或帶有惡意。應解碼交易，並從獨立核驗的 endpoint 讀取最終合約狀態。
- **「沒有法定人數時，客服可以重設錢包。」** 自我保管多簽只有鏈上編碼或預先設定的權限路徑。沒有有效法定人數或恢復路徑時，存取權可能永久遺失。

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

## 相關主題

- [硬體錢包](/zh-tw/crypto/hardware-wallet/)
- [多簽錢包](/zh-tw/crypto/multisig-wallet/)
- [私鑰管理](/zh-tw/crypto/private-key-management/)
- [智慧帳戶擁有者恢復風險](/zh-tw/crypto/smart-account-owner-recovery-risk/)
- [交易模擬](/zh-tw/crypto/transaction-simulation/)

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

## 來源

- [Safe 智慧帳戶如何運作？](https://docs.safe.global/advanced/smart-account-overview) - Safe Documentation（查閱日期：2026-08-21）
- [addOwnerWithThreshold](https://docs.safe.global/reference-smart-account/owners/addOwnerWithThreshold) - Safe Documentation（查閱日期：2026-08-21）
- [removeOwner](https://docs.safe.global/reference-smart-account/owners/removeOwner) - Safe Documentation（查閱日期：2026-08-21）
- [swapOwner](https://docs.safe.global/reference-smart-account/owners/swapOwner) - Safe Documentation（查閱日期：2026-08-21）
- [changeThreshold](https://docs.safe.global/reference-smart-account/owners/changeThreshold) - Safe Documentation（查閱日期：2026-08-21）
- [OwnerManager.sol](https://github.com/safe-fndn/safe-smart-account/blob/main/contracts/base/OwnerManager.sol) - Safe Ecosystem Foundation（查閱日期：2026-08-21）
- [金鑰管理建議：第 1 部分 - 通則](https://csrc.nist.gov/pubs/sp/800/57/pt1/r5/final) - NIST（查閱日期：2026-08-21）

Source: https://wiki.fcontext.com/zh-tw/crypto/multisig-signer-rotation/index.mdx
