Integrate LIDO with Composable's Cross Chain Virtual Machine (XCVM)Centauri and via Neutron

Summary

We seek to propose an outline for extending the availability of Lido’s stATOM across multiple ecosystems by leveraging Composable’s cross chain technology stack in tandem with a collaboration with Neutron.

This proposal seeks to initiate conversations around the proposed design.

Composable’s tech stack is comprised of the following components:

  • Picasso, a substrate based parachain on Kusama network
  • Centauri, a trustless IBC-based, light-client bridge
  • Cross-Chain Virtual Machine (XCVM) to communicate smart contract instruction sets cross-chain

Centauri is the first implementation of IBC beyond the Cosmos. The Composable team intends to connect directly to as many IBC chains and is currently conducting testnet efforts with a multitude of Cosmos chains.

This is accomplished using ICS-008 allowing for client interfacing to be stored as WASM bytecode. With ICS-008, a chain may upgrade its consensus algorithm without requiring counterparty chains to perform their own upgrades.

Centauri distinguishes itself as a trust-minimized bridge implementation through its use of light clients and extending the IBC specification to other ecosystems. Light clients only require information stored in block headers, which reduces the need to trust requests made to full nodes. The light client checks information from the merkle tree root which is stored in block headers to ensure information received via full nodes matches that which has been stored within a blockchain. Relayers pass a hash of the consensus proof and block header, but are not involved in verifying state.

This is as opposed to the current state of bridge protocols that requires trust be placed in a select set of validators. The light client based approach instead may select any full node to check information stored in block headers against the chain’s merkel tree root for verification.

Within Cosmos it is clear IBC is the canonical implementation for token transfers and message passing. This is now changing to include any ecosystem in Web 3.0.

The applications of this are tremendous. Here, we outline one that we believe is particularly compelling to bring about cross-ecosystem composability of liquid staking derivatives.

Overview

Neutron’s recent proposal, Lido for the Interchain, seeks to deploy Lido as a CosmWasm based smart contract application. This means that stATOM and other liquid staking derivatives will now be able to be transferred throughout IBC and beyond.

However, the overall goal for the Lido and Neutron collaboration can be extended to turn Neutron into a central hub of liquid staking, for many different assets, by unlocked cross-chain liquid staking.

With the introduction of Composable’s cross-chain virtual machine, XCVM, execution environments are able to be composed through orchestration of instruction sets, passed over IBC.

Motivation

Through an XCVM integration, users can stake ATOM through Neutron and issue stATOM to any chain integrated with IBC (ie. NEAR, Cosmos, Polkadot, Kusama). Furthermore, the opposite can be true, where ATOM can be staked on NEAR or DOT, and then stATOM is printed on Neutron.

As Lido seeks to offer its liquid staking solution to Cosmos, the ability to make use of stATOM is still bottlenecked by the availability of DeFi options within the Cosmos ecosystem.

Through the use of Neutron + XCVM, Lido removes the need to continually redeploy their contracts to operate within a given XCVM-enabled chain and bridges stATOM into the DotSama ecosystem and NEAR ecosystems.

Furthermore, in the future this can be extended for other use cases where other Lido instances, such as stDOT on Moonbeam can be instantly ported to Neutron for other use cases as well. Picasso will leverage its bridging capabilities to initiate the first connection between Kusama and Polkadot relay chains over IBC. In doing so, we gain access to existing staked assets within the DOT ecosystem, namely, stDOT. Once XCVM and bridged connections between Neutron <-> Picasso <-> Polkadot have been formed, we can look to bring stDOT trustlessly into the Cosmos ecosystem, thus allowing for LIDO staked assets to move between Cosmos and DotSama.

In doing so, both users and protocols will have broader access to, and ability to use, stATOM and other liquid staking derivatives issued through Lido to the IBC-enabled chain of their choosing.

Technical Overview

XCVM may be broken down through its three main components:

i) Gateway Contracts: Responsible for the whitelisting of bridges and assets. The gateway contract handles annotation of the incoming program to be passed onto the router and XCVM interpreter.

