Fonction CryptSignMessage (wincrypt.h)
La fonction CryptSignMessage crée un de hachage du contenu spécifié, signe le hachage, puis encode à la fois le contenu du message d’origine et le hachage signé.
BOOL CryptSignMessage(
[in] PCRYPT_SIGN_MESSAGE_PARA pSignPara,
[in] BOOL fDetachedSignature,
[in] DWORD cToBeSigned,
[in] const BYTE * [] rgpbToBeSigned,
[in] DWORD [] rgcbToBeSigned,
[out] BYTE *pbSignedBlob,
[in, out] DWORD *pcbSignedBlob
);
[in] pSignPara
Pointeur vers CRYPT_SIGN_MESSAGE_PARA structure contenant les paramètres de signature.
[in] fDetachedSignature
TRUE s’il s’agit d’une signature détachée. Sinon, FALSE. Si ce paramètre est défini sur TRUE, seul le hachage signé est encodé dans pbSignedBlob. Sinon, les deux rgpbToBeSigned et le hachage signé sont encodés.
[in] cToBeSigned
Nombre d’éléments de tableau dans rgpbToBeSigned et rgcbToBeSigned. Ce paramètre doit être défini sur un, sauf si fDetachedSignature est défini sur TRUE.
[in] rgpbToBeSigned
Tableau de pointeurs vers des mémoires tampons qui contiennent le contenu à signer.
[in] rgcbToBeSigned
Tableau de tailles, en octets, des mémoires tampons de contenu pointées dans rgpbToBeSigned.
[out] pbSignedBlob
Pointeur vers une mémoire tampon pour recevoir le hachage signé encodé, si fDetachedSignature est TRUE, ou à la fois le contenu codé et le hachage signé si fDetachedSignature est FALSE.
Ce paramètre peut être null pour définir la taille de ces informations à des fins d’allocation de mémoire. Pour plus d’informations, consultez Récupération des données de longueur inconnue.
[in, out] pcbSignedBlob
Pointeur vers un DWORD spécifiant la taille, en octets, du pbSignedBlob tampon. Lorsque la fonction est retournée, cette variable contient la taille, en octets, du message signé et encodé.
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 égale à zéro (FALSE).
Pour obtenir des informations d’erreur étendues, appelez GetLastError.
Le code d’erreur suivant répertorie les codes d’erreur les plus couramment retournés par la fonction GetLastError.
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows XP [applications de bureau uniquement] |
serveur minimum pris en charge | Windows Server 2003 [applications de bureau uniquement] |
plateforme cible | Windows |
d’en-tête | wincrypt.h |
bibliothèque | Crypt32.lib |
DLL | Crypt32.dll |