Crypto glossary
Inter-Blockchain Communication (IBC)
IBC is an open protocol that lets independent blockchains send tokens and messages to each other by verifying one another's state with on-chain light clients.
Inter-Blockchain Communication (IBC) is a messaging standard born in the Cosmos ecosystem. Each connected chain runs a light client of the other chain, so it can check block headers and Merkle proofs itself instead of trusting a third party. Off-chain relayers carry packets between chains, but they cannot forge them: a packet is only accepted if the receiving chain can prove it was committed on the sender.
Most Cosmos SDK chains use IBC to move tokens (the ICS-20 standard), to run interchain accounts that control an address on another chain, and to query remote state. Over the years it has carried a large share of cross-chain traffic in that ecosystem, and newer versions of the protocol aim to connect chains outside Cosmos, including Ethereum.
IBC is only as strong as the light clients at both ends and the code implementing them; bugs in chain-specific modules have required coordinated emergency patches. It also depends on relayers staying online, and tokens that hop across several chains end up with different denominations that are easy to confuse.
Example
A user moves ATOM from the Cosmos Hub to Osmosis: a relayer delivers the IBC packet, Osmosis verifies the proof against its light client of the Hub and credits an IBC-denominated ATOM.
