Overview
Presignatures allow you to split the MPC signing protocol into two phases:- Pre-computation phase — Generate a presignature ahead of time using the
presignendpoint. - Signing phase — Pass the presignature to a sign, raw sign, or send asset endpoint to complete the signature faster.
How It Works
A presignature is an opaque string returned by the presign endpoint. You store it and later include it in thepresignature field of any signing request. The signing endpoint uses the pre-computed data to complete the MPC protocol faster.

Key Details
| Property | Details |
|---|---|
| Supported curves | SECP256K1 (EVM, Bitcoin). ED25519 (Solana) support coming soon. |
| Default expiration | 7 days from creation |
| Maximum expiration | 365 days from creation |
| Active limit | 100 presignatures per client |
| Usage | Single-use — each presignature can only be used for one signing operation |
Use Cases
- Low-latency signing — Pre-compute during idle time so that user-facing sign requests complete faster.
- Batch preparation — Generate multiple presignatures in advance for a batch of upcoming transactions.
- Time-sensitive transactions — Prepare presignatures before a deadline so signing is fast when needed.
Compatible Endpoints
Presignatures can be used with the following Enclave MPC API endpoints:- Sign (
POST /v1/sign) — RPC-based signing (e.g.,eth_sendTransaction) - Raw Sign (
POST /v1/raw/sign/SECP256K1) — Sign a hex digest string - Send Assets (
POST /v1/assets/send) — High-level token transfer
Presignatures currently only support the
SECP256K1 curve. ED25519 (Solana) support is coming soon.Best Practices
- Store the presignature
idandexpiresAtalongside thedatavalue. While theidis not required for signing, it is useful for bookkeeping and may be needed when communicating with Portal support. - Discard expired presignatures — set up a regular process to check
expiresAttimestamps and clean up expired entries so you stay within the 100 active presignature limit.