广告

波卡官方发布了XCMP跨链消息传递总体架构

一文读懂波卡XCMP跨链消息传递总体结构

今日,波卡官方发布了XCMP跨链消息传递总体架构。本文是波卡百科(Polkadot Wiki)进阶部分的跨链消息传递 XCMP 章节,XCMP 是波卡跨链设计的核心之一,让消息能在波卡各个平行链间传递。

跨链交易通过基于 Merkle 树的简单排队机制来解决,以确保准确性。中继链验证人的任务是将一个平行链的输出队列上的交易移动到目标平行链的输入队列中。但是,只有关联的元数据作为哈希存储在中继链存储器中。

输入(input )和输出(output)队列有时在代码库和相关文档中分别称为 “入口(ingress)” 和 “出口(egress)” 消息。


XCMP 概览

XCMP 目前正在开发中,细节可能会有变化。但是,总体架构和设计决策如下:

  • 跨链消息不会传递到中继链。

  • 跨链消息将被限制为以字节为单位的最大大小。

  • 平行链可以拒绝来自其他平行链的消息,在这种情况下,调度平行链将知道这个块。

  • 收集人节点负责在链之间路由消息。

  • 收集人生成一个 “出口” 消息列表,并将从其他平行链接收 “入口” 消息。

  • 在每个块上,平行链被期望从所有其他平行链的某个子集路由消息。

  • 当一个收集人产生一个新的块交给验证人时,它将收集最新的入口队列信息并进行处理。

  • 验证人将检查下一个平行链块的新候选者是否包含对该平行链的预期入口消息的处理。

XCMP 队列必须首先通过打开两个平行链之间的通道来启动。通道由发送方和接收方的平行链辨识,这意味着它是一个单向通道。一对平行链之间最多可以有两个通道,一个用于向另一个链发送消息,另一个用于接收消息。通道的打开需要 DOT 押金,当通道关闭时将返回。

水平中继路由信息传递 (HRMP)

在 XCMP 仍在实现的过程中,它的替代品是一种称为 HRMP 的权宜之计(见下面的定义)。HRMP 具有与 XCMP 相同的接口和功能,但是对资源的要求更高,因为它将所有消息存储在中继链存储中。当 XCMP 实现时,HRMP 计划被弃用并逐步淘汰,XCMP 将取而代之。

注意:权宜之计协议是对未完全完成的功能的临时替代。虽然 XCMP 本身仍在开发中,但 HRMP 是一个有效的替代品。

垂直消息传递

垂直消息传递(Vertical Message Passing)有两种,向上消息传递(UMP)和向下消息传递(DMP)。当消息来自平行链或平行线程并从该平行链到中继链时,使用 UMP。当一条消息从中继链发出并以平行链为目的地时,DMP 被用来进行相反的操作。通过 DMP 传递的消息可能来自平行链。在这种情况下,第一个 UMP 用于将消息传递到中继链,而 DMP 用于将其向下移动到另一个平行链。

XCMP 消息格式

有关 XCMP 消息格式的描述,请参阅 GitHub 上的 xcm 格式存储库。https://github.com/paritytech/xcm-format

XCMP 示例

存在于平行链  A 上的智能合约会将一条消息路由到平行链 B,在这个消息中,调用另一个智能合约,在该链中进行一些资产的转移。

Charlie 在 parachain A 上执行智能合约,目的是为 parachain B 上的智能合约发起一条新的跨链消息。

parachain A 的收集人节点将把这个新的跨链消息与目的地和时间戳一起放入其出站消息队列中。

parachain B 的收集人节点通常 ping 所有其他收集人节点去请求新消息(按 destination 字段过滤)。当 parachain B 的收集人进行下一次 ping 时,它将在 parachain A 上看到这个新消息,并将其添加到自己的入站队列中,以便处理到下一个块中。

parachain A 的验证人也将读取出站队列并知道消息。parachain B 的验证人也会这样做。这样他们就能够验证消息传输的发生。

当 parachain B 的收集人正在构建其链中的下一个块时,它将处理入站队列中的新消息以及它可能已经找到/接收到的任何其他消息。

