Logo
    🤝

    Blockchain interoperability notes & references

    Creator
    Alex North
    Created
    Sep 20, 2022 8:27 PM
    Project
    Cross-chain interoperability
    Stage
    Still Valid

    Motivation

    See The modular blockchain operating system metaphor - interop as networking. C.f. transformative power of the internet.

    Thoughts

    If we can get a ZK-friendly subset of chain state (e.g. a market? a new sector storage structure?) then we can verify state proofs in another chain with SNARK.

    Verifying consensus of another chain will be slow – need to wait for finality on that chain.

    References

    https://axelar.network/blog/general-message-passing-and-how-can-it-change-web3

    💡
    But my high level reaction was that it's unfortunate to need to invoke another network with its own PoS consensus etc. What we really want is a proof of the message and response that the user could transport between chains without the need for Axelar as an intermediary. Such proof would probably be chain-specific, but since in the initial special case we know that one of those chains is Filecoin, we could develop an appropriately proveable structure for it. I dunno how to do this yet, but it would make for a truly trustless bridge. I would call this idea "Provable Bridge", but "ZK Bridge" is catchier and invokes the appropriate analogy with ZK rollup (even tho ZK isn't the point).

    Webb protocol

    We build zero-knowledge and multi-party computations systems to enable new cross-chain blockchain use cases

    Big focus on privacy

    https://blog.succinct.xyz/post/2022/09/20/proof-of-consensus

    The best design for blockchain interoperability, assuming two chains with different validator sets, is to have an on-chain light client for a source chain running on the target chain (which is what IBC  does). With this design, there are no additional  trust assumptions placed on cross-chain communication, aside from trusting the economic security of the consensus of each participating chain.

    → Potential collabs

    https://members.delphidigital.io/reports/cosmos-the-evolution-of-ibc

    https://ibc.cosmos.network/

    https://layerzero.network/

    • General purpose interop
    • Looks oracle-based
    • Critique from L2Beat

    Vitalik chain interop, 2016. https://allquantor.at/blockchainbib/pdf/buterin2016chain.pdf

    Algorand state proofs: consensus nodes attest to state root. https://developer.algorand.org/docs/get-details/stateproofs/

    More academic (formally secure) and privacy focused approaches exist based on MPC, which allow private cross-chain smart contracts and private cross-chain smart contracts, also confidential token amounts for input/output.

    In-house expertise on these as @Tore Frederiksen is a co-author on both.

    https://jim.mirror.xyz/a9PxnNed9o8DSpssUBQeZTvRASmDaY_HDAnGXOMyeFY

    Idea: faster light client sync via snapshots, allow fast skipping between snapshots. Combine this with fast-finality epochs?

    Near Rainbow bridge is “trustless”, validates headers on Eth/NEAR in smart contract.

    • https://github.com/aurora-is-near/rainbow-bridge/tree/master/contracts
    • (Older): Embed GitHubEmbed GitHub, https://github.com/near/rainbow-bridge-sol/blob/master/nearbridge/contracts/NearBridge.sol,
    • Relies on a challenge mechanism, e.g. https://decrypt.co/108015/nears-rainbow-bridge-blocks-another-attack-costing-hackers-5-ethereum

    Light clients

    https://medium.com/codechain/blockchain-light-client-1171dfa1269a

    https://geth.ethereum.org/docs/fundamentals/les

    https://blog.ethereum.org/2014/11/25/proof-stake-learned-love-weak-subjectivity

    Finality gadgets

    • https://github.com/w3f/consensus/blob/master/pdf/grandpa.pdf

    CryptoNet is a Protocol Labs initiative.