PFN_CMSG_IMPORT_KEY_TRANS funzione di callback (wincrypt.h)
La funzione di callback PFN_CMSG_IMPORT_KEY_TRANS importa una chiave di crittografia del contenuto per un destinatario del trasporto chiave di un messaggio busto. PFN_CMSG_IMPORT_KEY_TRANS può essere installato usando un identificatore di oggettoCryptoAPI. Questa funzione viene chiamata dalla funzione CryptMsgControl quando il parametro dwCtrlType è impostato su CMSG_CTRL_DECRYPT.
Sintassi
PFN_CMSG_IMPORT_KEY_TRANS PfnCmsgImportKeyTrans;
BOOL PfnCmsgImportKeyTrans(
[in] PCRYPT_ALGORITHM_IDENTIFIER pContentEncryptionAlgorithm,
[in] PCMSG_CTRL_KEY_TRANS_DECRYPT_PARA pKeyTransDecryptPara,
[in] DWORD dwFlags,
void *pvReserved,
[out] HCRYPTKEY *phContentEncryptKey
)
{...}
Parametri
[in] pContentEncryptionAlgorithm
Puntatore a una struttura CRYPT_ALGORITHM_IDENTIFIER che specifica l'algoritmo usato per crittografare il contenuto del messaggio e tutti i parametri associati.
[in] pKeyTransDecryptPara
Puntatore a una struttura CMSG_CTRL_KEY_TRANS_DECRYPT_PARA che contiene informazioni sul destinatario del trasporto delle chiavi.
[in] dwFlags
Questo valore non viene utilizzato. Impostalo su zero.
pvReserved
Questo parametro è riservato e deve essere NULL.
[out] phContentEncryptKey
Indirizzo di un handle alla chiave di crittografia del contenuto restituita da questa funzione.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è diverso da zero (TRUE).
Se la funzione ha esito negativo, il valore restituito è zero (FALSE). Per informazioni sull'errore estese, chiamare GetLastError.
Se questa funzione di callback non supporta l'algoritmo di crittografia delle chiavi, deve restituire FALSE e chiamare SetLastError con E_NOTIMPL.
Commenti
È possibile usare funzioni di supporto OID per distribuire questa funzione di callback. Wincrypt.h definisce le costanti seguenti per questo scopo.
Costante | Definizione |
---|---|
CMSG_OID_IMPORT_KEY_TRANS_FUNC o CMSG_OID_CAPI1_IMPORT_KEY_TRANS_FUNC | "CryptMsgDllImportKeyTrans" |
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows XP [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | wincrypt.h |