Partager via


PCRYPT_DECRYPT_PRIVATE_KEY_FUNC fonction de rappel (wincrypt.h)

[La fonction PCRYPT_DECRYPT_PRIVATE_KEY_FUNC 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 fonction PCRYPT_DECRYPT_PRIVATE_KEY_FUNC déchiffre la clé privée et retourne la clé déchiffrée dans le paramètre pbClearTextKey . PCRYPT_DECRYPT_PRIVATE_KEY_FUNC est une fonction de rappel spécifiée dans une structure de CRYPT_PKCS8_IMPORT_PARAMS . Il est utilisé lorsqu’une structure de CRYPT_ENCRYPTED_PRIVATE_KEY_INFO contient une clé privée qui doit être déchiffrée. La fonction CryptImportPKCS8 utilise cette fonction. La fonction doit être implémentée par le développeur pour s’adapter à chaque application.

Syntaxe

PCRYPT_DECRYPT_PRIVATE_KEY_FUNC PcryptDecryptPrivateKeyFunc;

BOOL PcryptDecryptPrivateKeyFunc(
  [in]      CRYPT_ALGORITHM_IDENTIFIER Algorithm,
  [in]      CRYPT_DATA_BLOB EncryptedPrivateKey,
  [out]     BYTE *pbClearTextKey,
  [in, out] DWORD *pcbClearTextKey,
  [in]      LPVOID pVoidDecryptFunc
)
{...}

Paramètres

[in] Algorithm

Une structure CRYPT_ALGORITHM_IDENTIFIER qui identifie l’algorithme utilisé pour chiffrer le type PrivateKeyInfo ASN.1 trouvé dans la norme PKCS #8.

[in] EncryptedPrivateKey

Valeur CRYPT_DATA_BLOB qui identifie l’objet BLOB de clé privée chiffrée.

[out] pbClearTextKey

Pointeur vers une mémoire tampon BYTE pour recevoir le texte en clair. Ce paramètre peut être NULL. Pour plus d’informations, consultez Récupération de données de longueur inconnue.

[in, out] pcbClearTextKey

Pointeur vers une valeur DWORD qui identifie la taille, en octets, de la mémoire tampon pbClearTextKey . Si la taille est égale à zéro, pcbClearTextKey doit être rempli avec la taille, en octets, requise pour déchiffrer la clé, et pbClearTextKey doit être ignoré.

[in] pVoidDecryptFunc

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

Valeur retournée

Si la fonction réussit, la fonction retourne une valeur différente de zéro (TRUE).

Si la fonction échoue, elle retourne zéro (FALSE).

Configuration requise

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

Voir aussi

CRYPT_ENCRYPTED_PRIVATE_KEY_INFO

CRYPT_PKCS8_IMPORT_PARAMS

CryptImportPKCS8