Fonctions de clé privée et publique
CertEnroll.dll implémente les interfaces IX509PrivateKey et IX509PublicKey. Vous pouvez, par exemple, utiliser l’interface IX509PrivateKey pour effectuer les actions suivantes sur une clé privée :
- Créez, ouvrez, fermez, importez, exportez et supprimez la clé.
- Spécifiez ou récupérez l’algorithme de clé publique .
- Spécifiez ou récupérez des informations sur les fournisseurs de services de chiffrement disponibles (CSP) qui prennent en charge l’algorithme de clé publique.
- Spécifiez ou récupérez le certificat associé à la clé privée .
- Spécifiez ou récupérez le nom du conteneur de clé .
- Spécifiez ou récupérez une description de la clé et un nom d’affichage.
- Spécifiez ou récupérez les contraintes d’exportation sur une clé privée.
- Spécifiez ou récupérez une valeur booléenne qui indique si la clé existe.
- Spécifiez ou récupérez une valeur qui indique comment la clé est protégée avant l’utilisation.
- Spécifiez ou récupérez une valeur qui indique si la clé peut être utilisée pour la signature, le chiffrement ou les deux.
- Spécifiez ou récupérez une valeur qui identifie l’objectif spécifique pour lequel la clé peut être utilisée.
- Spécifiez ou récupérez la longueur de la clé.
- Spécifiez ou récupérez une valeur qui indique si la clé est utilisée ou enregistrée dans le contexte d’un ordinateur ou d’un utilisateur.
- Récupérez une valeur booléenne qui spécifie si la clé a été ouverte.
- Spécifiez un numéro d’identification personnel pour accéder à une clé privée sur une carte à puce .
- Spécifiez ou récupérez le nom du fournisseur de solutions cloud associé à la clé.
- Spécifiez ou récupérez le descripteur de sécurité pour la clé.
Chacune des sections suivantes identifie une fonction exportée par Xenroll.dll qui peut être utilisée pour gérer une clé de chiffrement . Chaque rubrique explique également comment utiliser CertEnroll.dll pour remplacer la fonction ou indique qu’aucun mappage entre les deux bibliothèques n’existe :
- ContainerNameWStr
- GenKeyFlags
- GetKeyLen
- GetKeyLenEx
- GetSupportedKeySpec
- KeySpec
- limitExchangeKeyToEncipherment
- PVKFileNameWStr
- ReuseHardwareKeyIfUnableToGenNew
- UseExistingKeySet
- rubriques connexes
ContainerNameWStr
La fonction ContainerNameWStr dans Xenroll.dll spécifie ou récupère le nom du conteneur de clé .
Lorsque vous utilisez CertEnroll.dll, vous pouvez effectuer les actions suivantes pour récupérer le nom d’un conteneur de clés :
- Appelez la propriété Request sur un objet IX509Enrollment existant.
- Appelez la méthode GetInnerRequest sur la requête retournée à l’étape 1 pour récupérer la requête la plus interne.
- Appelez QueryInterface sur l’objet IX509CertificateRequest retourné à l’étape 2 pour effectuer un cast vers un objet IX509CertificateRequestPkcs10.
- Appelez la propriété PrivateKey sur la requête PKCS #10.
- Appelez la propriété ContainerName sur l’objet IX509PrivateKey récupéré à l’étape 4.
GenKeyFlags
La fonction GenKeyFlags définie dans Xenroll.dll spécifie ou récupère des indicateurs utilisés pour générer une clé privée ou paire de clés publique/privée.
Lorsque vous utilisez CertEnroll.dll, vous pouvez spécifier un certain nombre de propriétés différentes qui déterminent la façon dont une clé privée est créée. Pour plus d’informations, consultez Créer.
GetKeyLen
La fonction GetKeyLen définie dans Xenroll.dll récupère la taille maximale ou minimale de clé d’une clé de chiffrement.
Lorsque vous utilisez CertEnroll.dll, vous pouvez appeler la propriété Length sur un IX509PrivateKey ou objet IX509PublicKey pour récupérer la taille de clé, en bits.
GetKeyLenEx
La fonction GetKeyLenEx définie dans Xenroll.dll récupère la taille de clé maximale ou minimale ou la longueur d’incrément d’une clé de chiffrement.
Lorsque vous utilisez CertEnroll.dll, vous pouvez appeler la propriété Length sur un IX509PrivateKey ou objet IX509PublicKey pour récupérer la taille de clé, en bits. Si un algorithme prend en charge les longueurs de clé incrémentielles, vous pouvez appeler la propriété IncrementLength sur l’objet ICspAlgorithm pour récupérer la valeur d’incrément. Vous pouvez également appeler les propriétés MinLength et MaxLength pour récupérer les tailles de clé minimales et maximales.
GetSupportedKeySpec
La fonction GetSupportedKeySpec définie dans Xenroll.dll récupère une valeur qui indique si un fournisseur de solutions Cloud prend en charge les clés d’échange, les clés de signature ou les deux.
Lorsque vous utilisez CertEnroll.dll, vous pouvez appeler la propriété KeySpec sur la IX509PrivateKey ou objets ICspInformation pour récupérer les opérations prises en charge par la clé.
KeySpec
La fonction KeySpec définie dans Xenroll.dll spécifie ou récupère le type de clé.
Lorsque vous utilisez CertEnroll.dll, vous pouvez appeler la propriété KeySpec sur un objet IX509PrivateKey pour récupérer les opérations prises en charge par la clé.
LimitExchangeKeyToEncipherment
La fonction LimitExchangeKeyToEncipher ment définie dans Xenroll.dll spécifie ou récupère une valeur booléenne qui indique si une clé de chiffrement ne peut être utilisée que pour les données ou le chiffrement de clé.
CertEnroll.dll ne contient pas d’équivalent direct pour cette fonction. Toutefois, vous pouvez obtenir un résultat presque équivalent en spécifiant un objet IX509ExtensionKeyUsage et en l’ajoutant à la demande de certificat.
PVKFileNameWStr
La fonction PVKFileNameWStr définie dans Xenroll.dll spécifie ou récupère le nom d’un fichier contenant des clés exportées.
Lorsque vous utilisez CertEnroll.dll, vous pouvez appeler la méthode Export sur un objet IX509PrivateKey pour exporter une clé vers un BSTR. Vous pouvez appeler la méthode ExportPublicKey pour exporter la clé publique partie d’une paire de clés asymétriques.
ReuseHardwareKeyIfUnableToGenNew
La fonction ReuseHardwareKeyIfUnableToGenNew définie dans Xenroll.dll spécifie ou récupère une valeur booléenne qui indique si une clé existante est réutilisée lorsqu’une erreur est rencontrée lors de la génération d’une nouvelle clé.
Lorsque vous utilisez CertEnroll.dll, vous pouvez appeler la méthode InitializeFromCertificate sur un objet IX509CertificateRequestPkcs10 et spécifier une valeur de l’objet X509RequestInheritOptions pour réutiliser une clé privée existante.
UseExistingKeySet
La fonction UseExistingKeySet définie dans Xenroll.dll spécifie ou récupère une valeur booléenne qui indique s’il faut utiliser des clés existantes.
Lorsque vous utilisez CertEnroll.dll, vous pouvez appeler la méthode InitializeFromCertificate sur un objet IX509CertificateRequestPkcs10 et spécifier une valeur de l’objet X509RequestInheritOptions pour réutiliser les clés privées et publiques existantes.
Rubriques connexes