Compartilhar via


Função CryptMsgGetAndVerifySigner (wincrypt.h)

A função CryptMsgGetAndVerifySigner verifica a assinatura de uma mensagem criptográfica.

Sintaxe

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 uma mensagem criptográfica.

[in] cSignerStore

Número de repositórios na matriz rghSignerStore .

[in, optional] rghSignerStore

Matriz de identificadores de repositório de certificados que podem ser pesquisados para obter o certificado de um signatário.

[in] dwFlags

Indica o uso específico da função.

Valor Significado
CMSG_TRUSTED_SIGNER_FLAG
Os repositórios no rghSignerStore são considerados confiáveis e são os únicos repositórios pesquisados para localizar o certificado correspondente ao emissor do signatário e ao número de série. Caso contrário, os repositórios de signatários podem ser fornecidos para complementar o repositório de certificados da mensagem. Se um certificado de signatário for encontrado, sua chave pública será usada para verificar a assinatura da mensagem.
CMSG_SIGNER_ONLY_FLAG
Retorne o signatário sem fazer a verificação de assinatura.
CMSG_USE_SIGNER_INDEX_FLAG
Somente o signatário especificado por *pdwSignerIndex é retornado. Caso contrário, itere todos os signatários até que uma assinatura seja verificada ou não haja mais signatários.

[out, optional] ppSigner

Se a assinatura for verificada, ppSigner será atualizado para apontar para o contexto de certificado do signatário. Quando terminar de usar o certificado, libere o contexto chamando a função CertFreeCertificateContext . Esse parâmetro poderá ser NULL se o aplicativo não tiver necessidade do certificado do signatário.

[in, out, optional] pdwSignerIndex

Se a assinatura for verificada, pdwSigner será atualizado para apontar para o índice do signatário na matriz de signatários. Esse parâmetro poderá ser NULL se o aplicativo não tiver necessidade do índice do signatário.

Retornar valor

Se a função for bem-sucedida, o valor retornado será diferente de zero (TRUE).

Se a função falhar, o valor retornado será zero (FALSE). Para obter informações de erro estendidas, chame GetLastError.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP [aplicativos da área de trabalho | aplicativos UWP]
Servidor mínimo com suporte Windows Server 2003 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho wincrypt.h
Biblioteca Crypt32.lib
DLL Crypt32.dll

Confira também

CERT_CONTEXT

CTL_CONTEXT

Cryptmsgcontrol

Cryptmsgopentodecode

Funções de verificação usando CTLs