Wormhole Gateway Onboarding Instructions
This page is for any Cosmos chain developer who wants to enable bridging from Gateway. Gateway is Wormhole's Cosmos chain that leverages the Wormhole Guardian network for easy bridging from Ethereum to Cosmos. For an overview of Gateway, see The Gateway to Cosmos.
Propose Adding Your Chain to the Wormhole Guardians
- Open a new GitHub governance discussion under Wormhole Gateway by filling out the Cosmos Chain Governance Proposal Template
- Allow 96 hours for discussion and governance vote
Join the Wormhole Discord
- Join the Wormhole Discord
- Ping the moderator, Susu (
susu.wormhole
), to get added to the#guardian-cosmos
channel
Establish an IBC Connection
-
Allowlist your IBC relayer on Wormhole Gateway
- The IBC relayer should generate an address via the
wormchaind
CLI -
Fill out the IBC relayer allowlist request template below and post the request in the
#guardian-cosmos
channelView IBC relayer allowlist request template
Hey @Guardians! Thank you for passing governance to support **[Cosmos Chain]** via Wormhole Gateway. We are very excited to integrate with Wormhole! We will be using **[Relayer Provider]** as our IBC relayer to support the connection to Wormhole Gateway. Their address is **[Wormhole Gateway address].** Could one of the Guardians please allowlist this address so that it can submit transactions to Wormhole Gateway? We understand that if this address misbehaves, the sponsoring Guardian can remove it from the allowlist at any time, which would effectively shut down IBC bridging to/from our chain and Gateway. Thank you!
- The IBC relayer should generate an address via the
-
Establish the IBC connection
- Please ensure that the parameters
trusting_period
andtrust_threshold
are set to the safest values. For example:Trust_threshold
should be 2/3Trusting_period
should be 2/3 of the unbonding period of your chain
- Please see Wormchain Syncing documentation to learn how to set up your own Wormhole Gateway node to connect your IBC relayer to. Alternatively, you can browse and connect to available public nodes on the Cosmos chain registry
-
Below, you'll find an example IBC relayer configuration for Wormhole Gateway
View example IBC relayer configuration for Wormhole Gateway
[global] log_level = "info" [mode.clients] enabled = true refresh = true misbehaviour = false [mode.connections] enabled = false [mode.channels] enabled = false [mode.packets] enabled = true clear_interval = 50 clear_on_start = true tx_confirmation = true auto_register_counterparty_payee = false [rest] enabled = true host = "127.0.0.1" port = 3000 [telemetry] enabled = true host = "127.0.0.1" port = 3001 [telemetry.buckets.latency_submitted] start = 500 end = 20000 buckets = 10 [telemetry.buckets.latency_confirmed] start = 1000 end = 30000 buckets = 10 [[chains]] id = "wormchain" type = "CosmosSdk" rpc_addr = "..." grpc_addr = "..." rpc_timeout = "10s" trusted_node = true account_prefix = "wormhole" key_name = "default" key_store_type = "Test" store_prefix = "ibc" default_gas = 1000000 max_gas = 9000000 gas_multiplier = 1.2 max_msg_num = 30 max_tx_size = 180000 max_grpc_decoding_size = 33554432 clock_drift = "5s" max_block_time = "30s" ccv_consumer_chain = false memo_prefix = "" sequential_batch_tx = false trusting_period = '14days' [chains.event_source] mode = "push" url = "..." batch_delay = "500ms" [chains.trust_threshold] numerator = "2" denominator = "3" [chains.gas_price] price = 0.0 denom = "utest" [chains.packet_filter] policy = 'allow' list = [ ['transfer', 'channel-3'], # Osmosis transfer ] [chains.address_type] derivation = "cosmos"
- Please ensure that the parameters
-
Share the IBC connection details in the
#guardian-cosmos
channel along with a request to the Wormhole contributors to prepare governance for the IBC connection. Allow 48 hours for governance vote on accepting this IBC channel
Optional UI Integration with Wormhole Connect
Wormhole Connect is a seamless way to embed bridging directly to your app with three lines of code. Integrating Connect is fast, customizable, and brings all the functionality and utility of Wormhole right into your own application.
If you'd like to add your Cosmos chain into Wormhole Connect, please refer to these reference PRs. Wormhole core contributors will need to review your PRs prior to merging them.
Register Assets
This final step involves registering bridged assets with the Cosmos Chain Registry and other relevant wallet and frontend registries.
- Permissionlessly attest the assets you want to bridge into your chain (if not already attested) to Wormhole Gateway
- Raise relevant PRs to ensure that explorers, wallets, and other UIs recognize the Wormhole assets when they are bridged to your chain. Here is an example PR adding Wormhole assets to Osmosis Mintscan
Congratulations! You’ve successfully connected your Cosmos chain to Gateway. If you have any questions or concerns, please contact Susu on the Wormhole Discord.