PAR:平行链上线技术系列五:平行链通过orml-xcm打开hrmp

实验环境

两条平行链-链A(2008)和链B(2009)

一条中继链

实验目的

通过orml-xcm打开链A和链B之间的hrmpchannel

平行链代理账户需要一定的中继链token,所以需要在中级链通过xcmPallet.limitedReserveTransferAssets()向指定的平行链发送代币

下图例子

平行链代理账户,这是通过paraid生成的账户,他是确定的账户。

para-id=2115的平行链代理账户是:5Ec4AhNzgnZ7jXzsdUAEbGBWu2GNfwppYZdf6P1JqNq6BntW

OpenHRMP

开通HRMPchannel的步骤:

发送方平行链发送一个初始化开放通道请求。

接收方平行链接受请求。

OKEx首席执行官:OKEx今日将有一些关于EOS和DeFi的重大更新:OKEx首席执行官Jay Hao发推称,OKEx今日将有一些关于EOS和DeFi的重大更新,疑似将接入基于EOS区块链的DeFi项目挖矿产品。注:此前,OKEx已接入了Uniswap、YFII及Curve挖矿产品。[2020/9/21]

两条链需要互相交替进行操作,因为hrmp是单向的,如果需要进行跨链资产转账就需要打开双向的hrmp通道。

下面通过链A为Sender,链B为Recipient,以打开链A->链B的Hrmpchannel为例

链ASender2008

1.在中继链构造hrmp.hrmpInitOpenChannel()的结构体,并获取encodedcalldata。

这里有三个参数

Recipient接收者的ParaId

proposeMaxCapacity也是个限制的值

公告 | OKCoin国际站关于Epay充值渠道维护公告:据okcoin官网消息,OKCoin将于2018年11月5日 18:00(UTC+8)开始暂停Epay充值渠道(包括银行转账和Epay账号转账),提现功能保持不变。暂停期间,我们将对Epay充值渠道进行维护,Epay重新开通的具体时间请关注后续通知。[2018/11/5]

proposeMaxMessageSizexcm消息的大小限制

其中proposeMaxCapacityproposeMaxMessageSize的值不能设置的太大,必须要比中继链规定的最大配比要小,要不然会出错。通过中继链ChainState下的configuration.activeConfig()方法查找这项约束。

2.回到平行链,通过sudo构造ormlXcm.sendAsSovereign()

ormlXcm.sendAsSovereign(??dest:?XcmVersionedMultiLocation??{????V1:?{??????parents:?1??????interior:?Here????}??}????message:?XcmVersionedXcm??{????V2:???????}??????{????????BuyExecution:?{??????????fees:?{????????????id:?{??????????????Concrete:?{????????????????parents:?0????????????????interior:?Here??????????????}????????????}????????????fun:?{??????????????Fungible:?40,000,000,000????????????}??????????}??????????weightLimit:?Unlimited????????}??????}??????{????????Transact:?{??????????originType:?Native??????????requireWeightAtMost:?1,000,000,000??????????call:?{????????????encoded:???????????}????????}??????}??????{????????DepositAsset:?{??????????assets:?{????????????Wild:?All??????????}??????????maxAssets:?1??????????beneficiary:?{????????????parents:?0????????????interior:?{??????????????X1:?{????????????????Parachain:???????????????}????????????}??????????}????????}??????}????]??})

美国证券法专家:Barry Silbert发布许多关于ETC价格的推特 可能很快就会吸引美国监管机构的注意:美国证券法专家表示,巴里?希尔伯特(Barry Silbert)在推特上发布的许多关于(以太经典)ETC价格推特消息,以及他最近发布的一份简短的“专业提示”,可能会引起负责防止价格操纵的市场监管机构的警告。巴里·西尔伯特(Barry Silbert)为推广以太经典所做的不懈努力再次成为公众关注的焦点。现在,一些美国证券律师告诉路透社,他们认为西尔伯特在社交媒体上的以太经典拉拉队可能很快就会吸引美国监管机构的注意。

Barry Silbert是Digital Currency Group(DCG)的子公司Grayscale的首席执行官。该公司推出了“以太坊经典投资信托基金”,该基金的“股票是第一个单独投资并从价格中获得价值的证券”。[2017/12/25]

-hex-call>为上面我们构造的encodecalldata:0x1700d907000008000000e21f0000

Karura在Kusama平行链插槽拍卖中众筹超50万枚KSM:波卡DeFi平台Acala先行网Karura今日发推特表示,在Kusama平行链插槽拍卖中,Karura社区共众筹了来自1.5万个独立地址的超50万枚的KSM(超供应量的5%)。[2021/6/22 23:57:05]

为我们当前平行链的paraid:2008

交易成功之后,会在中继链执行encodecalldata的函数。

链BRecipient2009

1.在中继链构造hrmp.hrmpAcceptOpenChannel()的结构体,并获取encodedcalldata。

其中参数中的sender为发送者的paraid,也就是对应链A的paraid

2.回到平行链,通过sudo构造ormlXcm.sendAsSovereign()

ormlXcm.sendAsSovereign(??dest:?XcmVersionedMultiLocation??{????V1:?{??????parents:?1??????interior:?Here????}??}????message:?XcmVersionedXcm??{????V2:???????}??????{????????BuyExecution:?{??????????fees:?{????????????id:?{??????????????Concrete:?{????????????????parents:?0????????????????interior:?Here??????????????}????????????}????????????fun:?{??????????????Fungible:?40,000,000,000????????????}??????????}??????????weightLimit:?Unlimited????????}??????}??????{????????Transact:?{??????????originType:?Native??????????requireWeightAtMost:?1,000,000,000??????????call:?{????????????encoded:???????????}????????}??????}??????{????????DepositAsset:?{??????????assets:?{????????????Wild:?All??????????}??????????maxAssets:?1??????????beneficiary:?{????????????parents:?0????????????interior:?{??????????????X1:?{????????????????Parachain:???????????????}????????????}??????????}????????}??????}????]??})

Plasm Network已在波卡Rococo V1上部署首个平行链:1月13日,波卡Polkadot官方宣布,波卡二层扩容协议Plasm Network已在Rococo V1测试网上部署首个平行链。此前消息,波卡测试网Rococo V1已于1月11日开放平行链测试资格注册。[2021/1/13 16:02:25]

为上面我们构造的encodecalldata:0x1701d8070000

为我们当前平行链的paraid:2009

发起交易后,在中继链可以查看到执行成功的日志。

检查是否成功打开HRMPChannel

1.查看中继链存储hrmp.hrmpOpenChannelRequestList()

2.观察中继链页面中parachains的in/out内容

参考链接

OpenHRMPChannel:

https://wiki.acala.network/build/development-guide/composable-chains/open-hrmp-channel

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

链链资讯

[0:0ms0-3:330ms