The Multi-hop IBC upgrade will take IBC to Ethereum and beyond

The State of Interoperability is Broken

Comparing interoperability solutions across all ecosystems, IBC is miles ahead of the competition in security and decentralization. Most believe that IBC can only serve the Cosmos, but Polymer envisions IBC across all chains as the de-facto interoperability standard.

The Future of IBC

Inefficient → efficient connections

Dense → sparse network

Dense versus sparse networks.

In mathematical terms, the blockchain topology changes from exponential O(N²) to linear O(N) growth in the number of connections. This dramatically reduces the cumulative overhead of maintaining connections across the entire network of chains.

Homogeneous → heterogeneous topology

Multi-hop Technical Summary

Multi-hop enabled IBC introduces the ability to define an IBC channel over pre-existing IBC connections. The benefit is that the effective channel connectivity of chains increases while reducing the number of required IBC connections. This allows connection aggregation and efficient routing paths within the Cosmos and efficient routing through Polymer to chains that may have expensive computation like Ethereum.

With multi-hop, IBC channels can be defined over Polymer as a middle connection hop, greatly reducing total connectivity costs while simultaneously connecting to any other connected chain. For example, one could set up an IBC channel over two hops such as Juno ←connection→ Polymer ←connection→ Ethereum.

In addition, increasing load on chains like Osmosis with a large number of inbound connections and channels is not scalable in perpetuity. Client state updates within a connection can crowd out compute space for other transactions at scale (e.g. a Cosmos where we have an ever growing number of chains). Multi-hop will help alleviate this scaling concern.

Technical Specification

  • All IBC channel handshake and packet messages should be able to utilize pre-existing connections
  • Relaying for a multi connection IBC channel should not require additional writes to intermediate hops
  • No additional module or middleware requirements
  • Minimal additional required state and changes to core and app IBC specs
  • Retain desired properties of IBC connection, channel and packet definitions
  • Retain backwards compatibility for messaging over a single connection hop
  • Intermediate connected chains are not required to upgrade to multi-hop IBC

The high level intuition behind our approach is as follows:

  • IBC connections already embed the consensus state of the counterparty chain
  • A chain of IBC connections forms a doubly linked list of pointers to each other
  • Relayers can prove a chain of IBC connections using a chain of merkle inclusion proofs
  • Dapps can commit a message on the source chain and relayers can prove the commitment through a chain of proofs instead of making writes to intermediate connection hops

See below for a visual representation of how IBC connections form a multi-hop IBC channel path from a sending → receiving chain. Each consensus state holds a reference to the next chain in the channel path.

The chains in a channel path form a set of linked state roots by virtue of their IBC connections.

The relayer queries the sending chain (chain0) for a proof of packet commitment. It then queries each subsequent chain for proof of consensus and connection state to establish the relationship described in the figure above. In plain terms, relayers first prove the relationships between the chains starting from the destination to the sender. Lastly, on the sending chain, we prove a specific packet commitment.

Relayer multi-hop proof queries.

Multi-hop proof data and proving logic forms a recursive structure as seen below. There can be any number of connections in the middle step. The proving logic will remain the same but the amount of proof data will increase linearly.

Multi-hop proof verification logic.

An Ecosystem Collaboration

How to Contribute

About Polymer

Follow our Twitter, visit our Website, and join our community on Discord!

--

--

Polymer is building a universal IBC router to connect all chains.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Polymer Labs

Polymer is building a universal IBC router to connect all chains.