Função CryptGetMessageSignerCount (wincrypt.h)
A função CryptGetMessageSignerCount retorna o número de signatários de uma mensagem assinada.
Observação
Essa função pode retornar uma contagem de signatários duplicados e, portanto, pode não ser suficiente para evitar ataques. Recomendamos usar o campo sid (SignerIdentifier) de SignerInfo para identificar signatários duplicados em uma mensagem.
Sintaxe
LONG CryptGetMessageSignerCount(
[in] DWORD dwMsgEncodingType,
[in] const BYTE *pbSignedBlob,
[in] DWORD cbSignedBlob
);
Parâmetros
[in] dwMsgEncodingType
Especifica o tipo de codificação usado. É sempre aceitável especificar os tipos de codificação de certificado e mensagem combinando-os com uma operação OR bit a bit, conforme mostrado no exemplo a seguir:
X509_ASN_ENCODING | PKCS_7_ASN_ENCODING
Os tipos de codificação definidos no momento são:
- X509_ASN_ENCODING
- PKCS_7_ASN_ENCODING
[in] pbSignedBlob
Um ponteiro para um buffer que contém a mensagem assinada.
[in] cbSignedBlob
O tamanho, em bytes, da mensagem assinada.
Retornar valor
Retorna o número de signatários de uma mensagem assinada, zero quando não há signatários e menos um (–1) para um erro.
Para obter informações de erro estendidas, chame GetLastError. O código de erro a seguir é retornado com mais frequência.
Código de retorno | Descrição |
---|---|
|
Tipo de codificação de mensagem inválido. Atualmente, há suporte apenas para PKCS_7_ASN_ENCODING. |
Se a função falhar, GetLastError poderá retornar um erro de codificação/decodificação de ASN.1 (Abstract Syntax Notation One ). Para obter informações sobre esses erros, consulte Codificação/Decodificação de Valores Retornados do ASN.1.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows XP [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2003 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | wincrypt.h |
Biblioteca | Crypt32.lib |
DLL | Crypt32.dll |