Vitalik:區塊鏈擴展性層級可概括為計算、數據和狀態
計算層級
計算是最容易擴展的。它可以被並行化處理,也可以要求區塊構建者提供各種「提示(hints)」,甚至可以用計算結果的證明來替代任意規模的實際計算。
數據層級
數據處於中間層級。如果需要對數據可用性提供保證,那麼這種保證是不可迴避的。但數據是可以被拆分並進行糾刪編碼的。同時也可以實現「漸進式退化」:如果某個節點的數據處理能力只有其他節點的 1/10,它依然可以生成體量為其他節點 1/10 的區塊。
狀態層級
狀態是最難擴展的。要保證哪怕驗證一筆交易的能力,也需要完整的狀態。如果你把狀態替換為一棵樹,只保留根哈希,那麼為了更新這個根,仍然需要完整的狀態。確實存在將狀態拆分的方法,但這些都需要對系統架構進行改造,而且從本質上並不具備通用性。
因此,如果你能在不引入新的中心化風險的前提下,用數據替代狀態,-default 就應該認真考慮這樣做;同樣地,如果你能在不引入新的中心化風險的前提下,用計算替代數據,也同樣值得優先考慮。
