Open Vishwas1 opened 2 years ago
I received the response for the following questions I asked on Cosmos's Discord Server (build-chains channel) :-
Is it possible for a Zone to establish connection with two or more Hubs at the same time?
Can there be a scenario, where a blockchain decides to be a Hub, but it doesn't want to connect with other Hubs? Or is it a necessary for a new Hub to be connected with other Hubs in the ecosystem?
The Response:
Hey! So I will answer the best I can. 1. Yes. You do this with relayers. You can connect to as many as you want as long as you are running the relayers or validators are (from my understanding). I believe just running the relayer to Cosmos Hub however gives you the ability to utilize IBC across any hub that is relaying to the Cosmos Hub as well. 2. From the best of my knowledge, this is a module-by-module thing including connecting the relayers. So you have modules that are IBC enables or not. If you use another module that is IBC enabled and have the relayer, you then have IBC. Hope that helps but others may be able to explain further
(continuation of response for the second query) You can connect to another chain via a relayer (including non Cosmos Hub). The cosmos hub runs just like any other hub/zone in the cosmos ecosystem. It is just the one run by the builders of the Cosmos SDK and seems to be the "source of truth" per se as in its where most if not all chains are connected to. So simply yes. I am pretty sure you can do that but it is done by a module basis. So for example, if hub 1 does not have an ibc module enabled (ibc transfer module for example), you cant use IBC with that chain. You connect via ports which are module based.
For blockchains that do not have fast-finality, like Proof-of-Work chains, things get a bit trickier. For these chains we use a special kind of proxy-chain called a Peg-Zone.
A Peg-Zone is a blockchain that tracks the state of another blockchain. The Peg-Zone itself has fast-finality and is therefore compatible with IBC. Its role is to establish finality for the blockchain it bridges. Let us look at the following example.