IBC Security - Thyborg

Thyborg covers the security of the IBC protocol and key concepts around that.

IBC Security - Thyborg

Disclaimer - This is part of our outside perspective series. Curious Cosmonaut Research is not the author we are simply highlighting some good threads and perspectives on the Cosmos ecosystem. We also, therefore, do not guarantee their accuracy.



Author: Thyborg

Source: Twitter Thread

Date: August 2, 2022

Could IBC ever be hacked like @nomadxyz_ yesterday, @harmonyprotocol in  June, @AxieInfinity in March?

While it's early to claim anything in crypto is bullet-proof, let's review why IBC is as secure as an cross-chain protocol can get 🧵

For a basic idea of how IBC works, I recommend giving the thread below a quick read

On the surface, IBC works like other bridges:

- the user locks an asset in the source chain

- a relayer picks up the receipt & delivers to the destination chain

- the destination chain verifies the receipt

- the destination chain mints a representation of the asset


The address holding the assets on the source chain is called the escrow wallet, and I wrote a thread about the Osmosis escrow address for the Cosmos Hub here


That address currently holds 5.5M $ATOM or $56M

So the question is, can that address & the other IBC escrow addresses on every IBC-enabled chain, be compromised?

Interchain Explorer by Cosmostation
Interchain block explorer and data analytics for sovereign blockchain networks.

In short, that's a tall order

That's b/c escrow addresses are controlled by the IBC Go module

GitHub - cosmos/ibc-go: Interblockchain Communication Protocol (IBC) implementation in Golang.
Interblockchain Communication Protocol (IBC) implementation in Golang. - GitHub - cosmos/ibc-go: Interblockchain Communication Protocol (IBC) implementation in Golang.


The module has been thoroughly audited by @informalinc  in January 2021 and is now used in production by 49 Cosmos chains

audits/report.pdf at main · informalsystems/audits
Contribute to informalsystems/audits development by creating an account on GitHub.


Hackers won't be able to gain access to the IBC escrow addresses by socially engineering the multi-sig devs

That was the issue with the Harmony and Ronin hacks

Hackers also won't have a lot of opportunities to exploit errors post "routine upgrade", since we're talking about a complete chain upgrade approved by governance

That was the issue with the Nomad hack


While a software bug is always possible, the fact that 50 sovereign chains are already using the Cosmos stack means that hundreds of devs should have their eyes on the SDK changes

The best part is, IBC is not just for the Cosmos ecosystem:

In theory, every chain is able to implement the light clients that verify the receipts

What is IBC? | Developer Portal
Introduction to the IBC Protocol



IBC light-client implementations are already ongoing for the Polkadot, Near & Avalanche ecosystems

While Ethereum is a different beast b/c of the sheer # of validators & lack of single-slot finality, the Merge and the following upgrades are all steps in the right direction


If you want to keep up-to-date with IBC and the entire Cosmos ecosystem, know that I'm covering it through educative & digestible threads on governance, airdrops, tokens, teams & projects ; you may consider retweeting the first tweet & giving me a follow

@Thyborg_ ✌️