# Ethereum Bridge

The Root Network Ethereum Bridge allows the secure transfer of tokens between The Root Network and Ethereum. It allows two-way transfers of ERC-20 tokens and native $ETH.

### Benefits and Functions

The Ethereum Bridge provides several key functions and benefits:

* Secure transfer of tokens: Transferring tokens between The Root Network and Ethereum is seamless and secure. The bridge provides a decentralised and cryptographically secure way to move tokens and assets between the two chains.
* Liquidity: Asset bridges unlock more liquidity for the network. Developers, metaverse projects and community members can utilise The Root Network for building while receiving payments in Ethereum-supported currency and ROOT.
* Cross-chain functionality: Connecting blockchains means you can combine their strengths. This means collections already existing on the Ethereum network can be bridged to The Root Network to gain additional utility.
* An open metaverse: Web3 infrastructure must be open and interoperable with portable collectibles. Bridges allow for this level of interoperability by connecting chains to create broader ecosystems of diverse utility.

### How does the Bridge work?

The Ethereum Bridge uses The Root Network validators, chosen by the network-wide proof-of-stake mechanism. As well as being responsible for creating blocks on The Root Network, validators are now required to verify bridge transactions. They have the authority to act as notaries, verifying the authenticity of a deposit to a bridge contract when needed.

The security of this system is based on threshold cryptography alongside a system of smart contracts. The process looks something like this:

#### Ethereum → The Root Network

1. The user sends a deposit request to the Ethereum Bridge contract on Ethereum. This request contains:
   * The recipient address on The Root Network
   * The deposit amount
   * The token address (ERC-20 or native ETH)
2. The Ethereum Bridge relayer service waits for block confirmations on Ethereum and sends a deposit claim with relevant information to The Root Network.
3. A challenge period is initiated on The Root Network once the deposit claim is received.
   * If a challenge is submitted, validators will query the claim and check the transaction’s validity against Ethereum’s full node. The validators will determine who is correct (the challenger or the transaction requester) and slash the incorrect party. There will be some pay-out portion to the correct party.
4. Once the challenge period ends, the claim is considered valid. The token is minted and transferred to the intended recipient's address.

#### The Root Network → Ethereum

1. The user sends a withdrawal request to the Ethereum Bridge module on The Root Network. This request contains:
   * The recipient address on Ethereum
   * The withdrawn amount
   * The token ID
2. Validators sign a message stating that The Root Network has burnt the requested token amount. The validators will also issue a withdrawal proof for the user.
3. The user submits the withdrawal proof to the Ethereum Bridge contract on Ethereum.
4. The Ethereum Bridge contract checks that the signatures are legitimate and then releases the tokens to the intended recipient address.
