﻿---
title: "區塊確認"
description: "以核驗為先的指南，說明 PoW 確認深度、PoS 安全與最終確定狀態、交易池替換、鏈重組及交易所入金入帳政策。"
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>

## 直接答案

區塊確認是針對特定觀察者與協定的陳述，表示某筆交易已納入該觀察者目前所見標準鏈上的區塊。Bitcoin Core 常用包含式計算方式，將收錄交易的區塊計為第一次確認：若收錄高度為 `h`、最佳鏈高度為 `H`，深度就是 `H - h + 1`。有些服務只計算後繼區塊，顯示為 `H - h`，因此必須明確標示計算方式。

在既定假設下，工作量證明的深度會降低鏈重組風險，卻不存在帶來絕對最終性的神奇數字。權益證明系統可以直接提供協定原生狀態。以太坊區分 `latest`、`safe` 與 `finalized`；固定區塊數、時隙數或經過時間不能取代這些標籤。即使達到鏈上門檻，平台的已偵測、已入帳、可交易與可提領仍是彼此獨立的內部政策狀態。

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

## 運作方式

1. 固定鏈與網路、資產、交易識別碼、節點或 API、觀察時間、共識模型及計算方式。在將相符雜湊視為目標付款前，核對收款方、金額及任何備註或標籤。
2. 區分已簽署、已廣播、獲某節點本地交易池接受及已傳播。交易池是節點的政策視圖，不是全網共識佇列。檢查手續費狀態、未確認祖先交易、手續費替換或相同 nonce 替換，以及衝突花費。
3. 依據區塊雜湊、高度、交易索引及標準鏈祖先關係核驗收錄，不能只看高度或區塊瀏覽器標章。對帳戶型鏈，還要查看收據狀態、日誌及實際狀態變更；已收錄的執行仍可能回復。
4. 依共識模型處理。對 PoW，應聲明計算方式、計算深度，並比較獨立節點所見的最佳鏈與累積工作量。對 PoS，應查詢原生鏈頭、安全、已證成或最終確定狀態；不要由固定區塊或時隙距離推斷。
5. 將生命週期記為明確狀態：已建立、已廣播、本地交易池已接受、已收錄、標準鏈深度或安全/最終確定狀態、已重組、再次收錄、已替換或已衝突。鏈重組不保證原交易會回到每個節點的交易池。
6. 分開維護平台帳本：已觀察、達到網路門檻、已入帳、可交易及可提領。採用平台目前針對資產、網路、金額與事件狀態的政策；維護、法遵與人工覆核都可能帶來獨立延遲。
7. 交叉核驗獨立節點或服務商，並持續監控至所需狀態。記錄雜湊、高度、時間戳記、RPC 標籤及政策快照，預演替換、鏈重組、最終性延遲、節點資料過時、跨鏈橋中繼及平台中斷路徑。

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

## 範例

- **計算方式。** 一筆比特幣交易位於標準鏈區塊 `h = 900,000`，最佳鏈鏈頭為 `H = 900,005`。包含式深度是 `900,005 - 900,000 + 1 = 6 confirmations`；只計後繼區塊的介面則顯示 `900,005 - 900,000 = 5`。只要兩者引用相同區塊雜湊及祖先鏈，這項差異只是術語與計算方式不同。
- **鏈重組與再次收錄。** 交易最初取得 `1 confirmation`，所在區塊為 `900,000`，隨後該區塊離開最佳鏈；若交易仍有效且沒有衝突，確認數會回到 `0`。若交易在 `900,003` 再次收錄，鏈頭到達 `900,006`，包含式深度為 `900,006 - 900,003 + 1 = 4 confirmations`。若已有確認的衝突交易取代它，Bitcoin Core 也可能回報負確認數。
- **PoS 標籤不是區塊計數。** 假設某筆以太坊交易位於執行區塊 `20,000,000`，某節點回報 `latest = 20,000,020`、`safe = 20,000,012` 與 `finalized = 19,999,980`，且全部位於同一祖先鏈。數值上的最新深度為 `20,000,020 - 20,000,000 + 1 = 21`；該交易已安全，但尚未最終確定。必須核對雜湊祖先關係與用戶端的共識標籤，單憑高度並不充分。
- **鏈上門檻與平台入帳。** 某平台政策要求 `6 confirmations`。位於區塊 `900,000` 的入金顯示 `5/6` 時，鏈頭為 `900,004`；顯示達到 `6/6` 時，鏈頭為 `900,005`。若平台隨後實施 `15-minute compliance hold`，鏈上資格與內部入帳、交易或提領時間仍是不同狀態；這段等待不是第七次確認。

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

