Multichain
  • Getting Started
    • Introduction
      • Supported Chains
      • Supported Tokens
    • How it works
      • Cross-Chain Bridge
      • Cross-Chain Router
    • Governance Token
      • VeMulti
      • How to Convert ANY to MULTI
    • Security
      • Security model
      • Bug bounty (Immunefi)
      • Bug bounty (alternative)
    • How to Use
      • Fees
    • Road Map
    • FAQ
    • Careers
      • Front-end developer
      • Back-end developer
      • Test Engineer
      • Test Development Engineer
      • Security Engineer (Code Auditing)
      • Blockchain Development Engineer
      • Senior Content Editor
      • Event Manager
  • Listing and Integration
    • Token Listing
      • ERC20 Cross-chain Options
      • Difference between V2&V3
    • Chain Integration
      • EVM Networks Integration
      • Non-EVM Networks Integration
    • FAQ
  • Developer Guide
    • How to Integrate Front-end Router
    • Bridge API (Token list/Tx Status)
    • Scan API (Tx Status/Account History)
    • Token Router Testnet
    • anyCall V7
      • How to integrate anyCall V7?
      • API/Explorer
      • Quickstart (Cross-chain text example)
      • Estimate Fee/Pay Fees on destination chain
    • anyCall V6
      • How to integrate anyCall V6?
      • anyFallback
      • anyCall V6 Testnet Environments
      • Fees Paid on Source Chain
      • Context (Verify msg.sender)
    • $USDC CCTP X anyCall
      • Contract Addresses and example
    • anyCall NFT Bridge
    • Permissionless Token bridging
    • How to develop under Anyswap ERC20 standards
    • Bridge funds and anyCall (Router V7)
      • Mainnet
      • Testnet (Quick Start Example)
    • How to Integrate Front-end Bridges
Powered by GitBook
On this page
  1. Getting Started
  2. How it works

Cross-Chain Bridge

PreviousHow it worksNextCross-Chain Router

Last updated 3 years ago

The Cross-Chain Bridges are a foundation block of Multichain: A Bridge allows an asset on one chain to be 'sent' to another chain.

The Cross-Chain Bridges

Each Bridge is a link between two block chains. On the asset origin chain, the asset to be bridged is sent to a special SMPC wallet address and held securely there. This is the Decentralized Management Account. On the destination chain, a smart contract mints tokens 1:1 with those held in the Decentralized Management Account and sends them to the user's wallet. The opposite also happens when tokens are sent to the smart contract; they are burned and then the SMPC nodes release them on the origin chain.

The SMPC nodes perform several functions in linking an origin blockchain with a destination blockchain, completely autonomously and without human intervention :-

(a) When a new bridge between two blockchains is created, the SMPC nodes generate the Decentralized Management Account whose address is used to send assets to. These assets are held securely whilst cross-chain assets are minted on the destination chain. This address is only controlled by the SMPC nodes and not by human or any other Externally Owned Address.

(b) Also, when a new bridge between two blockchains is created, the SMPC nodes connect to a new smart contract on the destination chain for Wrapped Assets. This contract can be created by third party or the Multichain team. It is used to mint new tokens on the destination chain, or to burn them when assets are redeemed to their origin chain. This contract is either AnyswapV5ERC20.sol, or a contract adapted from this to include custom code required by a project, such as transaction tax etc.

(c) The MPC nodes monitor the Decentralized Management Account. When a new asset arrives there, it triggers the Wrapped Asset smart contract on the destination chain to mint tokens.

(d) If assets are redeemed, the Wrapped Asset smart contract is triggered by the MPC nodes to burn the tokens. The MPC nodes then release the assets from the Decentralized Management Account and send them to the user on the origin chain.

The wrapped asset token contract AnyswapV5ERC20 on the destination chain, which is a superset of the standard ERC20 type of contract, only allows MPC nodes network to mint assets. No other address is allowed to mint, to prevent a non-equivalence between assets held by the SMPC address and those wrapped assets created. For this reason, some common asset types are not suitable for Bridges, including elastic supply (or rebase) tokens.