Função CryptMsgCountersign (wincrypt.h)

A função CryptMsgCountersign contra-atribui uma assinatura existente em uma mensagem. As contra-atribuições são usadas para assinar o hash criptografado de uma assinatura existente da mensagem. As contra-atribuições podem ser usadas para várias finalidades, incluindo o carimbo de data/hora de uma mensagem.

Sintaxe

BOOL CryptMsgCountersign(
  [in, out] HCRYPTMSG                hCryptMsg,
  [in]      DWORD                    dwIndex,
  [in]      DWORD                    cCountersigners,
  [in]      PCMSG_SIGNER_ENCODE_INFO rgCountersigners
);

Parâmetros

[in, out] hCryptMsg

Identificador de mensagem criptográfica a ser usado.

[in] dwIndex

Índice baseado em zero do signatário na mensagem assinada ou assinada e em envelope a ser contra-atribuída.

[in] cCountersigners

Número de contadores na matriz rgCountersigners .

[in] rgCountersigners

Matriz de estruturas de CMSG_SIGNER_ENCODE_INFO de contra-atribuidores.

Retornar valor

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

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

Um erro pode ser propagado de CryptMsgCountersignEncoded.

Os códigos de erro a seguir são retornados com mais frequência.

Código de retorno Descrição
E_INVALIDARG
Um ou mais argumentos não são válidos.
E_OUTOFMEMORY
Ficou sem memória.
ERROR_MORE_DATA
A área especificada não é grande o suficiente para manter os dados retornados.
 

Se a função falhar, GetLastError poderá retornar um erro de codificação/decodificação ASN.1 ( Abstract Syntax Notation One ). Para obter informações sobre esses erros, consulte Valores retornados de codificação/decodificação asn.1.

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

CryptMsgCountersignEncoded

CryptMsgVerifyCountersignatureEncoded

Funções de mensagem de baixo nível

Funções de mensagem simplificadas