﻿---
title: "Nothing at Stake：重複簽名、罰沒、最終性與舊金鑰風險"
description: "Nothing at Stake 是一種權益證明激勵問題：支援相互競爭歷史的邊際成本可能很低。應分別分析可罰沒訊息、預期收益、法定人數交集、證據執行、分叉選擇與弱主觀性假設。"
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.

# Nothing at Stake：重複簽名、罰沒、最終性與舊金鑰風險

> 僅供協定分析教育參考，不構成投資、質押、驗證者營運或安全建議。罰沒與最終性規則因協定及版本而異，實作、金鑰託管、網路狀況、治理與弱主觀性假設仍可能失效。

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

## 直接回答

Nothing at Stake 是一種權益證明激勵問題：如果生成額外簽名的成本很低，而協定又沒有為互不相容的支援施加有效代價，驗證者幫助每一條競爭歷史可能比只選擇一條賺得更多。如果許多驗證者都遵循這種私人激勵，分叉便可能持續獲得支援，收斂會減弱，攻擊者也可能取得在工作量證明中需要高成本才能重現的簽名。

這個說法不表示每個權益證明系統都沒有安全預算，也不表示對落敗分叉的每次投票都是違規。鎖定資本、錯失獎勵、罰沒、延遲提款、分叉選擇規則與最終性規則都能改變收益。哪些簽名訊息與衝突會受罰取決於具體協定和版本；正常的投票更新、延遲訊息或短暫的誠實分叉可能被允許。

必須分開三個問題。第一，當前仍有質押的驗證者能否在近期分支間低成本重複簽名？第二，不可用或對抗性的投票權重能否在不產生兩條最終歷史的情況下阻止進展？第三，質押可提款後，舊金鑰能否偽造一條很長的替代歷史？這些激勵和共識風險相互關聯，但證據、門檻和防禦不同。

Ethereum 是有用的示例，而非通用模板。其共識規範把同一時隙的兩個不同提議列為可罰沒行為，並把雙重投票或環繞投票的證明列為可罰沒行為。分叉選擇可以忽略重複簽名者的影響，最終性則使用超級多數投票和處罰。其他權益證明協定族可能採用不同的領導者選擇、鏈選擇、檢查點、可用性假設或形式化安全模型。

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

## 如何分析 Nothing at Stake

1. **固定協定語境。** 記錄 `protocol`、`version`、`network`、`epoch`、`slot`、`validator set` 和觀察時間。識別正在使用的 `fork choice`、`finality gadget`、`reward rule`、`penalty rule` 與 `withdrawal delay`；“PoS”標籤本身不能確定其中任何一項。
2. **定義簽名動作。** 列出區塊提議、證明、prevote、precommit、憑證或其他訊息及其域。根據引用的規則，區分只是支援不同後代的兩條訊息與正式可罰沒的 `double proposal`、`double vote` 或 `surround vote`。
3. **建立無處罰收益模型。** 估計分支機率、規範分支獎勵、額外簽名與傳播成本、賄賂、錯失機會以及衝突訊息可能獲得的獎勵。比較 `EV(honest)` 與 `EV(equivocate)`，不要因耗電較少就斷定偏離一定有利可圖。
4. **建立可執行損失模型。** 識別鎖定餘額、偵測機率、證據有效視窗、通報路徑、納入與審查風險、初始處罰、關聯處罰、退出、提款時點和放棄的未來收入。文件中寫有處罰，不等於 `slashing evidence` 一定能可靠執行。
5. **分開分叉選擇與最終性。** 重建最新投票、重複簽名和訊息時序如何影響鏈頭，再計算證明或最終確定檢查點所需的權重。分別分析 `safety threshold` 與 `liveness threshold`：扣留投票可以阻止最終性，卻不必產生衝突最終性。
6. **檢驗舊金鑰與同步假設。** 確定退出質押何時不再可處罰、線上節點會拒絕哪段最終歷史、新節點或長期離線節點如何取得 `weak-subjectivity checkpoint`，以及如何驗證檢查點的時效與來源。這是長程問題，不只是近期雙重投票。
7. **對營運與控制做壓力測試。** 測試重複金鑰、故障轉移節點、遠端簽名器、資料庫回滾、用戶端錯誤、相關託管、質押池、委託託管、網路分割、eclipse 攻擊與證據審查。應計算獨立的控制與軟體路徑，而非只數驗證者識別碼。

