VerifySignature-Funktion (sspi.h)
Überprüft, ob eine mit der MakeSignature-Funktion signierte Nachricht in der richtigen Reihenfolge empfangen und nicht geändert wurde.
Syntax
KSECDDDECLSPEC SECURITY_STATUS SEC_ENTRY VerifySignature(
[in] PCtxtHandle phContext,
[in] PSecBufferDesc pMessage,
[in] unsigned long MessageSeqNo,
[out] unsigned long *pfQOP
);
Parameter
[in] phContext
Ein Handle für den Sicherheitskontext , der für die Nachricht verwendet werden soll.
[in] pMessage
Zeiger auf eine SecBufferDesc-Struktur , die auf einen Satz von SecBuffer-Strukturen verweist, die die Nachricht und die zu überprüfende Signatur enthalten. Die Signatur befindet sich in einer SecBuffer-Struktur vom Typ SECBUFFER_TOKEN.
[in] MessageSeqNo
Gibt die Sequenznummer an, die von der Transportanwendung erwartet wird, falls vorhanden. Wenn die Transportanwendung keine Sequenznummern verwaltet, ist dieser Parameter 0.
[out] pfQOP
Zeiger auf eine ULONG-Variable , die paketspezifische Flags empfängt, die die Qualität des Schutzes angeben.
Einige Sicherheitspakete ignorieren diesen Parameter.
Rückgabewert
Wenn die Funktion überprüft, ob die Nachricht in der richtigen Sequenz empfangen und nicht geändert wurde, wird der Rückgabewert SEC_E_OK.
Wenn die Funktion feststellt, dass die Nachricht gemäß den Informationen in der Signatur nicht korrekt ist, kann der Rückgabewert einer der folgenden Fehlercodes sein.
Rückgabecode | Beschreibung |
---|---|
|
Die Nachricht wurde nicht in der richtigen Reihenfolge empfangen. |
|
Die Nachricht wurde geändert. |
|
Das von phContext angegebene Kontexthandle ist ungültig. |
|
pMessage enthielt keinen gültigen SECBUFFER_TOKEN Puffer oder zu wenige Puffer. |
|
Die zwischen Client und Server ausgehandelte Qualität des Schutzes umfasste keine Integritätsprüfung . |
Hinweise
Die VerifySignature-Funktion schlägt fehl, wenn die Nachricht mit dem RsaSignPssSha512-Algorithmus unter einer anderen Version von Windows signiert wurde. Beispielsweise führt eine Nachricht, die durch Aufrufen der MakeSignature-Funktion auf Windows 8 signiert wurde, dazu, dass die VerifySignature-Funktion auf Windows 8.1 fehlschlägt.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | sspi.h (einschließlich Security.h) |
Bibliothek | Secur32.lib |
DLL | Secur32.dll |