在处理过程中,消息将在 parachain B 上执行智能合约,并按预期完成资产转移。

收集人现在将这个块交给验证人,验证人本身将验证该消息是否已被处理。如果消息被处理并且块的所有其他方面都有效,那么验证人将把 parachain B 的这个块包含到中继链中。

资源

  • XCMP Scheme - Web3 基金会研究 wiki 上关于跨链的完整技术描述:https://research.web3.foundation/en/latest/polkadot/XCMP.html

  • Messaging Overview - 平行链实施指南中的消息传递方案概述:https://w3f.github.io/parachain-implementers-guide/messaging.html

  • XCM Format - XCMP 格式的说明:https://github.com/paritytech/xcm-format

原文:

https://wiki.polkadot.network/docs/en/learn-crosschain

翻译:PolkaWorld

欢迎学习 Substrate: https://substrate.dev/

关注 Substrate 进展:https://github.com/paritytech/substrate

关注 Polkadot 进展:https://github.com/paritytech/polkadot

24小时热点

什么是元宇宙?

人们对于元宇宙的构想十分多元且抽象,这十个问题将抽象的元宇宙 ...

26569

5A数字

最佳比特币炒币机器人平台Dash 2 Trade 2024年最佳机器人炒币AI Robot测试

Dash 2 Trade平台目前提供两种主要的自动化交易机器 ...

10817

Business2Community

课堂:FIN币 (FINL)是什么?

FINL是一种具有去中心化特性和安全自主性的区块链安全存储令 ...

20574

DCG区块链孵化器

MON币(Moneta)合法吗?

MON币(Moneta)是一种新型的数字货币,它由澳大利亚公 ...

2360

利得链

JPEX交易所介绍

JPEX 正在构建加密经济,让加密货币能够被主流接受。 始于 ...

4322

区块矿池统计

BG交易所交易所介绍

Bitgalaxy Global(www.bgex.com) ...

21780

区块矿池统计

数字货币到底是不是骗局

数字货币到底是不是骗局?我认为数字货币并不是一场骗局,但也存 ...

72058

Bitget

O​KEx发布公告指出恢复法币交易

公告表示,我们将于2020年10月21日20:00 (HKT ...

39799

AntPool蚁池

15 个值得关注的潜在 NFT 治理代币空投机会

区块链网QKLW.COM记者报道:新的去中心化 NFT 市场 ...

30481

Wow Yeah沃野

如何制作自己的NFT&挂在网站上卖?

其实大概率卖不出去,除非你的图片帅到爆炸(或者你有独特的营销 ...

253160

CollinStar
广告

热点专题

NFT艺术品到底是什么?

Beeple,“EVERYDAYS: THE FIRST 5 ...

2289224

Opera House

最全的NFT发展史

当我们理解一个新生事物,必须要首先了解其起源,通过对其源头以 ...

1732630

iBox

“华英会”诈骗圈钱5000亿!崩盘后将会凄惨无比

“华英会”崩盘的预警已多次发出,尽管尚未正式宣布崩盘,但大家 ...

1241911

Magic Eden

什么是IDO?这种模式会带来怎样的影响?

要理解IDO(Initial DeFi Offering)初 ...

1130809

Bitstamp交易所

有黑客采取新型 USDT 假充值手法

根据慢雾区情报,有黑客采取新型 USDT 假充值手法,黑客采 ...

983324

区块链博客

4种利用永续合约资金费率套利的策略

下文将介绍在保持市场中立的条件下,如何从永续掉期资金费率中套 ...

858880

DCG区块链孵化器

国内NFT平台是怎么赚钱的?

2021年被称为NFT的“元年”,互联网巨头、各大企业、艺术 ...

783877

CoinBene满币网

宝二爷郭宏才的乘风破浪之旅

10年后的比特币会涨到10万美元吗?宝二爷说过:“先吹吹牛B ...

691409

QuillAudits

链圈百科:韩国政府机构组织图

一、行政院 韩国行政院是一个由政府的行政机构组成的中央政府 ...

679732

BitKeep钱包

Uniswap是什么?

注意!币圈老虎机已开启。 不用注册、不需要KYC、随进 ...

667765

量子链钱包