You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Standard for exchanging information between different blockchains, centering on Cosmos Hub
Steps
Zone1 commits a message to send TokenA to Hub1
When agreed in Zone1, it is passed to the IBC module
A packet is created and added to Zone1's send queue
Packet contents
Reference to committed block
(Token information and to, from address information)
Source channel / connection
Destination channel / connection
Timeout
Relayer detects the packet addition and sends it to Hub1
Hub1 sends a receipt to Relayer as proof of receipt of the message from Zone1
Relayer sends it to Zone1
Zone1 deletes the corresponding packet from the queue, and informs Hub1 through Relayer that the packet has been deleted.
Hub1 verifies the certificate and creates TokenA
Data Flow
IBCTransferCmd
If you want to transfer coins from another Zone1 (fromChain) to Zone2 (toChain), execute IBCTransferCmd and commit the transaction within fromChain.
IBCRelayCmd
When relaying a Coin, execute IBCRelayCmd to monitor the zone transaction.
Packet contains destination address, amount of coin to be issued, destination chainId
Confirm it and issue a transaction in the destination chain
At this time, the key used for the transaction signature is the key of the destination chain
Elements
Packet
Relayed from one blockchain to another by the relayer process.
The modules which send and receive IBC packets decide how to construct packet data and how to act upon the incoming packet data,and must utilize their own application logic to determine which state transactions to apply according to what data the packet contains.
Channel
Channels are payload-agnostic.
Connection
Protocol for securely establishing a connection between two chains and closing the connection completely
Consensus
Specifies the properties that must be satisfied by the chain consensus algorithm that implements the blockchain communication protocol.
Relayer
Relayer is a monitoring process for receiving data.
Off-chain process protocol that relays data between two chains running the IBC protocol.