VM Interoperability
Introduction

Virtual Machine Interoperability

EVM and CosmWasm based smart contracts co-exist on Sei, but live in different execution environments. This creates a challenge for users, who use wallets that typically only support a single execution environment. Likewise for devlelopers, existing tooling and libraries can only interact with either EVM or Wasm (Think EthersJS vs CosmJS).

To bridge the gap between EVM and Wasm, Sei has introduced two interoperability features, allowing for smooth and easy interactions between both environments. Precompiled EVM contracts and Pointer Contracts enable all contracts to be accessible from both VM environments.

Interoperability

Enabling seamless access to all tokens and contracts on Sei

Precompiled Contracts

Sei precompiles are smart contracts embedded directly within the Sei blockchain. They provide a gateway for users and developers to access native Sei functionalities through the EVM RPC interface.

For instructions on utilizing EVM precompiles, refer to the Example Usage section.

Pointer Contracts

Pointer Contracts are a unique feature introduced on Sei, designed to enhance interoperability between EVM and CosmWasm environments. These contracts facilitate the creation of links between tokens across both EVM and CosmWasm. This enables tokens to move smoothly and be used seamlessly in both environments.

Pointer contracts can be deployed for any Token Factory, Smart Contract (ERC20, ERC721, etc.), and any IBC denom.

Learn more about Pointer Contracts and how to deploy them here.