Transaction-Verification

礦工是否必須將所有塊保存在記憶體中?

  • March 16, 2016

執行礦工節點,必須驗證交易。這包括檢查所有交易的所有輸入。

這是否意味著礦工必須將所有區塊鏈保存在記憶體中(目前約為 8.7 GB)?如果沒有,礦工如何找到先前的交易(交易輸入沒有指向包含它的塊的指示)?

不,礦工不需要訪問整個區塊鏈。從技術上講,他們甚至根本不需要它。區塊本身僅用於重新掃描錢包、重組和向其他節點提供區塊。這就是為什麼修剪它們在未來可能會變得可行的原因。

驗證區塊和交易(礦工的基本需求)所需的是未使用交易輸出的數據庫。0.8+ 客戶端以緊湊的形式顯式維護此數據庫(截至 2013 年 5 月,現在大約 200 MB)。

除此之外,礦工還需要維護一個記憶體池:一組針對目前最佳鏈進行驗證的交易,以從中選擇下一個候選區塊的交易。

引用自:https://bitcoin.stackexchange.com/questions/11100