Overview
Multi-chain session keys allow you to create and manage session keys that work across multiple blockchains with a single signature.- Sign once, deploy everywhere: Create multiple sessions for different chains and sign them all at once
- Flexible installation: Install sessions in any order across different chains as needed
- Reduce user friction: Users only need to sign once instead of multiple times for each chain
- Cross-chain automation: Enable seamless automation across multiple chains with the same session key
While this guide focuses on multi-chain usage, you can also use this pattern on a single chain to pre-sign multiple different sessions and enable them over time as your application needs to evolve.
1
Create the Sessions
First, define your sessions for different chains. Each session can have different owners, policies, and permissions depending on your use case:
2
Enable the Session
To enable a session, you need to get the session details and enable data. This step prepares the session for installation on the target chain:The method returns the data needed to install the session on-chain, including the signature required to enable sessions.The account owner will be prompted to sign the session installation request.
Reusing the Signature
One of the most powerful features is the ability to reuse an existing signature across multiple session installations. Once you have the signature to enable a session, you can use it for future installations. For this, store thesessionDetails and enableSignature for later use.This pattern allows you to:- Pre-sign all your sessions during user onboarding
- Enable specific sessions on-demand without additional signatures
- Batch multiple session installations with the same signature
3
Use the Sessions
Once your sessions are enabled, you can use them to sign transactions on any supported chain: