Fonction CryptVerifyDetachedMessageHash (wincrypt.h)
La fonction CryptVerifyDetachedMessageHash vérifie un hachage détaché.
Syntaxe
BOOL CryptVerifyDetachedMessageHash(
[in] PCRYPT_HASH_MESSAGE_PARA pHashPara,
[in] BYTE *pbDetachedHashBlob,
[in] DWORD cbDetachedHashBlob,
[in] DWORD cToBeHashed,
[in] const BYTE * [] rgpbToBeHashed,
[in] DWORD [] rgcbToBeHashed,
[out] BYTE *pbComputedHash,
[in, out] DWORD *pcbComputedHash
);
Paramètres
[in] pHashPara
Pointeur vers une structure CRYPT_HASH_MESSAGE_PARA contenant les paramètres de hachage.
[in] pbDetachedHashBlob
Pointeur vers le hachage encodé et détaché.
[in] cbDetachedHashBlob
Taille, en octets, du hachage détaché.
[in] cToBeHashed
Nombre d’éléments dans les tableaux rgpbToBeHashed et rgcbToBeHashed .
[in] rgpbToBeHashed
Tableau de pointeurs vers les mémoires tampons de contenu à hacher.
[in] rgcbToBeHashed
Tableau de tailles, en octets, pour les mémoires tampons de contenu pointées par les éléments du tableau rgcbToBeHashed .
[out] pbComputedHash
Pointeur vers une mémoire tampon pour recevoir le hachage calculé.
Ce paramètre peut être NULL si le hachage nouvellement créé n’est pas nécessaire pour un traitement supplémentaire ou pour définir la taille du hachage à des fins d’allocation de mémoire. Pour plus d’informations, consultez Récupération de données de longueur inconnue.
[in, out] pcbComputedHash
Pointeur vers un DWORD spécifiant la taille, en octets, de la mémoire tampon pbComputedHash . Lorsque la fonction retourne, ce DWORD contient la taille, en octets, du hachage créé. Le hachage ne sera pas retourné si ce paramètre a la valeur 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.
La liste suivante répertorie les codes d’erreur les plus couramment retournés par la fonction GetLastError .
Code de retour | Description |
---|---|
|
Ce n’est pas un message de chiffrement haché. |
|
Le type d’encodage de message n’est pas valide. Actuellement, seule PKCS_7_ASN_ENCODING est prise en charge. CbSize dans *pHashPara n’est pas valide. |
|
Si la mémoire tampon spécifiée par le paramètre pbComputedHash n’est pas suffisamment grande pour contenir les données retournées, la fonction définit le code ERROR_MORE_DATA et stocke la taille de mémoire tampon requise, en octets, dans la variable pointée par pcbComputedHash. |
Si la fonction échoue, GetLastError peut renvoyer une erreur d’encodage/décodage ASN.1 ( Abstract Syntax Notation One ). Pour plus d’informations sur ces erreurs, consultez Valeurs de retour d’encodage/décodage ASN.1.
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 |
Bibliothèque | Crypt32.lib |
DLL | Crypt32.dll |