CryptMsgGetAndVerifySigner-Funktion (wincrypt.h)

Die CryptMsgGetAndVerifySigner-Funktion überprüft die Signatur einer kryptografischen Nachricht.

Syntax

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
);

Parameter

[in] hCryptMsg

Handle einer kryptografischen Nachricht.

[in] cSignerStore

Anzahl der Speicher im rghSignerStore-Array .

[in, optional] rghSignerStore

Array von Zertifikatspeicherhandles, die nach dem Zertifikat eines Signierers gesucht werden können.

[in] dwFlags

Gibt eine bestimmte Verwendung der Funktion an.

Wert Bedeutung
CMSG_TRUSTED_SIGNER_FLAG
Die Speicher in rghSignerStore werden als vertrauenswürdig angenommen, und sie sind die einzigen Speicher, die gesucht werden, um das Zertifikat zu finden, das dem Aussteller und der Seriennummer des Signaturgebers entspricht. Andernfalls können Signerspeicher bereitgestellt werden, um den Zertifikatspeicher der Nachricht zu ergänzen. Wenn ein Signaturzertifikat gefunden wird, wird dessen öffentlicher Schlüssel verwendet, um die Nachrichtensignatur zu überprüfen.
CMSG_SIGNER_ONLY_FLAG
Gibt den Signierer zurück, ohne die Signaturüberprüfung durchzuführen.
CMSG_USE_SIGNER_INDEX_FLAG
Es wird nur der von *pdwSignerIndex angegebene Signierer zurückgegeben. Andernfalls durchlaufen Sie alle Signierer, bis eine Signatur überprüft wurde oder keine Signierer mehr vorhanden sind.

[out, optional] ppSigner

Wenn die Signatur überprüft wird, wird ppSigner aktualisiert, um auf den Zertifikatkontext des Signierers zu verweisen. Wenn Sie die Verwendung des Zertifikats abgeschlossen haben, geben Sie den Kontext frei, indem Sie die CertFreeCertificateContext-Funktion aufrufen. Dieser Parameter kann NULL sein, wenn die Anwendung das Zertifikat des Signierers nicht benötigt.

[in, out, optional] pdwSignerIndex

Wenn die Signatur überprüft wird, wird pdwSigner aktualisiert, um auf den Index des Signierers im Array der Signierer zu verweisen. Dieser Parameter kann NULL sein, wenn die Anwendung keinen Index des Signierers benötigt.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich null (TRUE).

Wenn die Funktion fehlschlägt, ist der Rückgabewert 0 (FALSE). Rufen Sie GetLastError auf, um erweiterte Fehlerinformationen zu erhalten.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile wincrypt.h
Bibliothek Crypt32.lib
DLL Crypt32.dll

Weitere Informationen

CERT_CONTEXT

CTL_CONTEXT

CryptMsgControl

CryptMsgOpenToDecode

Überprüfungsfunktionen mithilfe von CTLs