Fonction CryptMsgGetAndVerifySigner (wincrypt.h)

La fonction CryptMsgGetAndVerifySigner vérifie la signature d’un message de chiffrement.

Syntaxe

BOOL CryptMsgGetAndVerifySigner(
  [in]                HCRYPTMSG      hCryptMsg,
  [in]                DWORD          cSignerStore,
  [in, optional]      HCERTSTORE     *rghSignerStore,
  [in]                DWORD          dwFlags,
  [out, optional]     PCCERT_CONTEXT *ppSigner,
  [in, out, optional] DWORD          *pdwSignerIndex
);

Paramètres

[in] hCryptMsg

Handle d’un message de chiffrement.

[in] cSignerStore

Nombre de magasins dans le tableau rghSignerStore .

[in, optional] rghSignerStore

Tableau de handles de magasin de certificats qui peuvent être recherchés pour le certificat d’un signataire.

[in] dwFlags

Indique une utilisation particulière de la fonction.

Valeur Signification
CMSG_TRUSTED_SIGNER_FLAG
Les magasins dans rghSignerStore sont supposés approuvés et sont les seuls magasins recherchés pour trouver le certificat correspondant à l’émetteur et au numéro de série du signataire. Sinon, des magasins de signataires peuvent être fournis pour compléter le magasin de certificats du message. Si un certificat de signataire est trouvé, sa clé publique est utilisée pour vérifier la signature du message.
CMSG_SIGNER_ONLY_FLAG
Renvoyer le signataire sans effectuer la vérification de la signature.
CMSG_USE_SIGNER_INDEX_FLAG
Seul le signataire spécifié par *pdwSignerIndex est retourné. Sinon, effectuez une itération dans tous les signataires jusqu’à ce qu’une signature soit vérifiée ou qu’il n’y ait plus de signataires.

[out, optional] ppSigner

Si la signature est vérifiée, ppSigner est mis à jour pour pointer vers le contexte de certificat du signataire. Lorsque vous avez terminé d’utiliser le certificat, libérez le contexte en appelant la fonction CertFreeCertificateContext . Ce paramètre peut être NULL si l’application n’a pas besoin du certificat du signataire.

[in, out, optional] pdwSignerIndex

Si la signature est vérifiée, pdwSigner est mis à jour pour pointer vers l’index du signataire dans le tableau de signataires. Ce paramètre peut être NULL si l’application n’a pas besoin de l’index du signataire.

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.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP [applications de bureau | applications UWP]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau | applications UWP]
Plateforme cible Windows
En-tête wincrypt.h
Bibliothèque Crypt32.lib
DLL Crypt32.dll

Voir aussi

CERT_CONTEXT

CTL_CONTEXT

CryptMsgControl

CryptMsgOpenToDecode

Fonctions de vérification à l’aide de CTL