structure CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO (wincrypt.h)

La structure CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO contient des informations de transport de clé encodées pour un destinataire de message.

Syntaxe

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;

Membres

cbSize

Valeur DWORD qui indique la taille, en octets, de la structure.

KeyEncryptionAlgorithm

Valeur CRYPT_ALGORITHM_IDENTIFIER qui identifie l’algorithme de chiffrement de clé et tous les paramètres associés utilisés pour chiffrer la clé de chiffrement de contenu.

Pour RSA AES, le membre pszObjId de la structure CRYPT_ALGORITHM_IDENTIFIER doit être défini sur szOID_RSAES_OAEP. Le membre Parameters de la structure CRYPT_ALGORITHM_IDENTIFIER doit être défini sur le PKCS_RSAES_OAEP_PARAMETERS encodé. Si le membre Parameters.cbData est égal à zéro, les paramètres par défaut sont utilisés et encodés.

pvKeyEncryptionAuxInfo

Pointeur void vers une structure qui contient des informations supplémentaires sur le chiffrement. Le format de la structure dépend de l’algorithme indiqué par KeyEncryptionAlgorithm.

hCryptProv

Ce membre n’est pas utilisé et doit être défini sur NULL.

Windows Server 2003 et Windows XP : Valeur HCRYPTPROV utilisée pour effectuer le chiffrement et l’exportation de la clé de destinataire. Les clés privées du fournisseur ne sont pas utilisées. Si hCryptProv a la valeur NULL, le HCRYPTPROV spécifié dans le CMSG_ENVELOPED_ENCODE_INFO est utilisé. Notez que ce HCRYPTPROV n’est pas publié même si CMSG_CRYPT_RELEASE_CONTEXT_FLAG est défini dans le paramètre dwFlags passé à CryptMsgOpenToEncode.

RecipientPublicKey

Variable CRYPT_BIT_BLOB qui contient la clé publique du destinataire.

RecipientId

Valeur CERT_ID qui identifie le destinataire. CMS prend en charge les KEY_IDENTIFIER et les ISSUER_SERIAL_NUMBER CERT_ID. PKCS #7 version 1.5 prend uniquement en charge les ISSUER_SERIAL_NUMBER CERT_ID.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
En-tête wincrypt.h