Función CertGetCRLContextProperty (wincrypt.h)
La función CertGetCRLContextProperty obtiene una propiedad extendida para el contexto de lista de revocación de certificados (CRL) especificado.
Sintaxis
BOOL CertGetCRLContextProperty(
[in] PCCRL_CONTEXT pCrlContext,
[in] DWORD dwPropId,
[out] void *pvData,
[in, out] DWORD *pcbData
);
Parámetros
[in] pCrlContext
Puntero a la estructura CRL_CONTEXT .
[in] dwPropId
Identifica la propiedad que se va a recuperar. Los identificadores definidos actualmente y el tipo de datos que se va a devolver en pvData se muestran en la tabla siguiente.
Valor | Significado |
---|---|
|
Tipo de datos para pvData: puntero a un DWORD
Devuelve un valor DWORD que indica si se conservan las operaciones de escritura en el certificado. El valor DWORD no se establece si el certificado está en un almacén de memoria o en un almacén basado en el Registro que se abre como de solo lectura. |
|
Tipo de datos para pvData: NULL
Indica que el certificado se omite durante las enumeraciones. Un certificado con este conjunto de propiedades se encuentra con operaciones de búsqueda explícitas, como las usadas para buscar un certificado con un hash específico o un número de serie. No hay datos en pvData asociados a esta propiedad. |
|
Tipo de datos para pvData: puntero a una matriz BYTE Devuelve una cadena Unicode terminada en null que asigna un nombre al tipo de certificado para el que se ha inscrito automáticamente el certificado. |
|
Tipo de datos para pvData: puntero a una matriz BYTE Devuelve una matriz de bytes que contiene una estructura de notación de sintaxis abstracta uno (ASN.1) codificada CTL_USAGE . |
|
Tipo de datos para pvData: puntero a una matriz BYTE Devuelve la propiedad mostrada por la interfaz de usuario del certificado. Esta propiedad permite al usuario describir el uso del certificado. |
|
Tipo de datos para pvData: Devuelve una matriz de bytes que contiene una estructura de CERT_ENHKEY_USAGE codificada en ASN.1. |
|
Tipo de datos para pvData: puntero a una matriz BYTE Devuelve una cadena de caracteres Unicode terminada en null que contiene el nombre para mostrar de la CRL. |
|
Tipo de datos para pvData: puntero a una cadena Unicode terminada en null.
Devuelve una cadena que contiene un conjunto de pares de clave pública Y pares de longitud de bits de L"<PUBKEY>/<BITLENGTH>". El punto y coma, L";", se usa como delimitador. El <valor PUBKEY> identifica el algoritmo de clave pública CNG. Se admiten los siguientes algoritmos:
Nota Esta propiedad no se puede recuperar para un certificado de firmante OCSP delegado. Un certificado de firmante delegado se firma con la misma clave que se usa para firmar el certificado del firmante y se comprueba allí.
: L"RSA/2048; RSA/4096" |
|
Tipo de datos para pvData: puntero a una cadena Unicode terminada en null.
Devuelve una cadena que contiene un conjunto de pares de algoritmos L"<SIGNATURE>/<HASH>". El punto y coma, L";", se usa como delimitador entre pares. Esta propiedad solo se establece cuando una respuesta OCSP se convierte en una CRL. En el caso de un certificado de firmante OCSP delegado, solo se devuelve el par de algoritmos para el certificado de firmante. Para una cadena de certificados de firmante OCSP independiente, se devuelve un par de algoritmos para cada certificado de la cadena, excepto la raíz. El <valor SIGNATURE> identifica el algoritmo de clave pública CNG. Se admiten los siguientes algoritmos:
|
|
Tipo de datos para pvData: puntero a un valor DWORD .
Devuelve la longitud, en bits, de la clave pública en el certificado del emisor crL. Esta propiedad también es aplicable a una respuesta OCSP que se ha convertido en una CRL. Windows 8 y Windows Server 2012: comienza la compatibilidad con esta propiedad. |
|
Tipo de datos para pvData: puntero a un CERT_KEY_CONTEXT
Devuelve una estructura de CERT_KEY_CONTEXT . |
|
Tipo de datos para pvData: puntero a una matriz BYTE Si no existe, busca la extensión szOID_SUBJECT_KEY_IDENTIFIER. Si se produce un error, se realiza un hash SHA1 en el miembro SubjectPublicKeyInfo del certificado para generar los valores de identificador. |
|
Tipo de datos para pvData: puntero a un HCRYPTPROV
Devuelve el identificador de proveedor obtenido del CERT_KEY_CONTEXT_PROP_ID. |
|
Tipo de datos para pvData: puntero a un CRYPT_KEY_PROV_INFO
Devuelve un puntero a un CRYPT_KEY_PROV_INFO. |
|
Tipo de datos para pvData: puntero a un DWORD
Devuelve un valor DWORD que especifica la clave privada obtenida de CERT_KEY_CONTEXT_PROP_ID propiedad si existe. De lo contrario, si CERT_KEY_PROV_INFO_PROP_ID existe, es el origen de dwKeySpec. |
|
Tipo de datos para pvData: puntero a una matriz BYTE Devuelve el hash MD5. Si el hash no existe, se calcula mediante CryptHashCertificate. |
|
Tipo de datos para pvData: puntero a una matriz BYTE Devuelve la estructura de CERT_ALT_NAME_INFO codificada en ASN.1. CERT_NEXT_UPDATE_LOCATION_PROP_ID solo se usa actualmente con CTL. |
|
Tipo de datos para pvData: puntero a una matriz BYTE Devuelve una cadena de caracteres anchos Unicode terminada en NULL que especifica el nombre de archivo que contiene la clave privada asociada a la clave pública del certificado. |
|
Tipo de datos para pvData: puntero a una matriz BYTE Devuelve el hash SHA1. Si el hash no existe, se calcula mediante CryptHashCertificate. |
|
Tipo de datos de pvData: puntero a una cadena Unicode terminada en null.
Devuelve la cadena L"<SIGNATURE>/<HASH>" que representa la firma del certificado. El <valor SIGNATURE> identifica el algoritmo de clave pública CNG. Se admiten los algoritmos siguientes:
Windows 8 y Windows Server 2012: comienza la compatibilidad con esta propiedad. |
|
Tipo de datos para pvData: puntero a una matriz BYTE Devuelve el hash de firma. Si el hash no existe, se calcula con CryptHashToBeSigned. La longitud del hash es de 20 bytes para SHA y 16 para MD5. |
Para muchos identificadores de propiedad, pvData apunta a una matriz de bytes y no a un CRYPT_DATA_BLOB como señala el parámetro pvData en CertSetCRLContextProperty.
Para obtener más información sobre cada identificador de propiedad, consulte la documentación sobre el parámetro dwPropId en CertSetCertificateContextProperty.
[out] pvData
Puntero a un búfer para recibir los datos según lo determinado por dwPropId. Las estructuras a las que apuntan los miembros de una estructura devuelta también se devuelven después de la estructura base. Por lo tanto, el tamaño contenido en pcbData suele superar el tamaño de la estructura base.
Este parámetro puede ser NULL para establecer el tamaño de la información con fines de asignación de memoria. Para obtener más información, vea Recuperación de datos de longitud desconocida.
[in, out] pcbData
Puntero a un valor DWORD que especifica el tamaño, en bytes, del búfer al que apunta el parámetro pvData . Cuando la función devuelve, el valor DWORD contiene el número de bytes que se almacenarán en el búfer.
Valor devuelto
Si la función se realiza correctamente, el valor devuelto es TRUE.
Si se produce un error en la función, el valor devuelto es FALSE.
Tenga en cuenta que los errores de la función llamada CryptHashCertificate se pueden propagar a esta función. Para obtener información de error extendida, llame a GetLastError. A continuación se indican algunos códigos de error posibles.
Código devuelto | Descripción |
---|---|
|
La CRL no tiene la propiedad especificada. |
|
Si el búfer especificado por el parámetro pvData no es lo suficientemente grande como para contener los datos devueltos, la función establece el código ERROR_MORE_DATA y almacena el tamaño de búfer necesario, en bytes, en la variable a la que apunta pcbData. |
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows XP [aplicaciones de escritorio | aplicaciones para UWP] |
Servidor mínimo compatible | Windows Server 2003 [aplicaciones de escritorio | aplicaciones para UWP] |
Plataforma de destino | Windows |
Encabezado | wincrypt.h |
Library | Crypt32.lib |
Archivo DLL | Crypt32.dll |