時間:2023-08-19|瀏覽:256
此外,還有其他幾個系統組件: - 鏈管理器:維護給定鏈的狀態,為其他區塊鏈子系統提供設施。其他子系統將查詢最新鏈的狀態以進行運行,并確保入鏈的區塊在進行語義驗證后再包含到鏈中。 - 區塊生成器:在成功進行領導人選舉后,生成一個新的區塊,擴展當前最重的鏈,并通過同步器傳播給其他節點。
從整體來看,Filecoin的區塊鏈發展是通過多輪選舉來進行的,在選舉中,礦工被選為出塊者,并獲得區塊獎勵。Filecoin的區塊鏈依賴于存儲能力來運行,即礦工根據存儲量確定要挖掘的子鏈。存儲能力共識子系統維護著一個存儲礦工參與者的存儲量表,跟蹤他們通過扇區承諾和時空證明為網絡貢獻的存儲量。
區塊是Filecoin區塊鏈的主要單位,其他區塊鏈項目也是如此。區塊消息通過Tipsets連接在一起,Tipsets是區塊消息的集合。Filecoin區塊的結構包括區塊頭、區塊內的消息列表和簽名消息三個部分。
需要注意的是,區塊在功能上與Filecoin協議中的區塊頭相同。雖然區塊頭包含指向完整系統狀態、消息和消息回執的Merkle鏈接,但區塊可以視為這些信息的完整集合,包括狀態樹的完整數據、消息樹、回執樹等。由于完整區塊的大小很大,Filecoin區塊鏈由區塊頭而不是完整區塊組成。
區塊頭是區塊的規范表示,用于在礦工節點之間傳播。通過區塊頭消息,礦工獲得應用關聯的FullBlock狀態和更新鏈所需的所有信息。區塊頭中必須包含的最小信息包括礦工地址、票證、時空證明、父級CID和消息CID等。消息結構必須包括源地址、目標地址、Nonce和GasPrice。
在將消息傳遞給鏈同步邏輯之前,還需要對其進行驗證。除了驗證消息的簽名外,目前沒有對區塊中包含的消息進行語義驗證的方法。如果一個區塊中包含的所有消息在語法上都是有效的,那么可以執行這些消息并生成一個回執。
鏈同步系統可以分階段進行語法和語義驗證,以減少資源消耗。只有當所有測試都成功后,區塊才被標記為已驗證。最終,無效區塊將不會繼續傳播或驗證。