Cryptocurrency

區塊鏈系統如何管理節點的記憶體限制?

  • March 1, 2020

眾所周知,在區塊鏈系統中,每個節點都有歷史數據,其中包含所有以前的交易,以保持完整性並批准未來的交易。如果區塊鏈在日常生活中實現,人們一天進行數十億筆交易,那麼一個節點遲早會耗盡記憶體。這是如何維護或設計的?

沒錯,大多數加密貨幣都將所有交易數據儲存在區塊鏈中,這些數據必須可供每個節點使用。你是對的,這是可擴展性的一個大問題。

正在開發幾種不同類型的策略來進一步改善加密貨幣的擴展性。這些策略通常要麼涉及將區塊鏈分片成多個相關的區塊鏈,因此每個節點只需要擁有完整區塊鏈的某個子集(請參閱乙太坊的分片常見問題解答),或將交易轉移到鏈下(比特幣的閃電網路、狀態通道、乙太坊的雷電等)。鏈下交易系統建立在這樣的想法之上,即如果兩個人在自己之間來回匯款,他們可以建構一些智能合約,這樣他們就可以在他們之間私下即時發送交易,並在鏈上進行包含所有私人交易的交易,以便在任何一個缺陷時安全地收回他們的錢,並且可以在這樣的使用者對之間形成一個網路,以允許網路中任何兩個人之間的即時脫鏈交易。

你必須擁有整個歷史的想法是一種學術性的想法。實際上,您只需要在鏈上擁有一個您可以信任的節點,以及一個包含您需要了解的關於您沒有的鏈的可信記錄(例如比特幣中未使用的交易)。一些“快速”同步方法已經做到了這一點。

你失去的是交易的無可爭議性。如果 100% 的人同意區塊鏈從給定節點開始,並且您擁有最長的區塊鏈,那麼這將被接受為這些交易確實發生的證據。你關心?可能不是。我會說 99.9999% 的時間人們不會對真正的舊交易提出異議。

那麼0.00001%呢?如果您可以信任其他人以分佈式方式幫助您保持鏈,則可以減輕負擔。比特幣的鏈現在可能是150Gb,但是如果100個人一起工作,那麼每人只需要持有1.5Gb,只要你願意一起解決0.00001%的糾紛。如果您開始信任存檔站點,問題就會消失——我們的銀行系統確實可以將每筆交易都詳細存檔。我們已經擁有裝滿這些數據的硬碟。我們只需要相信那些硬碟的持有者他們是正確的。在本地擁有整個區塊鏈可以讓您查看交易是否對您自己有效。

目前還沒有區塊鏈足夠長到真正需要擔心這一點。如果您是一個關心交易的無可爭議性而不信任他人的人,那麼您願意通過微不足道的 150Gb。但是,如果您看到您正在談論的情況,每天有數十億筆交易,我們將探索更多創造性的解決方案。

引用自:https://crypto.stackexchange.com/questions/75750