Partager via


CRYPT_PKCS8_EXPORT_PARAMS structure (wincrypt.h)

[La structure CRYPT_PKCS8_EXPORT_PARAMS peut être utilisée dans les systèmes d’exploitation spécifiés dans la section Configuration requise. Il peut être modifié ou indisponible dans les versions suivantes.]

La structure CRYPT_PKCS8_EXPORT_PARAMS identifie la clé privée et une fonction de rappel pour chiffrer la clé privée. CRYPT_PKCS8_EXPORT_PARAMS est utilisé comme paramètre pour
Fonction CryptExportPKCS8Ex , qui exporte une clé privée au format PKCS #8.

Syntaxe

typedef struct _CRYPT_PKCS8_EXPORT_PARAMS {
  HCRYPTPROV                      hCryptProv;
  DWORD                           dwKeySpec;
  LPSTR                           pszPrivateKeyObjId;
  PCRYPT_ENCRYPT_PRIVATE_KEY_FUNC pEncryptPrivateKeyFunc;
  LPVOID                          pVoidEncryptFunc;
} CRYPT_PKCS8_EXPORT_PARAMS, *PCRYPT_PKCS8_EXPORT_PARAMS;

Membres

hCryptProv

Variable HCRYPTPROV qui contient un handle du fournisseur de services de chiffrement (CSP) utilisé pour chiffrer la clé privée. Il s’agit d’un handle pour le fournisseur de solutions Cloud obtenu en appelant CryptAcquireContext.

dwKeySpec

Variable DWORD qui contient la spécification de clé. Les valeurs dwKeySpec suivantes sont définies pour le fournisseur par défaut.

Valeur Signification
AT_KEYEXCHANGE
Clés utilisées pour chiffrer/déchiffrer les clés de session.
AT_SIGNATURE
Clés utilisées pour créer et vérifier les signatures numériques.

pszPrivateKeyObjId

Variable LPSTR qui contient l’identificateur d’objet (OID) de la clé privée à exporter.

pEncryptPrivateKeyFunc

Pointeur PCRYPT_ENCRYPT_PRIVATE_KEY_FUNC qui pointe vers un rappel vers une fonction qui chiffre la clé privée. Si la valeur est NULL, la clé privée n’est pas chiffrée et une structure de CRYPT_ENCRYPTED_PRIVATE_KEY_INFO PKCS #8 ne sera pas générée par CryptExportPKCS8Ex.

pVoidEncryptFunc

Valeur LPVOID qui fournit des données utilisées pour le chiffrement, telles que la clé, le vecteur d’initialisation et le mot de passe.

Configuration requise

   
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
En-tête wincrypt.h

Voir aussi

CRYPT_ENCRYPTED_PRIVATE_KEY_INFO

CryptAcquireContext

CryptExportPKCS8Ex

PCRYPT_ENCRYPT_PRIVATE_KEY_FUNC