PFN_CRYPT_EXPORT_PUBLIC_KEY_INFO_EX2_FUNC función de devolución de llamada (wincrypt.h)
CryptExportPublicKeyInfoEx llama a la función de devolución de llamada PFN_CRYPT_EXPORT_PUBLIC_KEY_INFO_EX2_FUNC para exportar una clave pública BLOB y codificarla.
Sintaxis
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
)
{...}
Parámetros
[in] hNCryptKey
Identificador del proveedor de servicios criptográficos (CSP) que se va a usar al exportar la información de clave pública. Este identificador debe ser un identificador de NCRYPT_KEY_HANDLE que se ha creado mediante la función NCryptOpenKey .
[in] dwCertEncodingType
Valor que especifica el tipo de codificación utilizado. Siempre es aceptable especificar los tipos de codificación de certificados y mensajes al combinarlos con una operación OR bit a bit, como se muestra en el ejemplo siguiente:
X509_ASN_ENCODING | PKCS_7_ASN_ENCODING
Los tipos de codificación definidos actualmente son:
- X509_ASN_ENCODING
- PKCS_7_ASN_ENCODING
[in] pszPublicKeyObjId
Puntero a una cadena que contiene el algoritmo de clave pública.
[in] dwFlags
Valor que indica cómo se exporta la información de clave pública. Puede ser cero.
[in, optional] pvAuxInfo
Este parámetro está reservado para uso futuro y debe establecerse en NULL.
[out, optional] pInfo
Puntero a una estructura de CERT_PUBLIC_KEY_INFO para recibir la información de clave pública que se va a exportar.
Este parámetro puede ser NULL para establecer el tamaño de esta información con fines de asignación de memoria. Para obtener más información, vea Recuperar datos de longitud desconocida.
[in, out] pcbInfo
Puntero a un DWORD que contiene el tamaño, en bytes, del búfer al que apunta el parámetro pInfo . Cuando la función devuelve, DWORD contiene el número de bytes almacenados en el búfer.
Valor devuelto
Si la función se ejecuta correctamente, el valor devuelto es distinto de cero (TRUE).
Si se produce un error en la función, el valor devuelto es cero (FALSE). Para obtener información de error extendida, llame a GetLastError.
Si esta función de devolución de llamada no admite el algoritmo de firma, debe devolver FALSE y llamar a SetLastError con ERROR_NOT_SUPPORTED.
Comentarios
Puede usar funciones de compatibilidad con OID para implementar esta función de devolución de llamada. Wincrypt.h define la constante siguiente para este propósito.
Constante | Definición |
---|---|
CRYPT_OID_EXPORT_PUBLIC_KEY_INFO_EX2_FUNC | "CryptDllExportPublicKeyInfoEx2" |
Requisitos
Cliente mínimo compatible | Windows Vista [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2008 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | wincrypt.h |