Condividi tramite


struttura CMSG_KEY_TRANS_ENCRYPT_INFO (wincrypt.h)

La struttura CMSG_KEY_TRANS_ENCRYPT_INFO contiene informazioni di crittografia per un destinatario del trasporto delle chiavi di dati in busto. La funzione PFN_CMSG_EXPORT_KEY_TRANS aggiorna questa struttura.

Sintassi

typedef struct _CMSG_KEY_TRANS_ENCRYPT_INFO {
  DWORD                      cbSize;
  DWORD                      dwRecipientIndex;
  CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
  CRYPT_DATA_BLOB            EncryptedKey;
  DWORD                      dwFlags;
} CMSG_KEY_TRANS_ENCRYPT_INFO, *PCMSG_KEY_TRANS_ENCRYPT_INFO;

Members

cbSize

Dimensione, in byte, della struttura.

dwRecipientIndex

Valore che specifica il numero ordinale di un destinatario nell'elenco dei destinatari specificato dal parametro pContentEncryptInfo della funzione PFN_CMSG_EXPORT_KEY_TRANS .

KeyEncryptionAlgorithm

Struttura CRYPT_ALGORITHM_IDENTIFIER che specifica l'algoritmo della chiave pubblica del destinatario. La funzione CryptMsgOpenToEncode usa il membro pszObjId della struttura CRYPT_ALGORITHM_IDENTIFIER per ottenere l'indirizzo della funzione usata per esportare la chiave. La funzione può essere installata usando un'API di crittografia: identificatore dell'oggetto CNG (Next Generation) (OID).

EncryptedKey

Struttura CRYPT_DATA_BLOB contenente la chiave di sessione crittografata dalla chiave pubblica del destinatario.

dwFlags

Valore che specifica i membri aggiornati e la cui allocazione di memoria deve essere liberata usando la funzione CryptMsgOpenToEncode .

Valore Significato
CMSG_KEY_TRANS_ENCRYPT_FREE_OBJID_FLAG
0x00000002
Il membro pszObjId della struttura CRYPT_ALGORITHM_IDENTIFIER a cui fa riferimento il membro KeyEncryptionAlgorithm è stato aggiornato.
CMSG_KEY_TRANS_ENCRYPT_FREE_PARA_FLAG
0x00000001
Il membro PbDataParameters della struttura CRYPT_ALGORITHM_IDENTIFIER a cui fa riferimento il membro KeyEncryptionAlgorithm è stato aggiornato.

Commenti

Quando viene chiamato con il parametro dwMsgType impostato su CMSG_ENVELOPED, la funzione CryptMsgOpenToEncode inizializza la struttura CMSG_KEY_TRANS_ENCRYPT_INFO dalla struttura CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO . La funzione CryptMsgOpenToEncodechiama la funzione PFN_CMSG_EXPORT_KEY_TRANS per aggiornare la struttura CMSG_KEY_TRANS_ENCRYPT_INFO. Se non è possibile trovare la funzione di callback, la funzione CryptMsgOpenToEncode riempie questa struttura con informazioni chiave predefinite dalla struttura CMSG_CONTENT_ENCRYPT_INFO .

I membri seguenti della struttura CMSG_KEY_TRANS_ENCRYPT_INFO possono essere aggiornati dalla funzione callback:

Encryptedkey
KeyEncryptionAlgorithm.pszObjId
KeyEncryptionAlgorithm.Parameters
dwFlags

Gli altri membri sono di sola lettura.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Intestazione wincrypt.h

Vedi anche

Codifica dei dati in busta