輸出應是一份帶版本的激勵與共識評估，而不是僅憑術語作出的結論。應展示金鑰究竟可以籤哪些訊息、哪些衝突證據可客觀驗證、抵押品何時仍可追索、哪個門檻保護安全性、哪個門檻允許進展，以及同步節點需要什麼可信狀態。

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

## 計算示例

### 1. 無處罰策略可能偏向兩個分支

假設兩個分支中恰有一個成為規範鏈，分支 A 的機率為 `0.55`，分支 B 的機率為 `0.45`。規範分支上的簽名賺取 `1.00 unit`，落敗分支的簽名收益為零。忽略所有處罰和新增營運成本，只簽 A 得到 `EV(A only) = 0.55 * 1.00 = 0.55 units`；兩個都簽得到 `EV(sign both) = (0.55 + 0.45) * 1.00 = 1.00 unit`。

這個算式說明激勵問題，並不是質押收益預測。它假定無論哪條分支獲勝，兩個簽名中規範分支上的一個都會獲得獎勵；這些行為受允許或未執行處罰；分支結果互斥；驗證者也不會產生價格、聲譽、延遲或未來收入損失。

### 2. 可執行罰沒可以逆轉收益

保留 `1.00 unit` 的規範分支毛獎勵，再加入 `0.02 unit` 的重複簽名賄賂。假設有效證據以 `0.80` 的機率到達處罰機制，可歸因總損失為 `5.00 units`。簡化收益為 `EV(equivocate) = 1.00 + 0.02 - (0.80 * 5.00) = -2.98 units`，低於只簽 A 的 `0.55 units`。

如果偵測、納入、可追索抵押品或未來收入不同，結果也會改變。真實處罰可能取決於有效餘額、關聯違規、時間與協定狀態。營運者應對結果分佈建模並確認實作路徑；把三個自選數字相乘不能證明已部署系統具有激勵相容性。

### 3. 法定人數交集保護安全性，卻可能暴露活性

考慮 `100 stake units`，最終性投票至少需要 `67 units`。任意兩個這樣的法定人數至少重疊 `67 + 67 - 100 = 34 units`。因此，兩條衝突最終歷史要求至少 34 個單位同時參與兩份法定人數憑證；可問責協定可以讓這段交集構成可證明的罰沒行為。

同一門檻對活性有不同含義。如果 `34 units` 扣留有效投票，只剩 `66 units`，低於 67，最終性便可能停滯。這 34 個單位本身無法最終確定兩個分支。安全性失效、可問責證據與無法進展不能被描述成同一事件。

### 4. 舊金鑰形成不同的同步問題

假設線上節點已經最終確定檢查點 `epoch 39,900`，而新節點沒有可信狀態。攻擊者獲得了在 `epoch 10,000` 左右控制足夠質押的金鑰；這些驗證者已經退出，抵押品也無法追索，隨後攻擊者偽造替代歷史直到 `epoch 40,000`。廉價歷史簽名確實相關，但近期驗證者罰沒可能已無法威懾這些舊金鑰。

線上節點會拒絕與其最終檢視衝突的歷史。新節點需要一個近期已認證檢查點或等效協定規則，才能區分歷史並繼續客觀驗證。因此，弱主觀性與提款時點必須納入審查，但仍應與當前鎖定驗證者的即時重複簽名分開分析。

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

## 風險與審查失敗

### 協定與證據錯誤

- 未核對精確簽名欄位與域，就把非規範分叉上的每次投票都稱為可罰沒。
- 把分叉、重組、錯過提議、延遲投票和可證明重複簽名視為同一事件。
- 把 Ethereum 的提議者和證明者條件套用於訊息或最終性規則不同的協定。
- 比較所謂衝突簽名時，遺漏鏈身份、分叉版本、epoch 或 slot。
- 在缺少驗證者身份、域、祖先關係和有效密碼學的情況下，假定兩個簽名即可證明違規。
- 混淆分叉選擇影響、證明、最終確定與應用層結算。
- 閱讀規範中的安全性定理，卻忽略其同步性、誠實性、可用性和對手假設。

### 激勵與執行錯誤

