MAPO Developer Docs
LearnDevelopRunWhitePaperBRC-201
繁體中文
繁體中文
  • 概述
  • 學習
    • 關於 MAP 協議
      • 背景
      • 介紹 MAP 協議
      • MAP 協議的發展歷程
    • 與其他跨鏈模型進行比較
      • MAP 協議與Cosmos& Pokadot
      • MAP vs. 其他無中繼鏈的跨鏈解決方案
    • 技術機制
      • MAP協議'的技術機制
      • 三層結構
      • MAP協議層
      • MAP中繼鏈
        • 概念
        • 與所有鏈的同構性
        • 驗證& 維護網絡
      • MAPO服務(MOS)層
      • MAPO應用層
      • ZK 支持下的輕節點
    • 燃氣費收費模式
    • DAO
    • MAP協議的構建
      • 開發者
      • 驗證者
      • 維護者
      • 信使
      • 流動資金提供者
      • 終端用戶
    • Tokenomics
    • 購買$MAP
  • 開發
    • MAP Relay Chain
      • 入門
        • 構建
        • 製作私有鏈
        • 如何投票
        • 如何取出質押
        • 集成到交易所
        • EVM 兼容鏈接入MAP 中繼鏈
      • 共識
        • 概述
        • Proof-of-Stake
        • 驗證器
          • 驗證器
          • 鎖定的MAP
        • 選舉
        • 獎勵
        • 聚合印章
      • 合約
        • 預編譯合約
        • 創世紀合約
          • ABI
            • AccountsABI
            • ElectionABI
            • EpochRewardsABI
            • LockedGoldABI
            • ValidatorsABI
          • Deploy
      • Marker
        • Genesis
        • 驗證器
        • Vote
        • ContractOwner
        • Common
    • 輕型客戶端
      • 基於輕型客戶端的驗證
      • MAPO輕型客戶端
        • EVM鏈
        • Near
      • 輕客戶端
        • 客戶端管理器
        • BNB 鏈
        • NEAR 協議
        • Polygon(Matic)
        • Ethereum 2.0
        • 維護者
    • MOS 全鏈服務
      • MOS消息指南
        • How It Works
      • MOS 指南
        • 運行原理
        • 如何使用
          • 在Evm鏈的方法
          • 在NEAR協議上
        • 中繼鏈合約
        • EVM鏈合約
        • NEAR 協議合約
      • 信使
      • API
    • OmniChain實例
      • Omni App
      • OmniDictionary
    • API & SDK
      • Butter SDK
      • Atlas JSON RPC
      • Atlas Consensus API
      • MAP掃描API
    • 最新接鏈進展以及對應地址
  • 運行
    • 如何成爲一個新的驗證者
    • 如何成爲一個新的驗證者[進階版]
    • 取出或撤回
Powered by GitBook
On this page

Was this helpful?

  1. 學習
  2. 技術機制

ZK 支持下的輕節點

PreviousMAPO應用層Next燃氣費收費模式

Last updated 1 year ago

Was this helpful?

MAP Protocol 中的輕節點爲MAP中繼鏈和所有鏈接區塊鏈上的智能合約,雖然鏈上智能合約很好地保留了透明度和去中心化,但其燃氣費的消耗是不可忽略的。隨着 ZK 技術的發展,MAP Protocol 的基礎——輕節點的構建和跨鏈證明驗證可以被進一步優化。輕節點狀態轉換的正確性對 MAP Protocol 至關重要,因爲它決定了跨鏈信息的加密證明的有效性。

跨鏈消息的合法性驗證包含兩個主要的驗證 1)驗證區塊頭是否合法; 2)驗證給定的 Merkle 證明是否合法。 根據當前零知識證明的工程經驗,由於 MPT 樹的高度可變等因素影響,運用 zkSNARK 技術爲 MPT 樹的 Merkle Proof 生成合法性證明會存在工程複雜度高和運維開銷大的問題。

但是對於目前主流的 PoS+BFT 類型的區塊鏈,運用零知識證明技術可以優化區塊頭合法性這一步的校驗。

MAP 中繼鏈的輕客戶端構建

不採用零知識證明技術時,輕客戶端內部需要存儲當前驗證者集合所有的公鑰以及各自的權重,當驗證一個區塊的合法性時,需要訪問全部的驗證者集合公鑰,並對參與區塊簽名的驗證者的公鑰進行聚合(MAP 中繼鏈採用了聚合的 BLS 簽名)。而採用零知識證明時,可以將上述過程通過算術電路進行表達,並生成相應的零知識證明。

在這種設計下,輕客戶端內部無需存儲當前所有驗證者集合的公鑰和權重,而僅存儲當前驗證者集合公鑰和權重的承諾值(編碼後的所有驗證者的工業和權重的雜湊值),前述的計算聚合公鑰以及驗證聚合 BLS 簽名合法性的操作均通過算術電路表達,並利用 Groth16 協議計算零知識證明。

也就是在這種方式下,zkSNARK 實際上是證明了當前區塊頭在輕客戶端內部存儲的承諾值所對應的驗證者集合下,是一個合法的區塊頭。也就是輕客戶端關於區塊頭合法性的校驗,從訪問所有的公鑰以及權重、計算聚合公鑰、驗證簽名合法性這一系列操作,簡化成了驗證一個常量大小的 zkSNARK 證明的合法性 。