Compartilhar via


estrutura CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO (wincrypt.h)

A estrutura CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO contém informações de transporte de chave codificadas para um destinatário da mensagem.

Sintaxe

typedef struct _CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO {
  DWORD                      cbSize;
  CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
  void                       *pvKeyEncryptionAuxInfo;
  HCRYPTPROV_LEGACY          hCryptProv;
  CRYPT_BIT_BLOB             RecipientPublicKey;
  CERT_ID                    RecipientId;
} CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO, *PCMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO;

Membros

cbSize

Um valor DWORD que indica o tamanho, em bytes, da estrutura.

KeyEncryptionAlgorithm

Um valor CRYPT_ALGORITHM_IDENTIFIER que identifica o algoritmo de criptografia de chave e todos os parâmetros associados usados para criptografar a chave de criptografia de conteúdo.

Para o RSA AES, o membro pszObjId da estrutura CRYPT_ALGORITHM_IDENTIFIER deve ser definido como szOID_RSAES_OAEP. O membro Parameters da estrutura CRYPT_ALGORITHM_IDENTIFIER deve ser definido como o PKCS_RSAES_OAEP_PARAMETERS codificado. Se o membro Parameters.cbData for igual a zero, os parâmetros padrão serão usados e codificados.

pvKeyEncryptionAuxInfo

Um ponteiro nulo para uma estrutura que contém informações adicionais sobre a criptografia. O formato da estrutura depende do algoritmo indicado por KeyEncryptionAlgorithm.

hCryptProv

Esse membro não é usado e deve ser definido como NULL.

Windows Server 2003 e Windows XP: Um valor HCRYPTPROV usado para fazer a criptografia e exportação da chave de destinatário. As chaves privadas do provedor não são usadas. Se hCryptProv for NULL, o HCRYPTPROV especificado no CMSG_ENVELOPED_ENCODE_INFO será usado. Observe que esse HCRYPTPROV não é liberado mesmo que CMSG_CRYPT_RELEASE_CONTEXT_FLAG esteja definido no parâmetro dwFlags passado para CryptMsgOpenToEncode.

RecipientPublicKey

Uma variável CRYPT_BIT_BLOB que contém a chave pública do destinatário.

RecipientId

Um valor CERT_ID que identifica o destinatário. O CMS dá suporte aos KEY_IDENTIFIER e ISSUER_SERIAL_NUMBER CERT_ID. O PKCS nº 7 versão 1.5 dá suporte apenas aos ISSUER_SERIAL_NUMBER CERT_IDs.

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]
Cabeçalho wincrypt.h