| title | Sei Network Interoperability Framework | ||||
|---|---|---|---|---|---|
| sidebarTitle | EVM ↔ CosmWasm | ||||
| description | Understand how Sei enables seamless interaction between EVM and Cosmos ecosystems through its dual address system and precompiles. | ||||
| keywords |
|
Sei utilizes two distinct address types:
- EVM (0x) address: Ethereum-style addresses, with "0x" prefix.
- Cosmos address: Bech-32 addresses, with "sei1" prefix.
Both addresses are derived from the same public key, ensuring seamless asset integration across formats. You can find your corresponding wallet addresses directly in the Sei Dashboard.
For more details on interoperability, explore our article here.
EVM and existing 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 developers, 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 exposes Cosmos-SDK modules and already-deployed CosmWasm contracts to the EVM via precompiled contracts. New smart contracts on Sei should be deployed on the EVM directly.
Sei precompiles are smart contracts embedded directly within the Sei EVM environment. They provide a gateway for users and developers to access Cosmos-SDK functions through the EVM RPC interface.
For instructions on utilizing EVM precompiles, refer to the Example Usage section.
