IBC Eureka is a new and simplified version of the Inter-Blockchain Communication (IBC) protocol (refer to the following links for a primer on IBC - [1], [2], [3]).
The primary goal of Eureka is to make it easier for VMs other than the Cosmos SDK to integrate IBC.
From a product standpoint, the motivation with Eureka has been to understand and retain the core product offering of IBC - for applications on disparate networks to communicate via light client-backed security - while chipping away at unnecessary protocol complexity.
Feature | IBC Classic | IBC Eureka |
---|---|---|
Handshake Protocol | Requires a 4-step handshake to establish channels and connections | No handshakes required. Uses preconfigured client identifiers. Connections have been removed. |
Channels | Channels connect two ports on two different chains | Channels connect two different chains |
Timeouts | Supports timeout height and timeout timestamp (in nano seconds) | Timeout height is removed. Supports only timeout timestamp (in seconds) |
Encoding Standard | Dependency on protobuf | Supports any encoding standard |
Resource Requirements | Higher resource requirements, especially for non-Cosmos chains | Optimized for low-resource environments like the EVM |
Light Client-Backed Security: Eureka retains the light client security offered by IBC, enabling heterogeneous networks to communicate directly without needing third-party verifiers.
Simplified Design: Instead of relying on complex channel and connection handshakes, Eureka uses direct client identifiers for packet routing. This removes unnecessary abstraction layers that existed in IBC Classic (V1 of the IBC Protocol).
Optimized EVM Compatibility: While IBC Classic is technically compatible with EVM chains, the implementation can be resource-intensive and expensive.
IBC Eureka addresses this issue by providing a more cost-effective integration. Work is ongoing to develop a set of EVM contracts to implement IBC Eureka on the EVM, including a ZK-based light client to verify Tendermint/CometBFT-based chains on Ethereum. This approach means lower on-chain computation costs and cheaper usage. Additionally, work is also ongoing to provide a solution for Ethereum light client proofs to be verified on Cosmos SDK-based chains.
Application Compatibility: Apps using IBC Eureka can still communicate with chains using IBC classic, so you can tap into the existing network of 120+ IBC-connected chains.