區塊鏈可以通過種子(DHT)分發嗎?
我查看了可擴展性討論,其中一個問題是區塊鏈的規模增長過快,因此需要專門的儲存系統,這將導致集中化。
我想知道區塊鍊是否以 Torrent 的工作方式(分佈式雜湊表)在節點之間分佈,以便每個節點不需要儲存整個區塊鏈,但可以向其對等節點詢問它沒有的部分。我知道這會假設節點之間存在某種程度的信任,但這與節點今天第一次下載區塊鏈時相同。
每個節點可能只儲存塊雜湊(並檢查它們從創世塊中是否有效),並且在它通過洪流接收到想要的塊後,只需再次檢查雜湊以查看塊內容是否正確。
區塊鏈可以通過種子(DHT)分發嗎?
可能,但是…
…這樣每個節點都不需要儲存整個區塊鏈…?
你本質上描述的是分片,它被吹捧為乙太坊可擴展性挑戰的答案之一。它在 wiki 的Sharding FAQ中有詳細描述。
簡而言之,分片允許將網路的整個狀態分成稱為分片的分區。每個分片都包含自己的狀態數據和交易歷史子集,並由不同的節點子集託管。因此,節點不需要維護區塊鏈狀態的完整副本。
該項目分四個階段推出,分片的最小實施 - 第一階段 - 幾乎完成(顯然)。第一階段的實施細節可以在這個開發文件中找到。
如需更短、更簡單的閱讀,請參閱:如何擴展乙太坊:共享解釋。(中篇)
此外,有關儲存方面的計劃創新,請參閱:
我認為我們想使用稀疏默克爾樹 https://ethresear.ch/t/data-availability-proof-friendly-state-tree-transitions/1453/6 https://github.com/ethereum/research/blob/主/trie_research/bintrie2/new_bintrie.py
https://gitter.im/ethereum/sharding?at=5ad49182102fac7b7b19334c
另請參閱我的評論:儲存可能是維持 ETH PoS 分片的部分解決方案嗎?.