Decentralized DOT<>ETH Bridges: A Comparison Thread

We agree with Snowfork’s opinion about bridge security. And, we also adopt the on-chain light client verification mechanism. it only needs to trust the validator set (or miners of POW chain) of the two blockchains. there is no external trust needed. So, on-chain light client verification is the best solution from a security point of view.

Darwinia is not just a bridge but supports various cross-chain message support and services, including integrated XCMP, routing, Oracle-based messages, or future Rollup Messages. Darwinia Network Provides Programmable Cross-Chain Messaging Network For dApp Developers.

To support such services, we split the architect into three layers, the truth layer, message layer, and the application layer. For Darwinia, we focus on the message layer, bind to diverse self-developed or integrated truth layers, and provide cross-chain messaging services to dApps located in the application layer. LCMP is a light-client-based message protocol and is only one of the protocols we will support.

Supported Message Protocols and Truth layers.

Security Model

  1. Governance & upgrade security
    1. Our philosophy is to minimize governance and upgrade and keep the protocol as simple as possible.
      1. For example, for the light client and truth layer component, we have no governance and owners. If there are upgrades from the anticipated chain, we just redeploy the truth layer components and let the message/application layer choose as they wish/need.
      2. For the message layer, we follow the minimized governance model for now.
      3. For the application layer, we only provide message SDK for dApp developers. We do not develop applications. dApps developers are responsible for their decision of governance model, we do not make decisions for them.
  2. Truth Layer Security(Consensus Security)
    1. We use the approximate/best truth/consensus layer for different message protocols and applications.
      1. For example, for messages between parachains, we think it’s better to use XCMP as parachains share security from relay chains, actually working as sovereign shards of Polkadot.
      2. For messages between Ethereum and its rollup, we think it’s better to use the Rollup bridge instead of the light client since Layer2 has the same level of consensus security as Layer 1.
      3. For messages between heterogeneous layer 1 blockchains with their own consensus, the best way would be to employ light clients for them.
      4. For applications that do not require the most secure consensus security, but less cost of interoperation, they can adopt other bridge techs such as MPC, oracle-based, or optimistic verification-based protocol.
      5. Truth Layer cross-chain mechanisms comparison
  3. Engineering and application/message layer split
    1. Application layer do custodian
    2. Darwinia Security Design Strategy and Philosophy Update

Business Model

Application Developer Support

Although we do not develop applications, we take developer support very seriously.

We believe that permissionless deployment is important for dApps developers. So we not only provide message services to substrate chains/runtimes, we also crafted our message protocol so that it can be used directly by a smart contract. With that, the dApps can get to use message endpoints without the need for permission from the source and target chains/runtimes.

SDK will be one of our next priorities.

https://github.com/darwinia-network/darwinia-messages-sol/tree/master/contracts/periphery/contracts/s2s

https://github.com/darwinia-network/darwinia-docs/tree/master/docs/sdk/guides

References:

https://www.notion.so/itering/Bridge-Instances-cc66b682cecb499ba845e99f78886e6d

https://medium.com/darwinianetwork/darwinia-security-design-strategy-and-philosophy-update-f66d3406f652

https://darwinia.network/itering_io_optimistic_bridge_technical_paper_en.pdf

https://www.notion.so/itering/POSA-Light-Client-429f2fe8f76c4d4e819b153a247e2c8e

https://www.notion.so/itering/Darwinia-Ethereum-Message-Protocol-V2-ccd0ad5a80894815bd93fbed8a41539a

https://www.notion.so/itering/Ethereum-Substrate-dd300afee3634f8c88f45792916e1918

https://www.notion.so/itering/Content-from-old-page-of-Message-Protocol-Not-used-d2c06c9d6bb34ee5a44c914c96fe4151

https://github.com/darwinia-network/darwinia-common/blob/e8fcdd78397d6b9264bea20a84093e6c0eb163f7/docs/Relayer Fee Market.md

https://github.com/darwinia-network/research/issues/21

https://github.com/paritytech/parity-bridges-common/issues/992

https://www.notion.so/itering/Upgrade-27e896a038af4d489595a4979c65aaa0

https://docs.helixbridge.app/how-it-works/token_protocol

3 Likes