Compartir a través de


Función CryptMsgGetAndVerifySigner (wincrypt.h)

La función CryptMsgGetAndVerifySigner comprueba la firma de un mensaje criptográfico.

Sintaxis

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

Parámetros

[in] hCryptMsg

Identificador de un mensaje criptográfico.

[in] cSignerStore

Número de almacenes en la matriz rghSignerStore .

[in, optional] rghSignerStore

Matriz de identificadores de almacén de certificados que se pueden buscar en el certificado de un firmante.

[in] dwFlags

Indica un uso determinado de la función.

Valor Significado
CMSG_TRUSTED_SIGNER_FLAG
Se supone que los almacenes de rghSignerStore son de confianza y son los únicos almacenes en los que se busca encontrar el certificado correspondiente al emisor y al número de serie del firmante. De lo contrario, se pueden proporcionar almacenes de firmantes para complementar el almacén de certificados del mensaje. Si se encuentra un certificado de firmante, se usa su clave pública para comprobar la firma del mensaje.
CMSG_SIGNER_ONLY_FLAG
Devuelve el firmante sin realizar la comprobación de la firma.
CMSG_USE_SIGNER_INDEX_FLAG
Solo se devuelve el firmante especificado por *pdwSignerIndex . De lo contrario, recorra en iteración todos los firmantes hasta que se compruebe una firma o no haya más firmantes.

[out, optional] ppSigner

Si se comprueba la firma, ppSigner se actualiza para que apunte al contexto de certificado del firmante. Cuando haya terminado de usar el certificado, libere el contexto llamando a la función CertFreeCertificateContext . Este parámetro puede ser NULL si la aplicación no necesita el certificado del firmante.

[in, out, optional] pdwSignerIndex

Si se comprueba la firma, pdwSigner se actualiza para que apunte al índice del firmante en la matriz de firmantes. Este parámetro puede ser NULL si la aplicación no necesita el índice del firmante.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es distinto de cero (TRUE).

Si se produce un error en la función, el valor devuelto es cero (FALSE). Para obtener información de error extendida, llame a GetLastError.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [aplicaciones de escritorio | aplicaciones para UWP]
Servidor mínimo compatible Windows Server 2003 [aplicaciones de escritorio | aplicaciones para UWP]
Plataforma de destino Windows
Encabezado wincrypt.h
Library Crypt32.lib
Archivo DLL Crypt32.dll

Consulte también

CERT_CONTEXT

CTL_CONTEXT

CryptMsgControl

CryptMsgOpenToDecode

Funciones de comprobación mediante CTL