A protocol for sending tokens across rollups and their shared layer-1 network in a quick and trustless manner.
A protocol for sending tokens across rollups and their shared layer-1 network in a quick and trustless manner.
Hop is essentially a multi-network bridge. It’s technology agnostic and can be applied to any EVM-compatible chain.
There are two core pieces to the Hop protocol architecture that make this possible.
Let’s go through this step-by-step.
Every Layer-2 has a native token bridge. If you move Ether (ETH) to Optimism for instance via the native Optimism bridge, you receive Optimism Ether. In technical jargon this is called the “canonical token”. Think of it as the original representation of ETH on the Optimism network.
However, this representation of Ether only exists on Optimism and withdrawals via the native token bridge are subject to the long exit period mentioned earlier.
To convert your Optimism Ether to Arbitrum Ether you would have to withdraw back to mainnet via the “native” Optimism bridge, wait for seven days and then convert mainnet Ether to Arbitrum Ether via the Arbitrum bridge to use it in the application of your choice.
This is where the multi-network Hop bridge comes into play. Hop has its own Optimism bridge and its own Arbitrum bridge which are called Hop Bridges.
The Hop bridge issues Hop tokens on each network it supports. For instance, if a user wants to deposit 4 ETH on Optimism via Hop, Hop would issue the equivalent amount of Hop ETH (hETH) on Optimism. Inversely, hETH can be redeemed for its underlying asset on Ethereum mainnet, which burns the hETH on Optimism.
Lastly, hETH can also be redeemed for hETH on any other rollup or sidechain supported by Hop. In this case hETH would equally be burned on the origin rollup and minted on the destination.
But how can these Hop Tokens be transferred so easily between different networks given data and asset transfers via the native bridges take up to 7 days as we discussed earlier?
This is where the bonder comes in. The Bonder fronts liquidity on the destination in exchange for a small fee.
The Bonder knows that they will eventually receive their funds back because they run a verifier node on each rollup and can verify transactions as they’re made.
The Bonder can then provide up-front liquidity on the destination rollup in order to fulfill the transfer immediately. Eventually, when the big batch of transactions is confirmed on mainnet, the bonder’s funds which were locked are restored.
For example, a user might want to withdraw their hETH and receive ETH instantly. The Bonder knows that the withdrawal transaction has been triggered and is on its way to be settled on mainnet.
With this information, the bonder sends hETH that they have locked up on the destination chain (in our example mainnet), to the user’s requested wallet address. A couple of days later, The Bonder’s collateral is made available again as the transaction batch has settled.
The immediate liquidity provided by the Bonder enables Hop Tokens to be quickly and economically moved between all the supported networks.
Initially, Hop will start with only a couple of whitelisted entities running a Bonder but in further iterations of the Hop protocol anyone will be able to be a Bonder. Note, that The Bonder can not steal any funds or censor transactions but the task comes with technical overhead and is quite capital-intensive as liquidity needs to be maintained on multiple networks.
The worst case scenario would be that all Bonders are offline in which case no transfers would get bonded. When a Transfer doesn't get bonded, it is delayed by the normal exit time of the L2 but will still eventually go through.
But wait a minute, who wants the Hop Tokens (e.g hETH or hDAI)? Don’t I need the original (canonical) ETH to use Uniswap on Optimism?
The last missing piece in the Hop protocol is the conversion of Hop tokens into the original or “native” tokens of the rollup in question. Afterall, these are the tokens that the end user needs to use any of the applications.
For that purpose, Hop deploys an Automated Market Maker (AMM) on each rollup that makes Hop tokens liquid against the canonical token on the Layer-2 network. For instance, if a user sends ETH to Optimism from Mainnet, the Hop Bridge would first issue hETH to the user on Optimism and subsequently swap it against Optimism ETH on the Hop AMM. Naturally, this all happens under the hood and looks like one transaction to the end-user.
Like on Uniswap, anyone can become a liquidity provider in any of the Hop pools and earn swap fees on the trades. Since the liquidity is provided on pairs of the same asset (e.g hETH- Optimism ETH), which can both be redeemed for exactly the same amount of their mainnet counterpart, there is close to no impermanent loss risk, making it quite attractive to be a liquidity provider.
In cases where the price between Hop tokens and their native counterpart does deviate, arbitrageurs can quickly step in and rebalance the prices for profit. Imagine Optimism ETH trades at a discount relative to hETH for instance. A profit driven arbitrageur could then simply mint hETH by sending ETH across the Hop Bridge. The Arbitrageur would then use their hETH to purchase the discounted Optimism ETH by trading with the Hop AMM.
Note that in this example, to finish the arbitrage trade, the Arbitrageur would have to exit via the Native Optimism Bridge and face the 7 day liquidity lock up. If they would use the Hop bridge to withdraw instantly, they would effectively trade back into the Optimism ETH - hETH market they just arbitraged and lose their profits.
In a nutshell, Hop tokens can be moved instantly across all the supported networks thanks to The Bonders who collateralize transfers and take the liquidity lockups on them in exchange for a small fee. Hop tokens can then be swapped against the canonical tokens of the network on the Automated Market Maker exchanges deployed on each network.
This is all happening in an automated way and users don’t have to understand any of the complexity behind it. They can just reap the benefit of moving tokens quickly and seamlessly between the networks they want to use from one place.
Hop can also be integrated natively into application interfaces of Layer-2 projects like Uniswap or Synthetix to facilitate their users to withdraw their assets instantly, without even knowing that it’s using Hop under the hood.
This is super exciting as it helps overcome fragmentation in the DeFi’s space caused by applications existing on different Layer-2 networks and significantly improves the user experience.
A protocol for sending tokens across rollups and their shared layer-1 network in a quick and trustless manner.