- 只說簽名便宜，卻不計入鎖定損失、錯失獎勵與未來收入。
- 把名義最大罰沒額當成每種狀態下的預期可追索損失。
- 假定證據在提款前總會被觀察、傳播、納入並處理。
- 忽視提議者審查、網路分割、eclipse 隔離與證據視窗到期。
- 在機率、賄賂和損失均未測量時，用玩具期望值作為證明。
- 忽視關聯處罰、代幣價格變化、對沖、外部賄賂與攻擊方收益。
- 假定已退出驗證者的舊金鑰仍有當前可罰沒抵押品支援。

### 營運、集中與恢復錯誤

- 在故障轉移節點上運行同一簽名金鑰，卻沒有持久共享的防罰沒保護。
- 從過時備份恢復簽名器或罰沒資料庫，重新產生曾經簽過的衝突。
- 儘管共享託管、用戶端、雲或治理控制，仍把驗證者金鑰視為獨立營運者。
- 假定委託質押者不會承擔營運者、資金池或再質押依賴導致的損失。
- 恢復長期離線節點時，只信任單個瀏覽器、提供商或捆綁檢查點。
- 只憑質押參與率高就宣稱安全，而不分析質押分佈、門檻與控制。

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

## 常見誤解

- **權益證明真的沒有任何風險資本。** 設計良好的系統可以讓鎖定資本、獎勵與未來參與面臨損失；問題是這些成本對相關偏離是否足夠且可執行。
- **驗證者在兩個分叉上的每條訊息都是雙重投票。** 可罰沒性取決於協定的訊息欄位、域與衝突規則；誠實的分叉選擇更新必須有發生空間。
- **罰沒保證共識。** 罰沒提供問責和激勵，但安全性與活性還取決於門檻、網路、實作、金鑰安全與誠實行為假設。
- **三分之一質押可以獨自最終確定兩個分支。** 在三分之二最終性設計中，約三分之一通常能阻止進展；衝突最終性需要相互重疊的超級多數，並要求其交集參與可罰沒行為。
- **Nothing at Stake 與長程攻擊完全相同。** 兩者都利用廉價簽名，但前者關注對競爭分支的即時支援，後者可用歷史金鑰攻擊缺少近期可信狀態的節點。

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

## 相關主題

- [權益證明](/zh-tw/crypto/proof-of-stake/)
- [罰沒](/zh-tw/crypto/slashing/)
- [分叉選擇規則](/zh-tw/crypto/fork-choice-rule/)
- [最終性](/zh-tw/crypto/finality/)
- [長程攻擊](/zh-tw/crypto/long-range-attack/)

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

## 來源

- [Blockchain Technology Overview](https://doi.org/10.6028/NIST.IR.8202) - NIST（存取日期：2026-08-19）
- [Formal Barriers to Longest-Chain Proof-of-Stake Protocols](https://economics.princeton.edu/working-papers/formal-barriers-to-longest-chain-proof-of-stake-protocols/) - Princeton University（存取日期：2026-08-19）
- [Ethereum Consensus Specifications: Validator](https://github.com/ethereum/consensus-specs/blob/master/specs/phase0/validator.md) - Ethereum Foundation（存取日期：2026-08-19）
- [Ethereum Consensus Specifications: Beacon Chain](https://github.com/ethereum/consensus-specs/blob/master/specs/phase0/beacon-chain.md) - Ethereum Foundation（存取日期：2026-08-19）
- [Casper the Friendly Finality Gadget](https://eips.ethereum.org/assets/eip-2982/arxiv-1710.09437-Casper-the-Friendly-Finality-Gadget.pdf) - Ethereum Improvement Proposals（存取日期：2026-08-19）
- [Ethereum Proof-of-Stake Attack and Defense](https://ethereum.org/developers/docs/consensus-mechanisms/pos/attack-and-defense/) - Ethereum.org（存取日期：2026-08-19）
- [Weak Subjectivity](https://ethereum.org/developers/docs/consensus-mechanisms/pos/weak-subjectivity/) - Ethereum.org（存取日期：2026-08-19）
- [Ouroboros: A Provably Secure Proof-of-Stake Blockchain Protocol](https://eprint.iacr.org/2016/889) - IACR Cryptology ePrint Archive（存取日期：2026-08-19）

Source: https://wiki.fcontext.com/zh-tw/crypto/nothing-at-stake/index.mdx
