Bitcoin-Core
比特幣核心全節點的大小會不會太大而無法在普通電腦上執行?
我是比特幣愛好者,沒有電腦科學和密碼學的背景知識。我曾經在筆記型電腦上執行比特幣核心,但意識到它在我的電腦上佔用了太多空間。
我理解比特幣網路是安全的,只要任何人都可以執行比特幣核心的完整節點。然而,讓我擔心的是,有一天完整節點可能會變得太大而無法在普通電腦上執行。比特幣開發者有解決這個問題的辦法嗎?還是真的有問題?
我想听聽加密貨幣開發人員或電腦科學專家的一些回應。
比特幣必須保持一定的平衡才能保持去中心化的能力。正如您正確建立的那樣,這部分是為了確保完全驗證區塊鏈的資源需求不是不合理的。為了方便或降低交易費用,消費者方面一直在推動不斷增加比特幣的資源使用,但這是以去中心化為代價的。對此的限制在某種程度上是有爭議的,但顯然有一些難以避免的限制。
最值得注意的是,在系統設計的這個領域中很難撤消錯誤,過度使用資源實際上是一個永久性的決定,因此您會發現做出的選擇既保守又合理。
我們需要應對以下限制:
- **區塊鏈的大小。**儲存以前驗證過的資訊通常是有利的,即使系統執行並不立即需要它。它使錢包管理更容易,並允許在需要時輕鬆重新同步。這個限制不能超過合理的成本或大眾市場可用的數量。
目前,Dish 上區塊鏈大小的增長受到區塊大小限制的限制。知道平均每小時發生 6 個區塊,並且當 Segwit 交易完全飽和時,它們最多可以達到 4MiB,我們每年有 210 GiB 的有限增長。
節點可以在經過驗證後丟棄這些塊以避免儲存它們,但整個集合必須以某種形式傳輸給它們,通常是通過網際網路,但如果成本更低或需要,可以通過 Bluray、Fedex 或信鴿完成。這是增長規模的限制,因為它不能超過使用者獲取驗證所需數據的能力。
- **UTXO 的大小。**未使用的交易輸出數據庫是未使用的比特幣單位的儲存。這對共識至關重要,並且必須由網路中正在完全驗證的所有節點儲存。該數據庫對其增長的限制較寬鬆,並且有效地受到塊大小的限制,因為它隱含地限制了可以添加到數據庫中的條目數量。不幸的是,如果不對比特幣進行更大的經濟變化以允許“存檔”條目,就沒有太多工作可以減少這 4 GiB 儲存對磁碟的影響。
- **驗證複雜性。**鏈中的交易具有與其驗證相關的成本。ECDSA 用於比特幣是因為它非常節省空間並且適合該任務,但即使實現完全優化,它也不是特別快。同步比特幣鏈涉及數十億個單獨的 SHA256 和 ECDSA 操作,這對消費者處理器在合理時間內可以執行的數量設置了硬性限制。鏈的增長不應超過合理的消費硬體完成驗證的能力。