Back to referenda
Executed

#91 Open/Accept HRMP channel to/from Heiko and Register HKO Asset

Proposer:
0xf9...0f2c
 
in Democracy
17th May '22

TL:DR

This batched proposal is to Accept/Open an HRMP channel with Heiko and to register the HKO token

Summary

We propose to open a bi-directional channel between Moonriver and Heiko. Initially, the main use case will be to transfer MOVR and HKO between the two chains, but it can be further expanded to other use cases. The proposal also includes the HKO asset registration as xcHKO, with the following details:

  • Multilocation: { "parents": 1, "interior": {"X2": [{ "Parachain": 2085 },{"GeneralKey": [72,75,79]}]}}
  • Decimals: 12
  • Name: HKO
  • Symbol: xcHKO

xcHKO will have the following asset ID and XC-20 address:

  • Asset ID: 76100021443485661246318545281171740067
  • XC-20 address: 0xffffffFF394054BCDa1902B6A6436840435655a3

Proposal

Proposal #91with the following hash: 0x0c02d3f74ffe3ff05df3f4013fd9cc00fd5229860c6cf36f1821fc6421e9b20c

Technical details:

The procedure for opening the channels is as follows:

  • Heiko: already proposed to open an HRMP channel to Moonriver
  • Moonriver: democracy batched proposal:
    • Open Moonriver to HeikoHRMP channel
    • Accept Heiko to Moonriver HRMP channel
    • Register HKO asset as an XC-20
  • Heiko: democracy proposal to accept Moonriver to Heiko HRMP channel

Once the HRMP channels are ready, XCM based cross-chain transfer will be possible. The extrinsics that need to be executed on the relay chain, are:

  • To open the HRMP channel from Moonriver: hrmp.hrmpInitOpenChannel(recipient: 2085, proposedMaxCapacity: 1000, proposedMaxMessageSize: 102400), which its hex-encoded call data is 0x3c0025080000e803000000900100
  • To accept this HRMP channel: hrmp.hrmpAcceptOpenChannel(sender: 2023) , which hex-encoded call data is 0x3c0125080000

The *proposedMaxCapacity *and *proposedMaxMessageSize *are set to the values of Kusama’s configuration.activeConfig.hrmpChannelMaxCapacity and configuration.activeConfig.hrmpChannelMaxMessageSize values, respectively.

These extrinsics need to be called from the parachain’s sovereign account as origin, via a democracy proposal. The proposal will use polkadotXcm pallet to send XCM message to the Relay Chain with the following items:

  • Withdraw asset: take funds out of the Sovereign Account of the origin parachain (in the relay chain) to a holding state
  • Buy execution: buys execution time from the relay chain, to execute the XCM message
  • Transact: provides the call data to be executed
  • Deposit asset (optional): refunds the leftover funds after the execution. If this is not provided, no refunds will be carried out

The asset will be registered with the metadata described in the summary. The setAssetUnitsPerSecond was calculated using the value for HKO value on May 16th 2022, targeting a XCM transaction cost of 0.02$.

If you are interested, the hex-encoded call data for this proposal in Moonriver is:

0x1e020c670001010002100004000000000700e876481713000000000700e8764817010700f2052a01060002286bee183c01250800000d0100040001010070617261e7070000000000000000000000000000000000000000000000000000670001010002100004000000000700e876481713000000000700e8764817010700f2052a01060002286bee383c0025080000e8030000009001000d0100040001010070617261e70700000000000000000000000000000000000000000000000000001e020c6900000102009520060c484b4f0c484b4f147863484b4f0c0001000000000000000000000000000000016901000102009520060c484b4fb6cdd5800c2c030000000000000000001300000000050411011da53b775b270400e7e61ed5cbc5a146ea70f53d5a3306ce02aaf97049cf181a555827465153c27bd1cb4ecb05bd36cdffffffff394054bcda1902b6a6436840435655a3181460006000fd

As a prerequisite, the parachain’s sovereign account must contain at least 10 KSM to be locked as collateral (5 for each channel direction), plus some KSM to pay for XCM execution fees.

Show More

Please Log In to comment

Discover similar proposals


Empty Icon

No Active Proposals