Aller au contenu principal
S'applique à :
DuoKey Cockpit v2CA classiques (RSA / ECDSA) et post-quantiquesVaults HSM · KMS cloud · MPC

Vue d'ensemble​

Une autorité de certification créée avec un vault conserve sa clé privée dans ce vault. La clé y est générée, seule la clé publique est relue, et rien n'est exporté ni stocké avec la CA. Cela s'applique aux CA classiques RSA et ECDSA comme aux CA post-quantiques et hybrides.

Une CA créée sans vault fonctionne toujours : sa clé est générée en logiciel et stockée par la plateforme avec la CA. La page de détail de la CA indique le cas applicable (voir Garde de la clé), et les CA existantes peuvent être déplacées dans un vault (voir Migrer une CA existante).

Fonctionnement des clés de CA résidentes dans un vault​

1

Génération de la clé dans le vault

Lorsque vous créez une CA racine ou intermédiaire en sélectionnant un vault, la paire de clés est générée dans ce vault. Cockpit ne relit que la clé publique.

2

Signature de contrôle

Avant de construire le certificat de la CA, Cockpit demande une signature de test au vault et la vérifie. Si la clé ne signe pas correctement, la création de la CA échoue et la clé du vault est supprimée.

3

Chaque signature est faite dans le vault

Le certificat de la CA, les certificats émis, les CRL, les réponses OCSP et les réponses des protocoles d'enrôlement (ACME, EST, CMP, enrôlement automatique Windows, cert-manager) sont tous signés par le vault.

4

Chaque signature est vérifiée avant usage

Chaque signature renvoyée par le vault est vérifiée avec la clé publique de la CA avant d'être placée dans un certificat, une CRL ou une réponse OCSP. Un back-end qui signe avec une mauvaise clé, un mauvais padding ou un mauvais hachage échoue de façon sûre au lieu de produire un certificat invalide.

Chaque signature coûte un aller-retour vers le vault. Pour une émission à fort volume, placez le vault près du déploiement Cockpit.

Garde de la clé​

