Avalanche bridging and light clients

I am exploring the possibilities of building bridges between Avalanche and other networks, especially on Athereum part.

  • There would be another blockchain network outside Athereum

  • In this network, there is a light client, either smart contract based or built-in in to a node for Athereum

  • If there is a transfer between networks, a token gets locked up in Athereum

  • Logs of this transaction are verified in another network

  • Another network mints corresponding amount of tokens

This design is described well in NEAR blog post and describes how their bridge already operates. There is already a EVM light client written as a Rust smart contract.

My questions are:

  • Are Athereum logs and proofs different from other EVM chains for some reason?

  • What existing bridging prior art for Athereum exists? (along the lines described above, or something else)

  • What is the practical block finality Athereum will see - I assume it is same as AVAX, sub-second final final

1 Like

Before I answer these questions, I’d start by just implementing this on the cchain as it exists right now. No need to wait for Athereum.

Question 1: No, they are the same. C-chain on the default subnet is effectively built by taking the EVM codebase and wrapping it in RPC calls which are made by the consensus engine.

Question 2: There’s two bridges currently underway for Avalanche C-chain <> Ethereum. The first one is built by the folks over at ChainSafe, and it’s a two-way smart contracts bridge that is executed by an independent part of “relayers”. The source code for this bridge will be released soon and everyone can launch it using their own relayers. The second bridge is built using a brand new piece of tech that is powered by Intel SGX, and it enables entirely trustless cross-chain execution. This will also be released shortly.

Question 3: Avalanche c-chain has roughly the same finality as Avalanche x-chain. The latter is slightly faster, but not by any measurable amounts that you’d be able to feel.

4 Likes

Thank you for very good answer Kevin! Looking forward for the relayer source code.

Personal opinionated offtopic rant and should go to another thread: I hate “trustless” computing. Is it worth of developing a blockchain if we are going to base the trust to one NYSE listed company and its trade secrets? Interesting to see if trust tradeoffs are working in a specific use case like a bridge where trust to Intel would be needed only for a short duration, like one transaction between chains. Also I understand the trade offs e.g. in the permissioned industry like traditional banking world.