1. 引言

以比特幣同以太坊為代表嘅無許可區塊鏈,雖然革新咗去中心化系統,但亦因其資源密集性而備受批評。雖然工作量證明(PoW)共識機制嘅能源消耗已被廣泛討論,但全節點所需嘅龐大且不斷增長嘅儲存開銷卻相對較少受到關注。本文通過首次實證研究區塊鏈節點如何利用帳本數據進行交易同區塊驗證,來填補呢個空白。核心目標係探索同量化能夠將PoW區塊鏈嘅儲存佔用從數百GB大幅減少到更易管理規模嘅策略,而無需更改底層網絡協議

2. 背景與問題陳述

比特幣等區塊鏈嘅去中心化安全模型要求全節點儲存同驗證完整嘅交易歷史。呢個造成咗巨大嘅進入門檻,限制咗網絡嘅去中心化。

2.1 無許可區塊鏈嘅儲存負擔

截至本研究進行時,比特幣區塊鏈需要超過370 GB嘅儲存空間。呢個增長隨住採用率同時間呈線性關係,構成咗長期嘅可擴展性挑戰。高儲存需求令用戶唔願意運行全節點,可能導致網絡集中喺少數資源充足嘅實體手中,呢個同去中心化嘅基本原則相違背。

2.2 現有解決方案及其局限性

先前嘅方法包括檢查點同快照協議,呢啲都需要硬分叉或共識層面嘅修改。Bitcoin Core提供咗修剪選項,但缺乏智能指引——用戶必須任意選擇保留閾值(以GB或區塊高度計),有刪除仍然相關嘅未花費交易輸出(UTXO)或儲存不必要數據嘅風險。

3. 方法論與實證分析

本研究基於對真實比特幣節點運作嘅數據驅動分析。

3.1 數據收集與節點行為剖析

作者對Bitcoin Core客戶端進行咗監測,記錄咗長時間標準節點運作期間所有嘅磁碟讀取操作。咁樣創建咗一個詳細嘅剖析檔案,顯示喺驗證新區塊同交易時,會存取邊啲特定數據(舊區塊、交易)。

3.2 驗證所需數據使用分析

關鍵發現係絕大部分歷史區塊鏈數據好少被存取。驗證主要依賴於:

  • 當前嘅UTXO集合(所有可花費輸出嘅集合)。
  • 近期區塊(用於鏈重組檢查)。
  • 特定嘅歷史交易,僅在驗證引用深層歷史嘅花費時先需要。

呢個模式揭示咗本地儲存完整鏈存在顯著嘅冗餘。

4. 建議嘅儲存減少策略

基於實證分析,本文提出客戶端策略。

4.1 無需協議更改嘅本地儲存修剪

最直接嘅策略係一個智能修剪算法。節點唔係簡單地按區塊高度截斷,而係可以動態保留:

  1. 完整嘅UTXO集合。
  2. 整個鏈嘅區塊頭(幾GB)。
  3. 僅保留近期區塊滾動窗口嘅完整區塊數據(例如,最後10,000個區塊)。
  4. 被未花費但「陳舊」嘅輸出引用嘅特定舊交易。

呢個方法完全兼容現有嘅比特幣節點。

4.2 進階客戶端策略

為進一步減少,節點可以採用「延遲獲取」模型。如果所需嘅歷史交易未喺本地儲存,節點可以按需從點對點網絡請求。呢個用少量嘅驗證延遲(獲取時間)增加,換取大量嘅儲存節省。密碼學證明,例如默克爾證明,可以確保獲取數據嘅完整性,而無需信任提供數據嘅節點。

5. 結果與評估

~15 GB
可實現嘅儲存佔用
>95%
相比370+ GB嘅減少幅度

5.1 可實現嘅儲存佔用減少

研究表明,通過實施智能修剪策略,一個完整嘅比特幣節點可以將其本地儲存需求減少到大約15 GB,同時保持完整嘅驗證能力。呢個包括UTXO集合(~4-5 GB)、所有區塊頭(~50 MB)以及一個近期完整區塊嘅窗口。

5.2 性能與開銷權衡

「延遲獲取」策略會產生可忽略嘅計算開銷,用於生成或驗證默克爾證明。主要嘅權衡係當需要從網絡獲取數據時,區塊驗證時間可能會增加,估計喺正常網絡條件下約為幾百毫秒——對於喺資源受限設備上運行節點嚟講,呢個係一個微小嘅代價。

6. 技術細節與數學框架

修剪數據同按需獲取交易嘅完整性由默克爾樹保障。一個節點從區塊高度 $h$ 請求交易 $tx$ 時,可以向對等節點請求該交易連同一個默克爾路徑證明 $\pi_{tx}$。儲存咗包含默克爾根 $root_h$ 嘅區塊頭嘅節點,可以通過重新計算嚟驗證證明:

$\text{Verify}(tx, \pi_{tx}, root_h) = \text{true}$ 如果 $\text{MerkleHash}(tx, \pi_{tx}) = root_h$

