概述
PolkadotXCMP是Polkadot上的鏈間消息傳輸協議,主要用于平行鏈間傳遞消息。XCMP目前處于開發中,有些內容可能會發生變動,不過其架構已經差不多成型。
根據Polkadot自己的說法,XCMP利用基于Merkle樹的簡單隊列機制確保跨鏈交易的保真度。中繼鏈上的驗證人負責把平行鏈出口隊列中的交易轉移到目標鏈的入口隊列中,但是中繼鏈并不會存這個跨鏈交易的原文,而只會存一些少量的消息元數據。
XCMP的目標
1.?快速:消息能快速發至目的鏈;
2.?有序:消息能按序到達目的鏈;
3.?可驗證:能驗證到達的消息確實是發送鏈發送的、能驗證該消息在接收鏈已經被處理;
4.?無遺漏:接受鏈公平地接收每條消息,發送鏈不會無限期等待其消息被接收鏈接收和處理;
Clearpool將DeFi借貸市場擴展到Polygon zkEVM:金色財經報道,去中心化借貸市場Clearpool已經擴展到Polygon zkEVM。此次擴展旨在為用戶提供高速交易、增加資金多樣化和更高的資本效率。Clearpool還與去中心化收益自動化協議Idle合作,在zkEVM池之上構建DeFi基元,以提供不同的風險回報配置文件。[2023/7/31 16:09:09]
XCMP的一些特點
1.跨鏈消息是跨平行鏈之間的消息,消息原文不上中繼鏈。但是目前XCMP還沒有完全實現,現在Polkadot用的是HorizontalRelay-routedMessagePassing(HRMP),HRMP將所有的消息存在中繼鏈,未來會用XCMP取代HRMP。
2.某條平行鏈的收集人構造新區塊時會把以自己為目的地、還未被處理的跨鏈消息都處理下。
Polygon ID 身份基礎設施工具完成三項更新:5月3日消息,Polygon 發推稱,對 Polygon ID 身份基礎設施工具進行三項更新,開發者可以更輕松地將 DID 集成到 DApp 中。其一,與現有工具和項目集成,借助 SelectiveDisclosure 功能,開發者將有權共享憑證中的選定字段,實施新的用例。新的 JS SDK 使開發者能夠在多個設備(Web 錢包、瀏覽器擴展程序等)中創建身份客戶端,該 SDK 包括憑證發行功能,允許從本地設備進行無服務器發行。其二,改進用戶體驗,新的發行人節點用戶界面使設置、管理和使用發行人節點更加容易。在終端用戶方面,現在移動端 SDK 和參考實施應用程序(Polygon ID 錢包)中支持推送通知。其三,為開發者提供新工具,包括 JWZ Validator、部署在 PoS 主網上的 Polygon ID 智能合約、移動端 SDK 的 Android 和 React 版本與在 W3C 注冊的 DID。[2023/5/3 14:40:07]
3.驗證人需要對收集人出的塊進行跨鏈消息的檢驗看看跨鏈消息是否真的被處理過了。因此消息的一些元數據還是會上中繼鏈的。
Orbiter Finance已集成Polygon zkEVM網絡:3月28日消息,Layer 2跨Rollup橋Orbiter Finance宣布已集成Polygon zkEVM網絡,允許用戶在Polygon zkEVM與支持的其他網絡間跨鏈轉移資產。[2023/3/28 13:31:18]
4.任意兩條平行鏈之間傳遞消息必須開一個通道,通道是單向的,所以雙向通信必須開2個。開一個通道需要抵押DOT,通道關閉后會退回DOT。
XCMP的一個簡例
Polkadot的官網舉了一個簡單的例子:假設平行鏈A上部署的一個合約要發一條跨鏈調用的消息給平行鏈B,從而調用位于鏈B上的合約完成資產轉移,其整體流程如下:
Polygon向y00ts支付300萬美元以促成跨鏈遷移:金色財經報道,y00ts創始人Frank在推特Space活動中表示,為促成NFT項目y00ts由Solana向Polygon跨鏈遷移,Polygon向y00ts支付300萬美元。[2023/1/7 10:59:11]
1.調用者在鏈A上調用部署在鏈A上的智能合約,從而初始化一條以鏈B為目的地的跨鏈消息M;
2.鏈A的收集人節點會將這條消息M連同其目的地、時間戳放到A的出口隊列中;
3.鏈B的收集人在正常情況下會輪詢其他所有的平行鏈的收集者節點以查看是否有自己的消息。如果在新一輪詢問中發現有以自己為目的地的消息,那么其會將這條消息放到自己的入口隊列中,以待在產生下一個區塊的時候處理該消息;
4.另外,鏈A的驗證人也會通過讀取鏈A的出口隊列從而知道這條消息;鏈B的驗證人也是。驗證人也需要知道這些消息,因為之后它們都會對這條消息進行驗證;
因Poloniex升級錢包 BCH暫時無法充提:Poloniex交易所官方推特發文稱,因為在5月15日之前升級錢包,現在暫停BCH充提,隨后升級完成將重新啟用錢包。[2018/5/12]
5.當鏈B的收集人節點開始構建一個新區塊的時候,它會處理當前入口隊列中所有的消息;在處理過程中,消息M會執行鏈B中相應的智能合約以此完成預期的資產轉移;
6.然后收集人將這個區塊提交給驗證人,驗證人會驗證消息M是否真的被處理了;如果這條消息被驗證確實處理了,并且這個區塊沒有其他不合法的地方,驗證者就會把該塊確認進中繼鏈中。
這個例子比較簡陋,只是一次對XCMP的管中窺豹,而且還留下了一些坑,如:鏈B是如何知道鏈A給自己發了消息的?跨鏈消息真的是鏈B自己去拿的嗎?這些問題在接下去的內容中會澄清。
總體而言,XCMP主要分為2部分:XCMP消息的分發、XCMP消息的存取。
XCMP消息的分發
XCMP消息的分發其實也是屬于Polkadot網絡的一部分,XCMP不僅要實現接收鏈獲取發送鏈發送的跨鏈消息的,而且要實現高效獲取,盡量降低網絡的整體通信開銷。
雖然XCMP已經設計得盡可能減少中繼鏈的負擔,但作為跨鏈消息雙方的唯一信任中介,中繼鏈仍然是不可或缺的。中繼鏈主要負責與跨鏈消息元數據的相關工作。
當發送鏈發出跨鏈消息后,會將消息包含到自己新出的塊里,經過驗證人驗證后,平行鏈的區塊頭會上中繼鏈,于是中繼鏈就能夠知道發送鏈對接收鏈發送了消息,并將此更新到自己的狀態中。然后接收鏈通過向中繼鏈詢問相關消息的元數據,就能知道自己是否有待接收的跨鏈消息。
假如接收鏈通過中繼鏈知道了發送鏈有一條發給自己的消息,那么消息具體如何傳遞過來,就要看XCMP消息的路由方式。
XCMP消息的路由方式大概有這么幾種:
1.當發送鏈有一個全節點也屬于接收鏈的域的一部分時,發送鏈用gossip發送消息就能使得接收鏈收到消息。
2.當中繼鏈有一個全節點既位于發送鏈的域中也位于接收鏈的域中,則發送鏈用gossip發送消息也能使得接收鏈最終收到。
3.如果以上條件都不滿足,則接收鏈的驗證人會發現沒有收到跨鏈消息。因此接收鏈Validator會主動找發送鏈Validator要這個消息;然后驗證人節點需要在本鏈的網絡中gossip這個消息,使得其他節點都獲得這條消息。
所以說消息傳遞既有可能是發送鏈直接發過來,也可能是接收鏈自己去拿。
「概述」中的簡例是接收鏈自己去拿,而且是收集人找收集人拿,不屬于以上3種情況之一。為什么會如此呢?
因為「XCMP消息的分發」這部分內容其實還沒完全設計好,而且是變動比較多的部分。
未完待續……
更多精彩敬請期待《Polkadot?XCMP》
課后小習題
一共準備了5個小題目
》中)
1.以下內容中,不是PolkadotXCMP設計的目標的是?
快速
消除跨鏈消息的「饑餓」現象
高效
可驗證
2.根據本文內容,目前在PolkadotXCMP不可能發生的消息路由方式的是?
發送鏈將跨鏈消息發送給一個自己的全節點,該全節點轉發至接收鏈
接收鏈的收集人去找發送鏈的釣魚人拿跨鏈消息,然后在本鏈的網絡中gossip這個消息
發送鏈將跨鏈消息發送給一個中繼鏈的全節點,該中繼鏈全節點轉發至接收鏈
接收鏈的驗證人主動去找發送鏈的驗證人拿跨鏈消息,然后在本鏈的網絡中gossip這個消息
作者簡介
樓嵩
來自致力于「構建區塊鏈互聯網絡,打通價值孤島」的BitXHub團隊
研究方向:Web3+
根據中國信息通信研究院日前公布的評測結果,共計49家企業的106款大數據產品通過了評審,其中,螞蟻鏈數據隱私服務是本輪唯一通過全項能力測評的平臺.
1900/1/1 0:00:00官方消息,去中心化虛擬游戲平臺沙盒游戲TheSandbox表示,TheSandboxASSET智能合約很容易出現重復問題,目前還沒有惡意用戶利用該漏洞進行攻擊,其他所有智能合約均不受影響.
1900/1/1 0:00:00Aave生態NFT游戲Aavegotchi宣布主網延遲上線,將優先考慮Layer2擴容方案,最有可能在Matic網絡中推出.
1900/1/1 0:00:00研究人員LeonidasHadjiloizou認為Ripple聯合創始人、前CTOJedMcCaleb目前已經停止出售其持有的XRP.
1900/1/1 0:00:00全球最大不良資產投資機構,全球資產管理公司,橡樹資本集團聯合創始人,最著名的遇險債務專家霍華德·馬克在其給客戶的最新備忘錄中提到,他的家人現在擁有“有意義數量”的比特幣以及其他加密貨幣.
1900/1/1 0:00:00來??源丨《經濟學人》1月9日英文版 編??譯丨后浪財經 原標題:《難以被打敗的比特幣:比特幣可能證明其高價是合理的,但這不會影響全球金融》2013年,比特幣的價格首次飆升至1.
1900/1/1 0:00:00