Home About John Resume/CV References Writing Research

Snowbridge

Overview

Snowbridge is a general purpose, trustless and decentralized bridge between Polkadot and Ethereum. The goal is to launch as common-good bridge on the proposed BridgeHub parachain. Quick Links

Design Notes

light-client verification polkadot

We use Polkadot’s BEEFY gadget to implement an efficient light client that only needs to verify a very small subset of relay chain validator signatures. BEEFY is live on Rococo, and is awaiting deployment on Kusama and Polkadot. Fundamentally, the BEEFY light client allows the bridge to prove that a specified parachain header was finalized by the relay chain.

BEEFY light client

BEEFY bridge pallet.

This pallet is an on-chain BEEFY light client for Substrate-based chains that are using the following pallets bundle: pallet-mmr, pallet-beefy and pallet-beefy-mmr.

The pallet is able to verify MMR leaf proofs and BEEFY commitments, so it has access to the following data of the bridged chain:

  • header hashes
  • changes of BEEFY authorities
  • extra data of MMR leafs

Given the header hash, other pallets are able to verify header-based proofs (e.g. storage proofs, transaction inclusion proofs, etc.).

light-client verification ethereum

We have implemented a Proof-of-Stake (PoS) light client for the Beacon chain. This client deprecates the older PoW light client we developed in 2020.

The beacon client tracks the beacon chain, the new Ethereum chain that will replace Ethereum’s Proof-of-Work consensus method around mid-September, called the Merge. The work we have done consists of the following parts:

Code Review

Signing Mechanisms

Cryptographic Primitives

Proving Mechanisms

Relayer Mechanisms

The relays folder has multiple relayers controlled by execution. All written in go.

Light Client Functionality

Token Lockers

References

Appendices