PCRYPT_DECRYPT_PRIVATE_KEY_FUNC funzione di callback (wincrypt.h)
[La funzione PCRYPT_DECRYPT_PRIVATE_KEY_FUNC è disponibile per l'uso nei sistemi operativi specificati nella sezione Requisiti. Potrebbe essere modificato o non disponibile nelle versioni successive.]
La funzione PCRYPT_DECRYPT_PRIVATE_KEY_FUNC decrittografa la chiave privata e restituisce la chiave decrittografata nel parametro pbClearTextKey . PCRYPT_DECRYPT_PRIVATE_KEY_FUNC è una funzione di callback specificata in una struttura CRYPT_PKCS8_IMPORT_PARAMS . Viene usato quando una struttura di CRYPT_ENCRYPTED_PRIVATE_KEY_INFO contiene una chiave privata che deve essere decrittografata. La funzione CryptImportPKCS8 usa questa funzione. La funzione deve essere implementata dallo sviluppatore per soddisfare ogni applicazione.
Sintassi
PCRYPT_DECRYPT_PRIVATE_KEY_FUNC PcryptDecryptPrivateKeyFunc;
BOOL PcryptDecryptPrivateKeyFunc(
[in] CRYPT_ALGORITHM_IDENTIFIER Algorithm,
[in] CRYPT_DATA_BLOB EncryptedPrivateKey,
[out] BYTE *pbClearTextKey,
[in, out] DWORD *pcbClearTextKey,
[in] LPVOID pVoidDecryptFunc
)
{...}
Parametri
[in] Algorithm
Struttura CRYPT_ALGORITHM_IDENTIFIER che identifica l'algoritmo usato per crittografare il tipo ASN.1 PrivateKeyInfo trovato nello standard PKCS #8.
[in] EncryptedPrivateKey
Valore CRYPT_DATA_BLOB che identifica il BLOB della chiave privata crittografata.
[out] pbClearTextKey
Puntatore a un buffer BYTE per ricevere il testo non crittografato. Questo parametro può essere NULL. Per altre informazioni, vedere Recupero di dati di lunghezza sconosciuta.
[in, out] pcbClearTextKey
Puntatore a un valore DWORD che identifica le dimensioni, in byte, del buffer pbClearTextKey . Se la dimensione è zero, il valore di pcbClearTextKey deve essere riempito con le dimensioni, in byte, necessarie per decrittografare la chiave e pbClearTextKey deve essere ignorato.
[in] pVoidDecryptFunc
Valore LPVOID che fornisce i dati usati nella decrittografia, ad esempio chiave, vettore di inizializzazione e password.
Valore restituito
Se la funzione ha esito positivo, la funzione restituisce un valore diverso da zero (TRUE).
Se la funzione non riesce, restituisce zero (FALSE).
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 |