Context:
Wallet applications need to support a variety of blockchain networks. From a signing perspective, these networks generally fall into two categories:
- Substrate-based chains (e.g., Polkadot, Kusama), which primarily use sr25519/ed25519 for signing extrinsics.
- EVM-based chains (e.g., Ethereum, Polygon), which use secp256k1 for signing transactions.
- A third, more complex category is hybrid chains (e.g., Moonbeam, Astar, Polkadot Asset Hub) that support both Substrate extrinsics and EVM transactions.
Problem Statement:
When a dApp sends a transaction request to a wallet, the wallet needs a reliable mechanism to determine which signing algorithm to use. While this is straightforward for pure Substrate or EVM chains, it becomes ambiguous for hybrid chains.
Goal:
To define a clear standard or best practice for how wallets should handle signing requests across the Polkadot and EVM ecosystems to ensure a consistent and predictable developer and user experience.