La page de détail de la CA affiche un badge de garde de la clé (renvoyé aussi par l'API sous key_custody) :

GardeSignification
vaultLa clé n'existe que dans le vault, HSM, KMS cloud ou cluster MPC associé
vault_pqcCA post-quantique ou hybride, signée dans le vault
legacy_exportableUne copie logicielle de la clé est encore stockée avec la CA et une clé de vault est associée (CA créée avant la prise en charge des clés classiques résidentes, ou CA en cours de migration)
local_databaseLa clé est stockée par la plateforme avec la CA ; aucun vault n'est associé
noneAucune clé de signature utilisable

Back-ends pris en charge​

L'assistant de création de CA ne propose que les algorithmes que le vault choisi peut conserver et utiliser pour signer.

Back-end du vaultClés de CA classiques
Software VaultRSA-2048, RSA-4096, EC P-256, EC P-384
HSM Securosys PrimusRSA, EC
Azure Key Vault / Managed HSMRSA, EC
HSM réseau via le proxy REST PKCS#11 DuoKey (voir Vaults)RSA, EC
Agent HSM sur site, DuoKey Software HSMRSA, EC (version actuelle de l'agent requise)
AWS KMSEC uniquement
Google Cloud KMSEC uniquement
HashiCorp Vault / OpenBao TransitEC uniquement
Sepior (Blockdaemon) MPCEC P-256 uniquement
Alibaba Cloud KMSEC P-256 uniquement

Les CA post-quantiques et hybrides ne changent pas : elles nécessitent un vault qui génère et signe des clés post-quantiques (Software Vault ou Securosys), voir PKI post-quantique.

Qualifiez votre HSM avant la production

Le comportement de signature varie selon le modèle de HSM, la version de firmware et la configuration du KMS cloud. Avant de déplacer une CA de production, créez une CA de test sur le même vault, émettez, révoquez et publiez une CRL avec elle. Contactez DuoKey pour confirmer le statut de qualification de votre HSM ou KMS.

Clés de CA protégées par MPC​

Une CA peut être associée à un vault MPC. Ses certificats, CRL et réponses OCSP sont alors signés par le cluster MPC : la clé privée n'est jamais reconstituée en un seul endroit, ni dans Cockpit ni dans un nœud MPC.

Back-end MPCAlgorithmes de clé de CARemarques
Sepior (Blockdaemon) MPC, via l'API DuoKey KMSECDSA P-256 uniquementLes clés de CA RSA et P-384 sont refusées à la création, car le service de signature MPC ne signe qu'en ECDSA P-256 / SHA-256
DuoKey Software HSM / Managed MPC (PKCS#11 via l'agent HSM)RSA, ECNécessite la version actuelle de l'agent HSM, qui renvoie la clé publique de la clé MPC
Clés de CA MPC : préversion

Les clés de CA protégées par MPC sont disponibles en préversion. Validez la création de la CA, l'émission et la publication de CRL sur votre vault MPC avant de l'utiliser pour une CA de production. Si le service MPC ne renvoie pas de clé publique exploitable, la création de la CA échoue avec une erreur explicite ; elle ne produit jamais une CA avec une mauvaise clé.

Exiger des clés de CA résidentes dans un vault​

Les déploiements sur site peuvent refuser toute nouvelle CA classique sans vault avec le paramètre de déploiement DKE_PKI_REQUIRE_VAULT_CA_KEYS=true. Aucune nouvelle clé de CA logicielle ne peut alors être créée. Ce paramètre est désactivé par défaut. Sur les tenants hébergés par DuoKey, demandez au support DuoKey de l'appliquer.

Migrer une CA existante​

Les CA dont la garde est local_database ou legacy_exportable peuvent être déplacées dans un vault sans changer le certificat de la CA. Les trois opérations nécessitent la permission Operations.Pki.CAs.Update.

1

Importer la clé existante dans le vault (optionnel)

POST /api/pki/cas/{id}/key/import-to-vault avec vault_id importe la clé stockée via l'interface d'import de clé (BYOK) du vault et l'associe. Cette opération n'est aujourd'hui disponible que pour Azure Key Vault / Managed HSM ; les autres vaults répondent 400. Pour un HSM, importez la clé avec l'outillage du fabricant puis passez à l'étape 2.

2

Associer la CA à la clé du vault

POST /api/pki/cas/{id}/key/bind-vault-key avec vault_id et key_external_id. L'association est refusée si la clé publique de la clé du vault n'est pas identique à celle du certificat de la CA ou si la signature de contrôle ne se vérifie pas. La copie stockée est conservée à ce stade (garde legacy_exportable).

3

Purger la clé stockée

POST /api/pki/cas/{id}/key/purge-stored-key efface la copie logicielle. L'opération est refusée si la CA n'est pas associée à une clé de vault qui passe les mêmes contrôles. Ensuite, la CA ne signe plus que dans le vault (garde vault).

Renouveler la clé plutôt que migrer

Si la clé existante a déjà été détenue en logiciel et que vous voulez une clé qui n'a jamais existé qu'en matériel, créez une nouvelle CA avec une clé résidente dans un vault et émettez depuis celle-ci. L'ancienne CA continue de servir sa CRL et son OCSP pour les certificats qu'elle a émis jusqu'à leur expiration.

Limites​

  • SCEP ne peut pas être servi depuis une CA dont la clé réside dans un vault. SCEP déchiffre l'enveloppe d'enrôlement avec la clé de la CA (déchiffrement RSA PKCS#1 v1.5), ce que les back-ends de vault n'offrent pas pour les clés de CA. Un profil SCEP nécessite donc une CA RSA dont la clé est détenue en logiciel par la plateforme ; l'association d'un profil SCEP à une CA résidente dans un vault est refusée.
  • Les CA secp256k1 ne peuvent pas être résidentes dans un vault.
  • Software Vault : une clé de CA générée dans le Software Vault est stockée comme une clé scellée et non exportable nommée CA signing key - <CN>. Supprimer cette clé empêche la CA de signer.
  • La création d'une CA ajoute une signature de contrôle, et chaque signature un aller-retour vers le vault.

API​

Méthode et cheminRôlePermission
GET /api/pki/cas/{id}Détails de la CA, dont key_custodyOperations.Pki.CAs.Read
GET /api/vaults/{id}/key-typesAlgorithmes qu'un vault peut conserver comme clé de CA (pki_signing_algorithms[].ca_key_in_vault)Operations.Vaults.Read
POST /api/pki/cas/{id}/key/import-to-vaultImporter la clé stockée dans le vault et l'associerOperations.Pki.CAs.Update
POST /api/pki/cas/{id}/key/bind-vault-keyAssocier la CA à une clé de vault existanteOperations.Pki.CAs.Update
POST /api/pki/cas/{id}/key/purge-stored-keyEffacer la clé logicielle stockéeOperations.Pki.CAs.Update

Une CA ou un vault d'un autre tenant répond 404.