CAIP-CAIP-363: Chain ID Wildcard

Author Daniel Rocha
Discussions-To https://github.com/ChainAgnostic/CAIPs/discussions/364
Status Draft
Type Standard
Created 2025-07-01
Requires CAIP-2, CAIP-10

Simple Summary

This CAIP extends CAIP-2 and CAIP-10 by reserving the _ character as a wildcard reference for “all chain IDs” within a CAIP-2 namespace. This enables wallets and applications to represent account identity across all chains of a given namespace.

This CAIP makes no assumptions about how the address is derived or whether it is valid across all chains in the namespace. The use of _ simply denotes intent to refer to the same address across chains, without implying compatibility or derivation logic.

Abstract

By reserving the _ wildcard in CAIP-2-compliant chain ID definitions, and supporting it within CAIP-10 account identifiers, this CAIP enables an address to represent a multichain account. For example, eip155:_:<address> signifies the given address across all chains in the eip155 namespace.

Motivation

Wallets and identity systems increasingly need to represent multichain accounts. The lack of a standard for denoting an address across all chains in a namespace hinders interoperability. Reserving _ as a wildcard chain ID solves this by enabling a consistent and extensible mechanism for such expressions.

Specification

CAIP-2 Extension

In addition to the existing CAIP-2 specification:

A new reserved chain ID value _ MUST be supported in all namespaces to indicate “all chains” in that namespace.

Thus, the chain ID format becomes:

<namespace>:<reference | _>

Where _ is interpreted as “all chain references within this namespace.”

CAIP-10 Extension

Extend the CAIP-10 account ID to support the wildcard chain reference:

<namespace>:_:<account-address>

For example:

  • eip155:_:0x59f3...d0c3 represents the same address across all eip155 chains.

  • solana:_:DAXa...bx77 represents a Solana account across all Solana chains (e.g., Mainnet, Testnet, and Devnet).

Reserved Character

A single _ character is reserved solely for the wildcard chain reference and MUST NOT be designated as a valid reference or account identifier in any future CAIP-2 profile.

Rationale

The _ character is not currently a valid chain ID reference in any known namespace, minimizing the risk of collision. It is also supported by the CAIP-2 grammar, ensuring that it can be parsed correctly without breaking existing implementations.

Backwards Compatibility

This CAIP is backwards compatible. Existing implementations that do not support _ will simply reject these identifiers as invalid, while updated systems can handle them appropriately.

Reference Implementation

No code changes are required in CAIP-2 and CAIP-10, but supporting implementations (e.g., wallets, dapps) should treat _ as matching any chain reference within the specified namespace.

Copyright and related rights waived via CC0.

References

Citation

Please cite this document as:

Daniel Rocha, "CAIP-CAIP-363: Chain ID Wildcard [DRAFT]," Chain Agnostic Improvement Proposals, no. CAIP-363, July 2025. [Online serial]. Available: https://github.com/ChainAgnostic/CAIPs/blob/master/CAIPs/caip-CAIP-363.md