咁樣確保咗交易確實係規範鏈嘅一部分,而無需整個區塊。需要深層歷史交易嘅概率被建模為UTXO集合年齡分佈嘅函數,研究發現呢個分佈極度偏向近期輸出。

7. 分析框架:個案研究

場景:一間新創公司想為支付服務運行一個完全驗證嘅比特幣節點,但雲端儲存預算有限。

框架應用:

  1. 剖析:分析佢哋嘅交易模式。佢哋主要處理客戶支付,呢啲支付幾乎總是花費喺最近100個區塊內創建嘅輸出。
  2. 修剪:配置節點保留最近1440個區塊(約10日)嘅完整區塊同完整嘅UTXO集合。
  3. 緩存與獲取:為獲取嘅舊交易實現一個小型LRU緩存。如果出現一筆罕見嘅花費5年前硬幣嘅交易,節點會從網絡用默克爾證明獲取佢,緩存佢,然後驗證佢。
  4. 監控:追蹤緩存命中/未命中率同驗證延遲。根據觀察到嘅性能調整完整區塊窗口大小。

呢個框架允許佢哋在減少超過95%儲存成本嘅同時,保持安全性同自主權。

8. 未來應用與研究方向

  • 輕客戶端增強:呢啲策略模糊咗全節點同輕客戶端(SPV客戶端)之間嘅界線。未來工作可以開發「混合節點」,提供接近全節點嘅安全性,同時儲存佔用接近輕客戶端。
  • 以太坊與狀態增長:呢啲原則適用於以太坊嘅狀態增長問題。狀態樹嘅智能修剪,結合無狀態客戶端協議,可能係一個強大嘅組合。
  • 去中心化儲存整合:節點可以將修剪嘅區塊數據卸載到去中心化儲存網絡(如Filecoin、Arweave),並通過內容標識符獲取佢哋,進一步增強韌性。
  • 標準化:建議將呢啲智能修剪同獲取協議作為BIP(比特幣改進提案)提出,以實現更廣泛嘅採用同互操作性。

分析師觀點:核心洞見、邏輯流程、優點與缺陷、可行建議

核心洞見:本文最有價值嘅貢獻唔單止係一個新嘅修剪算法——而係對「全節點」教條嘅實證解構。佢證明咗370 GB嘅區塊鏈主要係一個冷存檔;活躍嘅、對安全至關重要嘅工作集細一個數量級。呢個從根本上挑戰咗極端儲存係自主權不可避免成本嘅觀念,就好似CycleGAN論文通過展示你唔需要配對數據來重新定義圖像到圖像轉換一樣。兩者都係識別同利用隱藏嘅、現實世界數據不對稱性嘅例子。

邏輯流程:論證極具說服力且簡單:1) 測量節點實際使用嘅數據(唔係儲存嘅)。2) 發現使用高度集中。3) 因此,安全地丟棄未使用嘅大部分。4) 提供可靠獲取罕見所需部分嘅機制。呢個係一個經典嘅工程優化循環,應用於一個先前被認為不可變嘅系統。

優點與缺陷:其優點在於其實用性同即時部署能力。佢唔需要共識改變,令佢成為經常充滿爭議嘅區塊鏈領域中罕見嘅「雙贏」提案。然而,分析有一個關鍵嘅、未言明嘅缺陷:佢為穩態進行優化。佢低估咗鏈重組期間嘅資源需求。深度重組雖然罕見,但可能需要快速驗證許多舊區塊。一個修剪過嘅節點需要即時獲取數GB數據,可能導致佢落後並無法及時驗證競爭鏈——呢個係一個安全風險。因此,本文嘅權衡唔單止係延遲換儲存,仲係極端網絡事件嘅韌性換取日常效率。

可行建議:對於開發者,要點係立即喺錢包同節點軟件中實現可配置嘅智能修剪。對於研究人員,下一步係量化重組風險並設計能夠承受網絡壓力嘅獲取協議。對於投資者同項目,呢項工作降低咗運行安全節點嘅運營成本,令真正去中心化嘅商業模式更可行。呢個係將區塊鏈基礎設施從愛好者追求轉變為可擴展實用工具嘅一小步但關鍵一步,與Gartner等機構追蹤嘅更廣泛行業趨勢——邁向高效、可持續嘅分佈式系統——保持一致。

9. 參考文獻

  1. Sforzin, A., Maso, M., Soriente, C., & Karame, G. (年份). On the Storage Overhead of Proof-of-Work Blockchains. 會議/期刊名稱.
  2. Nakamoto, S. (2008). Bitcoin: A Peer-to-Peer Electronic Cash System.
  3. Bitcoin Core Documentation. (n.d.). Blockchain Pruning. Retrieved from https://bitcoin.org/
  4. Buterin, V. (2017). On Sharding Blockchains. Ethereum Foundation.
  5. Bünz, B., et al. (2018). Bulletproofs: Short Proofs for Confidential Transactions and More. IEEE S&P.
  6. Gervais, A., et al. (2016). On the Security and Performance of Proof of Work Blockchains. ACM CCS.
  7. Zhu, J., Park, T., Isola, P., & Efros, A. A. (2017). Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks. ICCV. (CycleGAN)