PFN_CRYPT_EXPORT_PUBLIC_KEY_INFO_EX2_FUNC funzione di callback (wincrypt.h)
La funzione di callback PFN_CRYPT_EXPORT_PUBLIC_KEY_INFO_EX2_FUNC viene chiamata da CryptExportPublicKeyInfoEx per esportare un BLOB di chiavi pubbliche e codificarlo.
Sintassi
PFN_CRYPT_EXPORT_PUBLIC_KEY_INFO_EX2_FUNC PfnCryptExportPublicKeyInfoEx2Func;
BOOL PfnCryptExportPublicKeyInfoEx2Func(
[in] NCRYPT_KEY_HANDLE hNCryptKey,
[in] DWORD dwCertEncodingType,
[in] LPSTR pszPublicKeyObjId,
[in] DWORD dwFlags,
[in, optional] void *pvAuxInfo,
[out, optional] PCERT_PUBLIC_KEY_INFO pInfo,
[in, out] DWORD *pcbInfo
)
{...}
Parametri
[in] hNCryptKey
Handle del provider di servizi di crittografia da usare durante l'esportazione delle informazioni sulla chiave pubblica. Questo handle deve essere un handle NCRYPT_KEY_HANDLE creato usando la funzione NCryptOpenKey .
[in] dwCertEncodingType
Valore che specifica il tipo di codifica usato. È sempre accettabile specificare sia i tipi di codifica del certificato che dei messaggi combinandoli con un'operazione bit per bit or , come illustrato nell'esempio seguente:
X509_ASN_ENCODING | PKCS_7_ASN_ENCODING
I tipi di codifica attualmente definiti sono:
- X509_ASN_ENCODING
- PKCS_7_ASN_ENCODING
[in] pszPublicKeyObjId
Puntatore a una stringa contenente l'algoritmo di chiave pubblica.
[in] dwFlags
Valore che indica come vengono esportate le informazioni sulla chiave pubblica. Questo può essere zero.
[in, optional] pvAuxInfo
Questo parametro è riservato per l'uso futuro e deve essere impostato su NULL.
[out, optional] pInfo
Puntatore a una struttura CERT_PUBLIC_KEY_INFO per ricevere le informazioni sulla chiave pubblica da esportare.
Questo parametro può essere NULL per impostare le dimensioni di queste informazioni per scopi di allocazione della memoria. Per altre informazioni, vedere Recupero dei dati di lunghezza sconosciuta.
[in, out] pcbInfo
Puntatore a un DWORD contenente le dimensioni, in byte, del buffer a cui punta il parametro pInfo . Quando la funzione restituisce, la DWORD contiene il numero di byte archiviati nel buffer.
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 firma, deve restituire FALSE e chiamare SetLastError con ERROR_NOT_SUPPORTED.
Commenti
È possibile usare funzioni di supporto OID per distribuire questa funzione di callback. Wincrypt.h definisce la costante seguente per questo scopo.
Costante | Definizione |
---|---|
CRYPT_OID_EXPORT_PUBLIC_KEY_INFO_EX2_FUNC | "CryptDllExportPublicKeyInfoEx2" |
Requisiti
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2008 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | wincrypt.h |