技术 | 波卡XCMP跨链消息传递最新进展_CMP:CHA

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

翻译:PolkaWorld

本文是波卡百科进阶部分的跨链消息传递XCMP章节,XCMP是波卡跨链设计的核心之一,让消息能在波卡各个平行链间传递。

PolkaWorld社区正在陆续翻译波卡百科内容,并将连载在PolkaWorld公众号上。

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

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

广东省东莞市:运用区块链等技术 建设“互联网+电梯”监管平台:据广东省东莞市市场监管局消息,近日,广东省东莞市人民政府办公室印发了《关于进一步加强住宅小区电梯安全管理工作的意见》(以下简称“《意见》”)。《意见》要求市相关行业主管部门和各镇街(园区)积极运用云计算、物联网、区块链、人工智能等数字新技术手段,建设“互联网+电梯”监管平台,通过监管系统互联互通和监管数据共享共用,构建监管风险控制体系,建立以质量和效果为主导的维保监督评价机制,引导住宅小区电梯维保向信息化、精准化、智能化转变,推动监管创新,增强工作实效。[2020/8/14]

XCMP概览

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

动态 | 区块链是个好技术 但被“炒币”耽误了:据每经网报道,区块链从业者王飞飞表示:区块链是个充满想象力的技术,但被‘炒币’给耽误了。交易所和项目方存在潜在利益,有的交易所为了收取项目方佣金也会“睁一只眼闭一只眼”上币。在相关部门加强监管后,依然有人换个“马甲”,以海外注册的方式搅乱币圈和链圈的生态。此外,还存在虚拟货币交易所目前甄别虚拟货币项目的方法尚未成熟,虚拟货币用户进入“存量博弈”等问题。[2018/10/10]

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

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

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

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

动态 | 微软计划整合Azure和区块链技术 在印度打击垃圾电话:据Cnbeta消息,援引Hindustan的报告,鉴于印度地区肆虐的垃圾电话愈演愈烈,微软希望通过和Tech Mahindra的合作使用区块链技术来进行遏制。同很多区块链技术应用相同,微软将会依托在云服务方面的优势来打击垃圾电话。[2018/8/29]

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

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

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

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

现场|孔华威:中国确实掌握了芯片技术 国内区块链技术是有支撑的:金色财经现场报道,6月23日,由北京开国元勋文化促进会携手爱思实验室Aisi Labs主办的“链接?共识2018爱思区块链技术高峰论坛”正式开幕。中科院计算技术研究所上海分所所长孔华威发言时表示:”中国确实掌握了芯片技术,在这个领域里,因为它主要聚焦在以比特币公链为核心的领域里,目前还没有大张旗鼓宣传这方面的芯片技术,是因为有杭州和深圳两家比较厉害的芯片公司,占全世界芯片产业的70%,所以国内区块链技术是有支撑的。“[2018/6/23]

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

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

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

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

垂直消息传递

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

XCMP消息格式

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

XCMP示例

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

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

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

parachainB的收集人节点通常ping所有其他收集人节点去请求新消息。当parachainB的收集人进行下一次ping时,它将在parachainA上看到这个新消息,并将其添加到自己的入站队列中,以便处理到下一个块中。

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

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

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

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

资源

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

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

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

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

水星链

[0:15ms0-1:403ms