Share via


CMSG_CTRL_DECRYPT_PARA structure (wincrypt.h)

La structure CMSG_CTRL_DECRYPT_PARA contient des informations utilisées pour déchiffrer un message enveloppé pour un destinataire de transport de clé. Cette structure est passée à CryptMsgControl si le paramètre dwCtrlType est CMSG_CTRL_DECRYPT.

Pour plus d’informations sur la façon dont CryptoAPI prend en charge l’interopérabilité des e-mails S/MIME ( Secure/Multipurpose Internet Mail Extensions ), consultez la section Notes de CryptMsgOpenToEncode.

Syntaxe

typedef struct _CMSG_CTRL_DECRYPT_PARA {
  DWORD cbSize;
  union {
    HCRYPTPROV        hCryptProv;
    NCRYPT_KEY_HANDLE hNCryptKey;
  } DUMMYUNIONNAME;
  DWORD dwKeySpec;
  DWORD dwRecipientIndex;
} CMSG_CTRL_DECRYPT_PARA, *PCMSG_CTRL_DECRYPT_PARA;

Membres

cbSize

Taille, en octets, de cette structure.

DUMMYUNIONNAME

DUMMYUNIONNAME.hCryptProv

Handle fournisseur de services de chiffrement (CSP). La fonction CNG NCryptIsKeyHandle est appelée pour déterminer le choix d’union.

DUMMYUNIONNAME.hNCryptKey

Un handle pour le fournisseur de services de chiffrement (CSP) CNG. La fonction CNG, NCryptIsKeyHandle, est appelée pour déterminer le choix d’union. Les nouveaux algorithmes de chiffrement sont uniquement pris en charge dans les fonctions CNG. La fonction CNG, NCryptTranslateHandle, sera appelée pour convertir le choix CryptoAPI hCryptProv si nécessaire. Nous recommandons aux applications de transmettre au membre hNCryptKey le handle CSP CNG retourné par la fonction NCryptOpenKey .

dwKeySpec

Clé privée à utiliser. Ce membre n’est pas utilisé lorsque le membre hNCryptKey est utilisé.

Les valeurs dwKeySpec suivantes sont définies pour le fournisseur par défaut.

Valeur Signification
AT_KEYEXCHANGE
Clés utilisées pour chiffrer et déchiffrer les clés de session.
AT_SIGNATURE
Clés utilisées pour créer et vérifier les signatures numériques.
 

Si dwKeySpec est égal à zéro, la AT_KEYEXCHANGE par défaut est utilisée.

dwRecipientIndex

Index du destinataire dans le message associé à la clé privée hCryptProv .

Configuration requise

   
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

Voir aussi

CryptMsgControl