This function generates a cryptographic checksum of the message, and also includes sequencing information to prevent message loss or insertion. MakeSignature allows the application to choose between several cryptographic algorithms, if supported by the chosen mechanism. The MakeSignature function uses the security context referenced by the context handle.
At a Glance
Header file: | Sspi.h |
Windows CE versions: | 2.10 and later |
Syntax
SECURITY_STATUS MakeSignature( PCtxtHandle phContext,
ULONG fQOP, PSecBufferDesc pMessage, ULONG MessageSeqNo );
Parameters
phContext
Pointer to the handle to the context to use for the message.
fQOP
Specifies package-specific flags that indicate the quality of protection. A security package can use this parameter to enable the selection of cryptographic algorithms.
pMessage
Pointer to a SecBufferDesc structure. On input, the structure references one or more SecBuffer structures that contain the message to be signed. The function does not process buffers with the SECBUFFER_READONLY attribute.
The SecBufferDesc structure also references a SecBuffer structure of type SECBUFFER_TOKEN that receives the signature.
MessageSeqNo
Specifies a sequence number that the transport application assigned to the message. If the transport application does not maintain sequence numbers, this parameter is zero.
Return Values
SEC_E_OK indicates success. A nonzero error value indicates failure.
Remarks
The MakeSignature function generates a signature that is based on the message and the session key for the context.
If the transport application created the security context to support sequence detection and the caller provides a sequence number, the function includes this information in the signature. This protects against reply, insertion, and suppression of messages. The security package will incorporate the sequence number passed down from the transport application.
See Also