今日,波卡官方发布了XCMP跨链消息传递总体架构。本文是波卡百科(Polkadot Wiki)进阶部分的跨链消息传递 XCMP 章节,XCMP 是波卡跨链设计的核心之一,让消息能在波卡各个平行链间传递。
跨链交易通过基于 Merkle 树的简单排队机制来解决,以确保准确性。中继链验证人的任务是将一个平行链的输出队列上的交易移动到目标平行链的输入队列中。但是,只有关联的元数据作为哈希存储在中继链存储器中。
输入(input )和输出(output)队列有时在代码库和相关文档中分别称为 “入口(ingress)” 和 “出口(egress)” 消息。
XCMP 概览
XCMP 目前正在开发中,细节可能会有变化。但是,总体架构和设计决策如下:
跨链消息不会传递到中继链。
金色晚报 | 11月21日晚间重要动态一览:12:00-21:00关键词:国会议员、英伟达、萨尔瓦多、Bitfinex
1.美国国会议员要求众议院议长修订基础设施法中的加密条款;
2.三箭资本联合创始人:比特币和以太坊都对过去有太多的怀旧之情;
3.《2020-2021中国城市区块链发展水平评估白皮书》发布;
4.世界经济论坛报告:CBDC在实现互操作性方面是很复杂的;
5.英伟达CEO黄仁勋:元宇宙能帮企业省下数十亿美元;
6.萨尔瓦多将发行10亿美元BTC债券并用其中五亿购买更多BTC;
7.Bitfinex母公司IFINEX宣布与萨尔瓦多合作创建数字资产和证券监管框架;
8.在线礼品卡商店GiftChill接受SHIB作为支付方式。[2021/11/22 7:03:09]
跨链消息将被限制为以字节为单位的最大大小。
金色晨讯 | 纽约地方法院对Bitfinex和Tether提起集体诉讼:1.企业以太坊联盟推出由微软和英特尔支持的奖励代币系统。
2.QuadrigaCX创始人遗孀签署和解协议,将支付900万美元偿还用户。
3.美国纽约南区地方法院对Bitfinex和Tether提起集体诉讼。
4.香港证券和期货委员会公开新一套虚拟货币基金经理人规则。
5.英国金融市场行为监管局加强对加密货币相关业务的审查,超过84家公司正接受调查。
6.印度最高法院将于下周审理加密货币禁令相关案件。
7.俄罗斯钯金生产商Norilsk Nickel正推出钯金稳定币,开始与俄央行进行试点。
8.印度服务商将为阿布扎比市政部门推出土地注册的区块链解决方案。
9.欧盟委员会调查Libra要求回答金融稳定到反恐等大量问题。[2019/10/8]
平行链可以拒绝来自其他平行链的消息,在这种情况下,调度平行链将知道这个块。
金色财经现场报道快的打车创始人陈伟星:比特币可能成为数字时代价值交换的标尺:金色财经现场报道,在2018区块链技术及应用峰会上,泛城资本董事长、快的打车创始人陈伟星表示,目前,整个金融工程里,只要你有钱就可以非常轻松地赚钱,资本利得在国际上占60%,在中国甚至占到80%。资本利得占比过高。每做一次生产交易,利润都被资本持有者赚走了。那么区块链和比特币有什么价值呢?陈伟星表示,人和人之间的协作是需要标尺的,经济当中的标尺就是美元、人民币这些法币,而比特币可能成为数字时代价值交换的标尺,虽然不一定成,但是比特币目前还没有竞争对手。想要把比特币干死,唯一的办法是把黄金放出来。[2018/3/31]
收集人节点负责在链之间路由消息。
收集人生成一个 “出口” 消息列表,并将从其他平行链接收 “入口” 消息。
在每个块上,平行链被期望从所有其他平行链的某个子集路由消息。
比特币暴涨或与Bitfinex平台的大手交易有关:比特币在过去近一小时的暴涨逾1000美元,成交量超过25000个,按照市值7700美元计算,市场成交额接近2亿美元。而其中Bitfinex一家成交量就将近15000个,占了总成交量的60%,据悉,在这一时段内Bitfinex也确实出现了多比大额买入的记录。而伴随着大笔多单的入场以及行情的连续破位,可能会触发空头止损,扩大了市场的这波涨势。[2018/4/13]
当一个收集人产生一个新的块交给验证人时,它将收集最新的入口队列信息并进行处理。
验证人将检查下一个平行链块的新候选者是否包含对该平行链的预期入口消息的处理。
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
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。