## 風險

- 查看錯誤的鏈、網路或資產。
- 使用錯誤的交易雜湊、收款方、備註或標籤。
- 將已簽署但尚未廣播的交易當成待處理交易。
- 將某節點的交易池當成全網狀態。
- 漏看政策拒絕、逐出或未傳播。
- 忽略 RBF、相同 nonce 或衝突替換。
- 誤讀未確認祖先、後代交易或交易套件手續費。
- 混用包含式與只計後繼區塊的確認數。
- 信任資料過時、同步中或遭隔離的節點。
- 比較高度時未核對區塊雜湊與祖先關係。
- 因短期 PoW 鏈重組而失去確認。
- 將固定深度視為對任何金額與攻擊者皆絕對安全。
- 混淆經過時間、時隙、時期與實際產出的區塊。
- 將 PoS 鏈頭區塊視為安全區塊。
- 將安全區塊視為最終確定區塊。
- 鏈仍在出塊時漏看最終性延遲。
- 將已收錄但已回復的執行視為應用程式成功。
- 將代幣日誌或區塊瀏覽器介面等同最終狀態。
- 混淆平台偵測、入帳、交易及提領權限。
- 將來源鏈確認視為跨鏈橋、發行方或目標鏈流程已完成。

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

## 常見誤解

- 能搜尋到交易雜湊或看到本地交易池項目，就表示交易已確認。
- 一種確認數計算方式與六次確認門檻適用於所有鏈、金額及服務。
- 支付較高手續費會讓後續區塊或 PoS 最終性更快到來。
- 固定的以太坊區塊數或時隙數等同於 `safe` 或 `finalized`。
- 鏈上收錄或最終確定保證合約執行成功、收款資料正確、平台入帳或跨鏈橋流程完成。

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

## 相關主題

- [交易池](/zh-tw/crypto/mempool/)
- [比特幣](/zh-tw/crypto/bitcoin/)
- [最終性](/zh-tw/crypto/finality/)

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

## 來源

- [Bitcoin: A Peer-to-Peer Electronic Cash System](https://bitcoin.org/bitcoin.pdf) - Bitcoin.org（存取日期：2026-08-13）
- [Payment Processing](https://developer.bitcoin.org/devguide/payment_processing.html) - Bitcoin Developer Documentation（存取日期：2026-08-13）
- [gettransaction](https://developer.bitcoin.org/reference/rpc/gettransaction.html) - Bitcoin Developer Documentation（存取日期：2026-08-13）
- [BIP 125: Opt-in Full Replace-by-Fee Signaling](https://bips.dev/125/) - Bitcoin Improvement Proposals（存取日期：2026-08-13）
- [Proof-of-stake (PoS)](https://ethereum.org/developers/docs/consensus-mechanisms/pos/) - Ethereum.org（存取日期：2026-08-13）
- [Gasper](https://ethereum.org/developers/docs/consensus-mechanisms/pos/gasper/) - Ethereum.org（存取日期：2026-08-13）
- [JSON-RPC API](https://ethereum.org/developers/docs/apis/json-rpc/) - Ethereum.org（存取日期：2026-08-13）
- [Cryptocurrency deposit processing times](https://support.kraken.com/articles/203325283-cryptocurrency-deposit-processing-times) - Kraken Support（存取日期：2026-08-13）

Source: https://wiki.fcontext.com/zh-tw/crypto/block-confirmation/index.mdx
