A technical overview of the Key object, used to derive wallets and perform raw signing operations via the API.
Key is a core API resource in Dfns. It represents a distributed private key managed by our MPC network. You don’t interact with the key material directly; instead, you use its unique keyId to perform cryptographic operations.
The Key object has two primary functions for a developer:
Wallet objects.raw signing).Key object is blockchain-agnostic and can be used to derive multiple Wallet objects across different networks. This creates a one-to-many relationship that simplifies your infrastructure, as you only need to reference one keyId to manage assets on various chains.
Think of it like this:
Key (with keyId)
-> Wallet (Ethereum, with address and walletId)-> Wallet (Solana, with address and walletId)-> Wallet (Bitcoin, with address and walletId)signingKey in the request body to specify which underlying key should control the new wallet.
Key object is the ability to perform raw signing. This is essential for any action beyond a simple asset transfer, such as interacting with a smart contract or signing an off-chain message.
You do this by making a POST request to the /keys/{keyId}/signatures endpoint.
Your application is then responsible for broadcasting the transaction with the returned signature to the network. This gives you full control over transaction assembly, gas, and nonce management, while Dfns handles the secure signing operation.
Key object only signs. Broadcasting is a function of the Wallet object, as it is network-specific. See the Sign & Broadcast endpoint for broadcasting after the signature has been issued.Key object is a inaccessible secret. You can use it to generate signatures, but you can never read the underlying private key material. Our MPC architecture enforces this guarantee.
For a deeper technical dive, see our MPC Architecture page.
Unique identifier for the key.
1 - 64^key-[a-z0-9]{5}-[a-z0-9]{5}-[a-z0-9]{14,16}$"key-01snl-t56gb-j8tsok0vn802p80i"
The cryptographic scheme for the key.
ECDSA, EdDSA, Schnorr The elliptic curve for the key.
ed25519, secp256k1, stark Hex-encoded public key.
Current status of the key.
Active, Archived Whether the key is custodial (owned by organization) or non-custodial (delegated to end user).
Whether this key can be used as a master key for HD derivation.
Derivation info if this key was derived from a master key.
Nickname for the key.
Whether this key was imported.
Whether this key has been exported.