比特幣創世區塊的 50 BTC,為什麼永遠花不了?

比特幣創世區塊的 50 BTC,為什麼永遠花不了?的文章封面插畫

打開區塊鏈瀏覽器查看比特幣最早的區塊,會看到其中有一筆建立 50 BTC 的 Coinbase 交易。一般礦工收入經過成熟期後便能使用,因此這筆最早的獎勵看起來也該早已符合條件。

不過,創世區塊是整條歷史的特殊起點。它的交易雖然存在於區塊資料裡,對應輸出卻沒有進入全節點用來判斷可花費資產的 UTXO 集合。經過再多交易確認,也不會改變這個狀態。

所以,這 50 BTC 花不了的原因,並非單純找不到私鑰,也和 Coinbase 成熟期無關。比特幣帳本同時包含「曾經寫入什麼」與「目前哪些輸出能被引用」兩層資訊;創世獎勵只出現在前一層,從未成為後一層的可用項目。

一般 Coinbase 輸出會成為可花費狀態

每個正常區塊的第一筆交易都稱為 Coinbase 交易。它不引用先前輸出,讓礦工依供給規則領取當期補貼,也能收下區塊內普通交易留下的手續費。全節點接受區塊後,會把這筆交易建立的輸出記入本機狀態。

這類新輸出還不能立刻使用。比特幣要求 Coinbase 輸出等待 100 個區塊成熟,避免近期鏈重組使礦工收入消失,連帶讓後續付款失去來源。成熟之後,只要交易滿足原本的花費條件,該輸出就能像其他 UTXO 一樣被引用。

這套流程有兩個必要階段:輸出先被有效歷史建立並納入可花費集合,接著再通過成熟期。等待只能解除第二階段的時間限制,無法替一筆從未進入集合的輸出補上第一階段。

創世區塊只建立共同起點

創世區塊沒有前一個區塊可供連接,軟體也把它當成預先確定的起點。全節點從這裡開始認出後續歷史,卻不會像處理一般區塊那樣,把創世 Coinbase 交易接入可花費狀態。

假設有人建立一筆交易,宣稱要花掉那筆 50 BTC,全節點在查找輸入時不會找到對應 UTXO。即使簽章形式正確、手中也真的握有相符私鑰,驗證仍會停在更前面的問題:共識狀態中沒有那筆可供支出的輸出。沒有可用輸入,簽章便無從授權。

因此,查詢網站能顯示一筆交易及其金額,只能證明相關資料存在於歷史結構。它不會自動證明那筆輸出仍在 UTXO 集合,也不會保證持有人今天可以使用。看見紀錄與驗證可花費性,是兩種不同查詢。

這和遺失私鑰是不同情況

遺失私鑰時,輸出通常仍留在 UTXO 集合,只是沒有人能提出符合花費條件的簽章。創世獎勵的情況更早一步:全節點的可花費狀態裡根本沒有這個輸出。前者缺少有效授權,後者缺少可被授權的資產項目。

若有人之後把比特幣送往外觀上與創世交易相關的收款資訊,那會建立另一筆輸出。每個輸出都有自己的來源與狀態,後來的付款是否能花,不會替最初那筆 50 BTC 改寫身分。兩者即使在瀏覽器畫面中被整理到相近位置,仍不能合併判斷。

原始意圖沒有可靠答案

有人把這項特殊處理解讀成中本聰刻意放棄第一筆補貼,也有人視為早期程式處理創世起點時留下的技術結果。現有公開紀錄不足以確定當時的主觀意圖,嵌在創世區塊裡的報紙標題也無法替程式行為提供唯一解釋。

可以驗證的是今日結果:相容的全節點都不把創世獎勵列為可支出的 UTXO。若想讓它突然能花,必須改變參與者共同執行的規則與歷史狀態;單一錢包、礦工或軟體介面無法自行做到。

這也讓總供給的討論多出一個重要邊界。區塊補貼時程描述規則最多允許建立多少新幣,實際可花費狀態還會受到未領取補貼、明確不可支出輸出與私鑰遺失等情況影響。創世區塊的 50 BTC 是最早也最清楚的例子:歷史留下了金額紀錄,節點狀態卻從未提供動用它的入口。

所以,判斷一筆比特幣能不能花,不能只看畫面上是否出現交易、金額或漫長的確認歷史。真正關鍵的是有效規則下是否存在那筆 UTXO,以及支出是否滿足它的條件。創世獎勵永遠停在歷史起點,正好把「可見」與「可用」之間的差別呈現得最完整。