CAIP-25

  • Name: CAIP-25 (Wallet Create Session JSON-RPC Method)
  • URL: https://standards.chainagnostic.org/CAIPs/caip-25
  • Category: chain-agnostic wallet-session authorization standard / provider-handshake protocol / capability-negotiation layer
  • Summary: CAIP-25 is best understood as a wallet-session authorization and capability-negotiation standard rather than as a login format. Its core mechanism is to let an app and a wallet negotiate a persisted session made of keyed authorization scopes, each scope binding methods, notifications, accounts, and optional capabilities to a namespace or chain identifier. That makes it a useful comparison class for CAIP-122, EIP-4361, WalletConnect, and did:pkh: those standards help define who the user is or how authentication starts, while CAIP-25 focuses on what an authorized session is allowed to do across multiple chains and transports once the handshake begins.
  • What it does:
    • Defines a wallet_createSession JSON-RPC method for negotiating wallet sessions between apps and chain-agnostic user agents
    • Expresses requested and granted permissions as keyed scopes objects tied to CAIP chain or namespace identifiers
    • Lets each scope specify chains or references, methods, notifications, accounts, and optional capabilities for that authorized context
    • Allows wallets to grant a subset of requested scopes, add more granular chain-specific scopes, or return additional capability metadata in the response
    • Supports session persistence and later lifecycle actions through related session identifiers, update notifications, and revoke / get-session flows referenced by adjacent CAIPs
    • Tries to unify multi-chain wallet authorization semantics across in-page providers, browser extensions, and separate wallet user agents
  • Key claims:
    • The most important design move is the shift from one-off RPC permission prompts to a negotiated session object. CAIP-25 treats authorization as something persistent, queryable, and updateable rather than as a single ad hoc approval.
    • The spec makes scopes the real control plane. A wallet is not merely approving “this dapp”; it is granting particular methods, notifications, accounts, and optional capabilities within explicit namespace or chain contexts.
    • The examples are analytically useful because the wallet is allowed to answer with more granular scopes than the caller requested. That means practical power sits with the wallet and its policy engine, not just with the requester’s preferred shape.
    • CAIP-25 only makes sense together with adjacent standards. CAIP-217 defines the scope-object syntax, while CAIP-211 explains how RPC documents and endpoints can become part of authority negotiation. In practice, this means wallet-session control can expand beyond method allowlists into routing and capability discovery.
    • The privacy section matters more than it first appears. The spec explicitly recommends generic or silent rejection behavior to reduce wallet fingerprinting, which means the handshake is also a privacy-defense surface.
    • CAIP-25 is useful in the corpus because it helps separate three layers that are often blurred together: authentication of the user, identification of the subject, and authorization of a long-lived wallet session.
  • Whitepaper: No standalone CAIP-25 whitepaper or litepaper surfaced in this pass. The clearest primary materials were the official standard text plus the linked CAIP-217 and CAIP-211 documents in the Chain Agnostic corpus; see ../../whitepapers/caip-25-primary-sources-2026-05-10.md.
  • Sources:

Internal linkages

  • Scope-object substrate that gives the session its machine-readable shape: caip-217
  • RPC-authority extension that lets the same session carry endpoint and document policy: caip-211
  • Closest deployed session stack: walletconnect
  • Last reviewed: 2026-05-10 UTC