Skip to content

Latest commit

 

History

History
29 lines (18 loc) · 1.48 KB

solidity-ibc.md

File metadata and controls

29 lines (18 loc) · 1.48 KB

Solidity IBC by IBC Team

Summary: Peer-to-peer, trustless, light client based communication between Ethereum and any Cosmos chain using IBC.

Team Members: Serdar Turkmenafsar (Github, Twitter), Gjermund Garaba (Github, Twitter)

Repo Link: sp1-ics07-tendermint, solidity-ibc-eureka

Additional Resources: Tendermint Light Client Docs


Problem

The blockchain interoperability space is dominated by trusted solutions. IBC is a light-client based protocol that enables peer-to-peer communication between blockchains. It has been difficult to implement IBC in Ethereum due to the cost of running light clients. Even the most efficient existing zk-based solutions require a middleman chain.

These difficulties have led to Cosmos chains being siloed from Ethereum.

Solution

We use SP1 to implement a generic and cheap IBC tendermint light client in Solidity that can be used by any Cosmos chain. We also implement a Solidity IBC module that can be used by any Ethereum contract to send and receive IBC packets.

Performance Metrics

Program Cycle Count
update_client ~7M
uc_and_membership ~8M
membership ~500k
misbehavior ~7M