Skip to main content

Address derivation

Canton identities are derived from the Ed25519 curve, which Turnkey fully supports. Rather than deriving a single chain-specific address, Canton uses a two-step process: Turnkey generates an Ed25519 key pair (using ADDRESS_FORMAT_COMPRESSED with CURVE_ED25519), and the resulting public key is then registered with a specific Canton network node. Registration creates a new Party and returns its PartyId along with a Canton-internal fingerprint of your public key. The party participates in network activity by identifying itself with its PartyId and fingerprint. Note that a party is not a global concept (unlike e.g. ENS) — it lives only on the node where it was registered.

Transaction construction and signing

Turnkey supports Canton transaction signing through our core signing capabilities, using the SignRawPayload endpoint to sign transaction hashes with Ed25519. We have an example repository that demonstrates how to construct and sign Canton transactions:

Example

Here’s a comprehensive example showing how to register a party and sign a Canton transaction with Turnkey:

Canton network support

Because there is no public Canton testnet, Turnkey’s signing works against:
  • A local Canton network (spun up via docker compose / dpm sandbox)
  • A live Canton node (pointed to via the CANTON_LEDGER_API_URL environment variable)

Key features for Canton

  • Ed25519 Signing: Turnkey fully supports the Ed25519 curve used by Canton
  • External party registration: Register your Turnkey-managed public key with a Canton node to obtain a PartyId and fingerprint
  • Interactive submission support: Sign prepared transaction hashes for both v2 and v3 hashing schemes
  • Integration Example: Our example repository provides a reference implementation for integrating with the Canton ecosystem

Benefits of using Turnkey with Canton

  • Secure Key Management: Private keys are securely stored in Turnkey’s infrastructure
  • Policy Controls: Apply custom policies to authorize signing based on criteria
  • Developer-Friendly: Integrate with existing Canton development workflows
  • Multi-environment Support: Use the same code across a local sandbox and live nodes

Daml development

Canton applications are written in the Daml smart contract language. When building Daml applications on Canton, Turnkey can securely manage your private keys for:
  • Deploying DARs (Daml Archive packages)
  • Executing commands on Daml contracts
  • Managing external party identities
If you’re building on Canton and need assistance with your Turnkey integration, feel free to contact us at hello@turnkey.com, on X, or on Slack.