In this tutorial, we will explore the concept of interchain applications and how they enable seamless access to users and liquidity across different blockchains. We will discuss the challenges posed by liquidity fragmentation and the need for interoperability. Additionally, we will introduce Abacus, a technology that acts as the connective tissue between applications deployed on various blockchains. Abacus enables developers to create a unified user experience and access liquidity from different chains. We will also explore potential use cases and the underlying technology behind Abacus.
Currently, many projects face the challenge of liquidity fragmentation. While they may have a strong community on a particular blockchain, the majority of liquidity exists on Ethereum. This leads to a dilemma where projects consider deploying on both their native blockchain and Ethereum. However, deploying on different blockchains results in separate applications that don’t share liquidity. To address this, interchain applications or fragment applications can be deployed on multiple chains, and Abacus facilitates communication between these applications.
Abacus acts as a smart router for block space, allowing developers to choose the appropriate blockchain for their application and specific use cases. It enables access to more affordable and accessible block spaces like Celo or Polygon for certain transactions, while leveraging the secure and established Ethereum block space for critical operations. Abacus serves as the connective tissue between the states of applications on different blockchains, ensuring a seamless and unified user experience.
Traditionally, interoperability has been handled at the user level, requiring users to bridge assets between different blockchains to access applications. However, this approach leads to a suboptimal user experience. Instead, developers should focus on providing the best user experience by abstracting interoperability away from the user. This means moving interoperability into the application itself. By doing so, developers can explore various interesting use cases without burdening users with complex asset transfers.
Abacus opens up possibilities for several compelling use cases. These include:
- Natively Interchangeable Assets: Instead of multiple wrapped versions of an asset on different chains, a canonical version of the asset can be established on each chain. This avoids liquidity fragmentation and enables seamless asset interchangeability.
- Collateral Trading: An application can transmit information about collateral held on Ethereum, allowing users to trade against that collateral on more cost-effective blockchains like Celo or Polygon.
- Control Panel: Abacus provides an application that allows an address on one chain to issue transactions and own assets on another chain. This enables cross-chain activity without requiring users to move their assets.
- Entertainment NFTs: Minting and trading NFTs can be costly on Ethereum. Abacus enables minting on different chains and transferring NFTs across them, allowing access to more affordable block spaces while maintaining the option to return to Ethereum for increased security.
Abacus tackles the challenge of interchain communication by implementing sodium smart contracts. Each chain has mailbox contracts, and when a smart contract on one chain wants to send a message, it calls a function on the outbox contract, enqueuing the message. Validators elected on the source chain assert the root of a Merkle tree where the messages are enqueued. These assertions can be validated on the inbox contract of the receiving chain. This process results in a replicated Merkle tree on the destination chain, enabling communication between contracts on different blockchains.
Abacus recently launched on mainnet, and it offers a reliable solution for interchain communication. As the blockchain ecosystem continues to grow, there will be numerous execution environments with different trade-offs. Developers will need to navigate this landscape, and Abacus provides a means to choose the most suitable block space for their applications. With the ability to abstract interoperability and leverage heterogeneous block space, Abacus is poised to become a vital component of the future interoperability infrastructure in the blockchain industry.