• APP內打開
    風險提示:防范以虛擬貨幣/區塊鏈名義進行的非法集資風險。 ——銀保監會等五部門

    一文講解 Map Protocol 跨鏈協議

    白話區塊鏈 2020-12-04 16:42:04
    微信分享

    掃碼分享

    12 月 3 日晚八點,DefiGo 波卡之月邀請來 12 月第一期嘉賓,Map Protocol 研究員知一博士,給大家講解波卡生態黑馬- Map Protocol 跨鏈協議。

    作者:DefiGo / 來源:投稿

    一文講解 Map Protocol 跨鏈協議

    以下為知一博士的分享實錄:

    1. 請知一博士介紹一下 MAP Protocol?

    知一博士:MAP Protocol 是一個波卡系的無中繼的跨鏈橋接協議,基于密碼學的可信驗證,實現對數級空間復雜度的即時鏈間互操作。基于 MAP Protocol 設計的波卡跨鏈橋 MAP bridge 已經獲得了波卡 Web3 基金會的 grant 資助。

    波卡最早出現在 2016 年,當時 Gavin Wood 發表了白皮書,概述了其背后的技術愿景和基本的原理。他指出,盡管區塊鏈技術是有前景的,但存在一些問題,導致它在現實世界中還沒有重要的落地。Polkadot 旨在解決這些問題,并創建一個可擴展(可隨需求增長)的區塊鏈架構,在一個強大的共享安全系統中,具有不同功能的不同區塊鏈可以共存并相互通信,為下一代互聯網奠定基礎。波卡是現在最熱門的區塊鏈賽道,具有大量的生態項目基于波卡的 substrate 架構發布。

    2.MAP Protocol 在波卡生態的角色是什么

    知一博士:波卡生態中的跨鏈有兩大類,同構鏈的互跨和異構鏈的互跨。同構鏈之間的互跨主要是通過波卡的 XMCP 協議來達成的。異構鏈之間的互跨需要通過橋接鏈來達成。MAP Protocol 能夠提供無需額外信任的,基于純密碼學證據的橋接組件,溝通波卡的生態和其他公鏈生態(例如以太坊)

    3.MAP 的橋接方案和其他的橋接方案的主要區別是什么?

    知一博士:目前市面上的大部分跨鏈橋接方案基本都需要依賴于中繼集群來提供跨鏈信息的安全保證。而 MAP 協議是基于密碼學證據來提供對應的安全保證的,因此 MAP Protocol 不需要中繼集群,安全性更高,確認速度更快,但是實現相對復雜。

    MAP Protocol 的跨鏈算法的空間復雜度是對數級的:MAP Protocol 的跨鏈算法要求通訊時交換的的跨鏈數據流時與鏈的長度呈 logN 增長的。也就是說鏈長為 N 的區塊鏈,跨鏈數據流的數量級只有 logN。

    MAP Protocol 的跨鏈互操作是即時的:MAP Protocol 會在底層實現不同區塊鏈系統的 P2P 節點之間的直接連接和數據傳輸,從而達到即時互操作的目的。

    4.MAP 協議技術特點是什么?

    知一博士:1.MAP Protocol 的跨鏈驗證是基于密碼學證據的:

    MAP Protocol 通過隨機抽樣和 MMR 路徑證明來驗證跨鏈數據流的合法性,是純密碼學的證據,任何節點可以本地驗證這些密碼學證據。

    5.MAP Protocol 的技術架構是什么樣的?

    知一博士:我們用下面這個圖來看一下。

    一文講解 Map Protocol 跨鏈協議

    6.MAP Protocol 的核心模塊有哪些?

    知一博士:MAP Protocol 的核心模塊包括負責跨鏈讀取的 Ultra-Light Verification Protocol (ULVP),負責跨鏈寫入的 MAP Feeder 和負責 P2P 節點發現和數據傳輸的 MAP Standardized P2P Stack.

    7. 能否詳細介紹一下這三個模塊?

    知一博士:大部分現有方案的跨鏈讀取是通過 SPV 的方式,這就需要有專門的角色去負責同步不同的區塊鏈的區塊頭,在波卡的生態之中這個角色就 Validator. Validator 會將各個平行鏈里面的區塊頭同步到中繼鏈上。這樣平行鏈的節點就可以通過 SPV 的方式去驗證其他平行鏈里面的交易或者狀態了。

    但是對于非波卡的區塊鏈,就無法直接通過這種方式直接去獲取對方鏈的相關狀態,這時候就需要我們 MAP Protocol 來提供相應的服務了。

    首先 MAP Protocol 需要實現一個 Substrate-based 的 MMR 數據結構,該數據結構是默克爾樹的變種,他的特點是新加入的葉子節點不會改變歷史中間節點的內容,也就是俗稱“append friendly”。這個特點和區塊鏈的區塊添加機制是高度吻合的。這個數據結構我們會用來維護所有的歷史區塊頭信息。也就是說,每一個新產生的區塊都會被作為葉子節點添加到 MMR 之中。而新的 MMR 的 Root 會被存在新生成的區塊頭之內。大概就是如下圖所示一樣。

    一文講解 Map Protocol 跨鏈協議

    在有了 MMR 之后,任意節點就可以只通過最新的區塊頭獲取到整個歷史區塊頭鏈了。獲取的方法就是通過一個 MMR 的路徑證明。如剛才圖中所示,如果需要獲取 Block5 的區塊頭,只需要提供綠色的 MMR 路徑以及 Block12 的內容就可以了。而一旦獲得了 Block5 的區塊頭之后,所有 Block5 這個區塊內部包含的交易,狀態或者交易收據都可以依據類似 SPV 的方式來獲取。我就不一一贅述了。

    但是這只是 ULVP 的部分設計,我們還缺少的是關于最新區塊頭的獲取的方案。這一部分的實現就有 2 個方式,首先第一種就是依靠一個可信任的第三方來進行傳遞,而校驗的邏輯就是驗證可信第三方的數字簽名。這個方案的優點是易于實現,而缺點是中心化,容易被攻擊。第二種方案就是基于隨機抽樣的工作量累積證明來實現。下面我們來介紹一下這個方案的大概思路。

    我們來試想一下,一條大部分節點是誠實節點的 POW 公鏈,相同時間內攻擊者能夠生成的區塊一定是少于誠實節點的。因此,攻擊者如果想要提供一個假的最高區塊頭,就需要偽造一部分區塊來使得自己的區塊高度高于真實的主鏈。如下圖所示 :

    一文講解 Map Protocol 跨鏈協議

    黃色的區塊是合法完成了挖礦的,而四個綠色區塊是攻擊者隨意偽造的,如果只提供最新的一個區塊,由于攻擊者提供的最新區塊是合法完成挖礦的,那么驗證者就會無法分辨真實的主鏈以及攻擊者偽造的鏈。因此,我們需要讓攻擊者和誠實節點都提供更多的區塊。這一過程是通過抽樣的方式來完成的。我們設計的抽樣算法能夠保證,無論攻擊者如何放置偽造的區塊頭,驗證者只需要抽樣很少的區塊頭,就可以找出攻擊者偽造的區塊。具體的細節可以去參考稍后我們提供的相關技術文檔。

    通過這樣的方式我們就可以實現不基于可信第三方的跨鏈信息讀取。而這也是我們 ULVP 設計的初衷。

    MAP-Feeder 子模塊是用來提供跨鏈寫入功能的,MAP-Feeder 模塊會提供被動鏈上的一個 Reference 系統合約范式,該合約會通過 ULVP 模塊提供的接口獲取到主動鏈上的信息。這樣,被動鏈上的任一智能合約都可以通過調用該 Reference 系統合約獲取到主動鏈上的信息并依此進行各自后續操作,從而達成主動鏈對被動鏈的數據寫入。如下圖所示:

    一文講解 Map Protocol 跨鏈協議

    MAP Standardized P2P Stack 子模塊是基于 LibP2P 庫設計的標準化 P2P 節點發現和數據傳輸協議。能夠提供不同區塊鏈系統的 P2P 節點之間互相發現和傳輸數據流的能力。通過將不同的區塊鏈系統的底層 P2P 網絡打通,使得不同區塊鏈系統的節點可以直接連接到一起,提升整個通信的效率和安全,達到即時互操作的目的。

    一文講解 Map Protocol 跨鏈協議

    8. MAP Protocol 有計劃參與波卡的卡槽拍賣嗎?

    知一博士:MAP Protocol 作為波卡的生態資助項目,當然也會參與波卡的卡槽拍賣。目前的計劃是分兩步走。首先 MAP Protocol 會參與 Kusama 網絡的卡槽拍賣,MAP 測試網 Makalu 會作為 Kusama 網絡的一條平行鏈,溝通波卡 Kusama 網絡和以太坊網絡,對各個模塊進行充分的測試和校驗。之后 MAP Protocol 會參與到波卡主網的卡槽拍賣之中,并在成功之后發布 MAP 主網成為波卡的平行鏈。

    9. MAP Protocol 的路線圖是怎樣的?

    知一博士:

    一文講解 Map Protocol 跨鏈協議

    10.MAP 的愿景是什么?

    知一博士:MAP Protocol 期望構建一個具有可互操作性的波卡互鏈網,通過橋接不同的區塊鏈接入波卡生態,將各鏈資源及能力整合互鏈,為區塊鏈應用開發者提供統一的區塊鏈基礎設施,為金融、AI、物聯網、溯源、治理等領域應用提供完整可用的區塊鏈底層基礎設施。

    下載白話區塊鏈APP

    區塊鏈世界入口第一站,人人都能看懂的區塊鏈;24 小時熱點實時追蹤。

    毛片免费看