PCRYPT_ENCRYPT_PRIVATE_KEY_FUNC funzione di callback (wincrypt.h)
[La funzione PCRYPT_ENCRYPT_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_ENCRYPT_PRIVATE_KEY_FUNC crittografa la chiave privata e restituisce il contenuto crittografato nel parametro pbEncryptedKey . Si tratta di una funzione di callback identificata in una struttura CRYPT_PKCS8_EXPORT_PARAMS che crea una struttura PKCS #8 CRYPT_ENCRYPTED_PRIVATE_KEY_INFO . La funzione deve essere implementata dallo sviluppatore per soddisfare ogni applicazione.
Sintassi
PCRYPT_ENCRYPT_PRIVATE_KEY_FUNC PcryptEncryptPrivateKeyFunc;
BOOL PcryptEncryptPrivateKeyFunc(
[out] CRYPT_ALGORITHM_IDENTIFIER *pAlgorithm,
[in] CRYPT_DATA_BLOB *pClearTextPrivateKey,
[out] BYTE *pbEncryptedKey,
[in, out] DWORD *pcbEncryptedKey,
[in] LPVOID pVoidEncryptFunc
)
{...}
Parametri
[out] pAlgorithm
Puntatore a una struttura CRYPT_ALGORITHM_IDENTIFIER per ricevere l'algoritmo usato per crittografare il tipo ASN.1 PrivateKeyInfo trovato nello standard PKCS #8.
[in] pClearTextPrivateKey
Puntatore a una struttura CRYPT_DATA_BLOB che contiene la chiave privata di testo non crittografato da crittografare.
[out] pbEncryptedKey
Puntatore a un buffer BYTE per ricevere il BLOB della chiave privata crittografata. Se questo parametro è NULL, pcbEncryptedKey restituirà le dimensioni, in byte, della memoria necessaria per contenere la chiave crittografata in una chiamata successiva a questa funzione.
[in, out] pcbEncryptedKey
Puntatore a una variabile DWORD contenente le dimensioni, in byte, del buffer pbEncryptedKey . Se pbEncryptedKey è NULL, pcbEncryptedKey viene impostato sulle dimensioni, in byte, necessarie per crittografare la chiave. Per altre informazioni, vedere Recupero di dati di lunghezza sconosciuta.
[in] pVoidEncryptFunc
Variabile LPVOID che contiene i dati usati per la crittografia, 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
Client minimo supportato | Windows XP [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | wincrypt.h |