ii) Router: Every smart contract within another ecosystem will require its own XCVM interpreter instance. The router is responsible for keeping track of each of these interpreter instances and addresses used across a given ecosystem, as well as initiating or finding previous instances of your VM.

iii) Interpreter: The XCVM program consists of instruction sets that are executed sequentially and is capable of handling application logic.


A further specification is located at the following link

Implementation

In order for Lido to become XCVM-enabled, the XVCM Cosmos SDK module may be integrated with Neutron. The following steps may be taken in order to implement XCVM on Neutron:

1. Composable will open a bridged connection between Picasso and Neutron using its IBC-based bridge implementation, Centauri. (Testnet)
2. Neutron deploys interpreter contracts for XCVM to communicate instruction sets with Picasso (Testnet)
3. Contracts and connections will be audited for mainnet
4. Contract allowances set and moved to production

Immediate DeFi applications: Pablo DEX

Roughly 200m ATOM are currently bonded within the cosmos ecosystem, equating to ~ $2.43bn in idle network liquidity that could be committed to increasing capacity in DeFi platforms within the rapidly growing Interchain ecosystem. With the added integration of XCVM, liquidity created through issuance of stATOM becomes applicable to dApps built outside of the native Cosmos ecosystem.

Picasso’s native DEX, Pablo, will launch with trading pairs native to the DotSama ecosystem with the ultimate goal of becoming a hub for cross-chain liquidity. As such, Pablo is positioned to immediately increase the utility of liquid staking derivatives for use in the multi-chain universe. Once XCVM is enabled for Lido, Pablo will be able to provide an additional source of liquidity for stATOM through its platform.

Looking Ahead

The hope is that this initial integration brings about the future where a user deposits an asset on any IBC-enabled chain, and is able to choose the st-asset they’d like exposure to, and be able to get exposure to this asset through the utilization of Neutron as a routing hub for stAsset printing.

Glossary

References

I don’t think it makes sense to minting stATOM from Near, Polkadot and more. What the read benefits Lido could get from the cross-chain and cross-eco minting. I can’t see it at least now.

I think the concern raises two main points to address:

i) Reasoning as to the need to have stATOM bridged into NEAR + DotSama (and others), and

ii) The use case for st-assets outside of their native ecosystem.

In regards to (i), our belief is that st-assets become a dominant yield-bearing asset class across all ecosystems. In an ideal world, we would look to connect stATOM with Ethereum, the clear winner in terms of total network activity and accessible TVL. Right now, an IBC based bridge implementation (Centauri) is hindered by the necessity for a chain to have light client functionality for connection. This damages our ability to create a direct connection between Cosmos <-> Ethereum for the time being.

Although light client implementations for ETH 2 have been proposed (eg. a16’s Helios) , a significant amount of development work is required in order to optimize for reduced relayer fees to make a Cosmos <-> Ethereum bridge using IBC feasible for end users. At the moment, a viable workaround is to have NEAR sit as an intermediary using its Rainbow Bridge to Ethereum as a gateway for assets to access Centauri and XCVM. In practice, we could allow assets to flow out of Ethereum, into NEAR, and then back out to a Centauri connected chain (ie, ETH —[Rainbow]—> NEAR —[Centauri]—> Cosmos and vice versa). With this being said, DotSama and NEAR create the initial building blocks to build out this functionality.

To address (ii), our broad vision of cross-chain/multi-chain interaction is a world where users can operate from their respective chain of choice without the need to move w their assets. Using XCVM, we can take the theoretical case of an Ethereum user who is looking for exposure to ATOM. They plan to hold their ATOM long term, and hope to earn yield on their idle assets via deposit to Lido. This user does not wish to go through the additional overhead of bridging assets and interacting with additional platforms in order to execute swaps and acquire assets on a separate chain. Using XCVM, this user may remain on Ethereum and send smart contract instructions to orchestrate briding assets to Cosmos, a swap for ATOM, deposit to LIDO, and receive their stATOM back directly on Ethereum where they may put their staked liquidity to use in a variety of DeFi applications.

Overall, this unlocks broader usability of st-assets across ecosystems and increases the potential size of user base without the need to completely onboard these users to a new chain.