Skip to main content
Standard Cosmos and EVM chains both start from a compressed secp256k1 public key but diverge in how they compute the 20-byte raw address. Standard Cosmos (rawSecp256k1PubkeyToRawAddress):
EVM (rawEthSecp256k1PubkeyToRawAddress):
The raw address derivation matches Ethereum’s address = keccak256(pubkey)[12:] convention. Despite producing Ethereum-compatible addresses, CosmJS wraps them in Bech32 encoding (e.g. cosmos1...) — not the 0x-prefixed hex format used by Ethereum wallets.