Función VerifySignature (sspi.h)

Comprueba que se recibió un mensaje firmado mediante la función MakeSignature en la secuencia correcta y no se ha modificado.

Sintaxis

KSECDDDECLSPEC SECURITY_STATUS SEC_ENTRY VerifySignature(
  [in]  PCtxtHandle    phContext,
  [in]  PSecBufferDesc pMessage,
  [in]  unsigned long  MessageSeqNo,
  [out] unsigned long  *pfQOP
);

Parámetros

[in] phContext

Identificador del contexto de seguridad que se va a usar para el mensaje.

[in] pMessage

Puntero a una estructura SecBufferDesc que hace referencia a un conjunto de estructuras SecBuffer que contienen el mensaje y la firma para comprobar. La firma está en una estructura SecBuffer de tipo SECBUFFER_TOKEN.

[in] MessageSeqNo

Especifica el número de secuencia esperado por la aplicación de transporte, si existe. Si la aplicación de transporte no mantiene números de secuencia, este parámetro es cero.

[out] pfQOP

Puntero a una variable ULONG que recibe marcas específicas del paquete que indican la calidad de protección.

Algunos paquetes de seguridad omiten este parámetro.

Valor devuelto

Si la función comprueba que el mensaje se recibió en la secuencia correcta y no se ha modificado, el valor devuelto se SEC_E_OK.

Si la función determina que el mensaje no es correcto según la información de la firma, el valor devuelto puede ser uno de los siguientes códigos de error.

Código devuelto Descripción
SEC_E_OUT_OF_SEQUENCE
El mensaje no se recibió en la secuencia correcta.
SEC_E_MESSAGE_ALTERED
El mensaje se ha modificado.
SEC_E_INVALID_HANDLE
El identificador de contexto especificado por phContext no es válido.
SEC_E_INVALID_TOKEN
pMessage no contenía un búfer de SECBUFFER_TOKEN válido o contenía demasiados búferes.
SEC_E_QOP_NOT_SUPPORTED
La calidad de la protección negociada entre el cliente y el servidor no incluye la comprobación de integridad .

Comentarios

Advertencia  

Se producirá un error en la función VerifySignature si el mensaje se firmó con el algoritmo RsaSignPssSha512 en una versión diferente de Windows. Por ejemplo, un mensaje firmado mediante una llamada a la función MakeSignature en Windows 8 hará que se produzca un error en la función VerifySignature en Windows 8.1.

 

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado sspi.h (include Security.h)
Library Secur32.lib
Archivo DLL Secur32.dll

Consulte también

MakeSignature

Funciones SSPI

SecBuffer