Blockchain
是否存在(潛在的)“區塊鏈大小問題”,有哪些可用的解決方案?
隨著越來越多的比特幣交易產生,區塊鏈的增長很可能有一天會成為想要(需要?)儲存整個區塊鏈的系統的問題。
- 儲存使用情況
- 客戶端啟動時間
- 首次同步
這個回答“是否有任何關於區塊鏈規模隨時間擴展的研究?” 表明簡化支付驗證是一個很好的解決方案,但據我了解,SPV 需要對個別同行有一定程度的信任,這可能並不符合每個人的口味。
儘管我對區塊鏈的理解還不夠好,甚至不知道這是否明智,但我遇到的這種事情可能是 SPV 與部分區塊鏈記憶體(最不常用?)的混合,客戶端保留一個小區塊鏈的一部分。
這真的是一個問題嗎,是否有任何正在進行的工作來解決它?
或者,如果這不是問題,請幫助我理解原因。
目前,只有全節點,即擁有完整區塊鏈的節點對中繼塊進行盤點。就個人而言,我最近遇到了第一個問題,當我的 Linux 分區用完儲存空間時,但如果我選擇更大的分區大小,我什至可以輕鬆負擔 50GiB 的倍數。
- **儲存使用量:**目前,區塊鏈約為 50GiB。如果它繼續以每 10 分鐘 1MiB 的速度增長,儲存完整的區塊鏈對於那些想要儲存的人來說應該是負擔得起的。
對於所有其他人,現在存在執行修剪節點的選項。一旦啟用修剪節點來中繼塊,我預計服務節點的數量將再次開始攀升。
不過,需要一些具有完整區塊鏈的節點來保護歷史記錄。
- 客戶端啟動時間:這在某些時候可能會成為一個問題,但是區塊鏈數據不會在每次啟動時都得到檢查,而是每個塊只執行一次同步。因此,對於目前的電腦,我認為現在或在可預見的將來都不是問題。
- 首次同步:隨著 Bitcoin Core 0.10 的發布,同步得到了顯著改善。現在,只需按順序處理塊頭,可以按任何順序處理所有其他塊數據。這種調整和其他調整大大減少了趕上網路所需的時間。我的電腦現在可以在幾個小時內完成初始同步。隨著處理能力的擴展,我預計在可預見的未來這將保持可控。
更新:即將到來的 0.12 版本將額外增加 5 倍的同步速度,因為簽名驗證正在執行
libsecp256k1
,這是一個經過專門編碼以更有效地執行比特幣操作的庫。