docs/documentation/platform/pki/code-signing/overview.mdx
In Infisical, Code Signing lets you digitally sign software artifacts (JARs, binaries, container images, and more) while keeping private keys secure on the server. Instead of distributing signing keys to developer workstations or CI pipelines, signing operations are performed centrally through Infisical with full audit trails and approval controls.
sequenceDiagram
participant Tool as Signing Tool
participant PKCS as PKCS#11 Module
participant Infisical as Infisical
Tool->>PKCS: Sign data
PKCS->>Infisical: POST /signers/{id}/sign
Infisical->>Infisical: Validate grant, sign data
Infisical-->>PKCS: Signature
PKCS-->>Tool: Signature
codeSigning extended key usage.A signer is a named code-signer bound to a certificate. It represents a signing capability within a project. Private keys are stored securely on the Infisical server and never leave it. All cryptographic operations are performed server-side.
Signing policies optionally define the rules that must be satisfied before signing can occur. Policies support constraints that can be combined:
Every call to sign data, whether it succeeds, fails, or is denied, is recorded as a signing operation. This provides a complete audit trail of who signed what, when, and using which grant.
The Infisical PKCS#11 module implements the PKCS#11 v2.40 standard, allowing standard signing tools to use Infisical signers without code changes. The module supports RSA (PKCS#1 v1.5 and PSS) and ECDSA signing mechanisms.