The difficulties migrating digital assets such as bonds or NFTs with residual payments between different L1 or L2 chains
Authors: Andreas Freund, L2 WG Co-Chair, on behalf of the EEA Community Projects L2 Working Group
We all know that Web3 will rule the world, despite consumers addicted to the web2 way of instant gratification furiously hitting (back) buttons and yelling at screens when their Ethereum transactions aren’t complete after 2 seconds. L2s will give those consumers their Speed for the Web3 world of tomorrow, today.
L2s can give Fortnite nerds their favorite, rare in-game skins or weapons as NFTs that can be traded in or outside of the game, generating eye-watering profits. They can also provide full privacy in asset trading with esoteric zk-zk-rollups. Full privacy is a dream for all traditional finance asset managers and is frowned upon by global tax authorities.
So what is not to love or hate or love and hate about L2s?
As our asset managers are excitedly creating L2 trading accounts, they are quickly faced with the relatively meager selection of financial assets that can be traded on L2s. Want to move any of your debt instruments from Ethereum’s Maker, Aaave, Compound, or Centrifuge? Nope! Annuities? Nope! Dividend-paying stocks? Nope! How about moving them to other Blockchains or moving them from other Blockchains? Nope!
Well, you can do simple NFTs or tokens, or you can create and trade your debt instruments directly on an L2, but they will be stuck there. At that point, our asset manager sighs, closes their laptop, and walks away. Since our asset manager represents about 40 Trillions USD of trades per quarter globally, and since more complex assets comprise 95%+ of those trades, L2s will have a hard time taking on traditional finance, and thus continue to grow exponentially for a prolonged period of time, unless they can address the market of digital assets paying residuals.
The question is then why are those types of complex digital assets available on Ethereum markets such as Aave but cannot be moved to L2s?
Complex Digital Assets are … well, complex!
Let’s take a step back and look at the current situation. Currently, the method of bridging digital assets such as ERC20 tokens or NFTs between networks – for example, Ethereum <> L2, Ethereum <> Zksync, Ethereum <> Polygon – immobilizes the assets on the origin network and then instantiates them on the target network.
This approach works well if the digital asset has no associated business rules that infer rights or obligations to asset owners such as stable coins or simple NFTs. Examples of important digital assets that infer rights to the digital asset owner are residual payments/asset grants such as dividend-paying equities, bonds, annuities, asset-backed securities, digital assets with royalties, etc.
Unfortunately, such digital assets currently cannot be transferred between networks because a transfer would break the connection between the asset and the rights or obligations associated with it.
Given the importance of digital assets with residuals in traditional finance, the emerging proliferation of DeFi assets that mimic traditional assets such as bonds or asset-backed securities, and more and more value locked in bridges and L2s, there is a significant danger that L2s will hit a growth plateau because they cannot offer what most of the world wants to trade.
So, what could be possible solution approaches to this conundrum?
The answer is, not many … at least yet!
Some Solution Challenges
Figure 1: A simple bond on an L1 blockchain
Using the simple example of a Bond on Ethereum paying on a schedule in DAI (see Figure 1 above), we outline some of the challenges (in Figure 2 below):
- Since Alice, the payer of the scheduled bond payments, is generally unaware that Bob, the payee, moved a bond from Ethereum (L1) to L2, Alice would send payments to the L1 Bond smart contract with Bob’s Ethereum address. Since Bob is no longer the owner of the bond, but rather the bridge contract is, the payment would fail.
- If the bond contract were still aware that Bob was the payee, then it could still accept a bond payment, but the payment would be owned by the bridge contract.
- Therefore, when the bond is locked in the bridge, the expected DAI bond payments must be instantiated on the L2 side in the Bond contract, now with Bob’s L2 address being the owner of both the Bond token and the wrapped DAI
- This means that when a payment is received into the Ethereum bond contract, the bridge network must be notified about the payment through an event and mint the payment amount as wrapped DAI on the DAI bridge contract on the L2 side, for Bob. That is problematic because there is no corresponding DAI in the bridge on the Ethereum side. After all, it is associated with the Ethereum (L1) bond contract. This means that Bob’s WDAI on L2 would be worthless. Therefore, the payment amount in DAI can only be minted as an Ethereum IOU in the L2 Bond contract, since the DAI cannot be taken out of the L2 bridge contract. Ergo, the DAI payments the bondholder receives are useless on the L2 side. That is naturally not desirable.
- If the bond is traded to Claire on L2, Claire is now eligible to receive bond payments and Bob no longer is. That means that after Claire purchased the Bond, the bridge network must notify the L1 bond contract of the new owner for Claire’s payment to be received on the Ethereum side. That also means that Alice needs to know that she needs to send her bond payments indexed to Claire and not Bob. And once Claire receives a payment, the bridge network needs to create the same Ethereum DAI IOU on the L2 side. And so forth for every ownership change.
These open questions are for the simple case of a bond. Royalties for example, where the payments are mostly independent of token ownership and typically more than one party receives a portion of the payment, are even more complex because not all payments need to be bridged. However, the (net present) value of the digital asset is dependent on overall payment flows.
Generally speaking, it is unclear how to port complex digital assets between networks when the value of the asset depends on payments on the origin network but the asset is traded on the target network.
A promising first attempt has been made to address this complex challenge with the GPACT protocol and Crosschain Protocol Stack, which is currently being developed within the EEA Crosschain Interoperability Working Group.
The newly formed EEA Community Projects L2 Working Group, with participation from the EEA, Matter Labs, Polygon, Offchain Labs, Accenture, VMWare, ConsenSys, Perun, Connext, Provide, and the Ethereum Foundation, has also taken up the challenge and published an Eth Magicians and Eth Research post on the subject, calling on the Ethereum community to solicit comments and tackle this challenge, and is collaborating with the EEA Crosschain Interoperability Working Group to see if the GPACT protocol can be successfully utilized in a PoC to transfer complex digital assets between L2 networks.
We are inviting all interested parties to join us and address this important challenge for the entire public, enterprise, and Blockchain ecosystem together!