Why IBC doesn’t exist everywhere

0xpostman
3 min readJan 18, 2023

It’s said a lot that IBC is HARD to add to other chains. Why why why is this ser? There are very technical reasons why, but here are the three main reasons that should be understandable:

Credit: The Incredible Machine, 1993

Finality

IBC needs finality, which means a previous block on a blockchain is not going to be replaced by a validator or miner in the future. Ethereum only gets finality after about 15 minutes. Polygon around 6min. Bitcoin even longer, and rollups even longer longer. And no, just because Celestia is built on Cosmos, doesn’t mean all rollups built on Celestia will have IBC by default.

Cosmos chains mostly use Tendermint consensus, which is “instant” finality (meaning about 5 seconds). Near and Polkadot also have instant finality consensus engines, which is why they are early candidates for having IBC added to them.

Modularity

IBC light client verification requires some heavy computation, and computation is expensive on blockchains. This computation also needs to carry the guarantees of consensus.

For Cosmos chains this can be solved easily by adding the efficient Cosmos IBC module to a Validator’s software and plugging it directly into the consensus engine/blockchain.

In older blockchains which have already been built, and for blockchains which aren’t built in a nicely modular way, this isn’t so simple. Imagine trying to mod a petrol car into an electric car, trying to find a way to access the axel, finding empty space to store the batteries, or adding a charging port to the fuel intake. It’s possible, for sure, but not easy in the slightest. Add to that the extreme security practices needed around these systems, and any modification is going to take a LOT of engineering effort, and testing.

One way of getting computation that carries consensus guarantees is to use the smart contract virtual machine (where Soliditiy would be run in Ethereum). Anyone can get code deployed and executed there and agreed upon by validators. But, virtual machines (the EVM, for example) often don’t run low-level code, and are slower and expensive to run as a result. This is more like trying to drive the wheels of the car by connecting an electric motor to the steering wheel. Zero knowledge tech has been proposed as a solution to running light clients. Succinct is a project working on this.

Politics

You then have political reasons for a gold standard interoperability protocol not being adopted by chains outside the Cosmos. I’m going to leave these to your imagination.

IBC in the blockchain world

We currently have many teams working to build IBC implementations for other ecosystems, and connecting IBC to the non-Cosmos world. Special mention goes to Polymer, Composable Finance, Strangelove and Axelar.

--

--