Verifies that a message signed by using the MakeSignature function was received in the correct sequence and has not been modified.
KSECDDDECLSPEC SECURITY_STATUS SEC_ENTRY VerifySignature( PCtxtHandle phContext, PSecBufferDesc pMessage, unsigned long MessageSeqNo, unsigned long *pfQOP );
A handle to the security context to use for the message.
Specifies the sequence number expected by the transport application, if any. If the transport application does not maintain sequence numbers, this parameter is zero.
Pointer to a ULONG variable that receives package-specific flags that indicate the quality of protection.
Some security packages ignore this parameter.
If the function verifies that the message was received in the correct sequence and has not been modified, the return value is SEC_E_OK.
If the function determines that the message is not correct according to the information in the signature, the return value can be one of the following error codes.
||The message was not received in the correct sequence.|
||The message has been altered.|
||The context handle specified by phContext is not valid.|
||pMessage did not contain a valid SECBUFFER_TOKEN buffer, or contained too few buffers.|
||The quality of protection negotiated between the client and server did not include integrity checking.|
The VerifySignature function will fail if the message was signed using the RsaSignPssSha512 algorithm on a different version of Windows. For example, a message that was signed by calling the MakeSignature function on Windows 8 will cause the VerifySignature function on Windows 8.1 to fail.
|Minimum supported client||Windows XP [desktop apps only]|
|Minimum supported server||Windows Server 2003 [desktop apps only]|
|Header||sspi.h (include Security.h)|