PFN_CMSG_CNG_IMPORT_CONTENT_ENCRYPT_KEY fonction de rappel (wincrypt.h)
La fonction de rappel PFN_CMSG_CNG_IMPORT_CONTENT_ENCRYPT_KEY importe une clé de chiffrement de contenu (CEK) déjà déchiffrée. La fonction PFN_CMSG_CNG_IMPORT_CONTENT_ENCRYPT_KEY peut être installée à l’aide d’un identificateur d’objet (OID) de l’API de chiffrement : nouvelle génération (CNG).
Syntaxe
PFN_CMSG_CNG_IMPORT_CONTENT_ENCRYPT_KEY PfnCmsgCngImportContentEncryptKey;
BOOL PfnCmsgCngImportContentEncryptKey(
[in, out] PCMSG_CNG_CONTENT_DECRYPT_INFO pCNGContentDecryptInfo,
[in] DWORD dwFlags,
void *pvReserved
)
{...}
Paramètres
[in, out] pCNGContentDecryptInfo
Pointeur vers une structure CMSG_CNG_CONTENT_DECRYPT_INFO à mettre à jour avec la clé CEK importée. Cette structure contient toutes les informations pertinentes transmises à la fonction CryptMsgControl .
[in] dwFlags
Ce paramètre est réservé. Définissez-le sur zéro.
pvReserved
Ce paramètre est réservé. Définissez-le sur NULL.
Valeur retournée
Si la fonction réussit, la valeur de retour est différente de zéro (TRUE).
Si la fonction échoue, la valeur de retour est zéro (FALSE). Pour obtenir des informations d’erreur étendues, appelez GetLastError.
Si cette fonction de rappel ne prend pas en charge l’algorithme de chiffrement de clé, elle doit retourner FALSE et appeler SetLastError avec ERROR_NOT_SUPPORTED.
Remarques
La fonction CryptMsgControl appelle cette fonction pour les opérations suivantes spécifiées par son paramètre dwCtrlType :
- CMSG_CTRL_DECRYPT
- CMSG_CTRL_KEY_TRANS_DECRYPT
- CMSG_CTRL_KEY_AGREE_DECRYPT
Vous pouvez utiliser les fonctions de support OID pour déployer cette fonction de rappel. Wincrypt.h définit la constante suivante à cet effet.
Constant | Définition |
---|---|
CMSG_OID_CNG_IMPORT_CONTENT_ENCRYPT_KEY_FUNC | « CryptMsgDllCNGImportContentEncryptKey » |
Exemples
Pour obtenir un exemple qui déploie une fonction de rappel installable OID, consultez Extension des fonctionnalités CryptoAPI.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | wincrypt.h |