Função CertGetCRLContextProperty (wincrypt.h)
A função CertGetCRLContextProperty obtém uma propriedade estendida para o contexto de CRL ( lista de certificados revogados ) especificado.
Sintaxe
BOOL CertGetCRLContextProperty(
[in] PCCRL_CONTEXT pCrlContext,
[in] DWORD dwPropId,
[out] void *pvData,
[in, out] DWORD *pcbData
);
Parâmetros
[in] pCrlContext
Um ponteiro para a estrutura CRL_CONTEXT .
[in] dwPropId
Identifica a propriedade a ser recuperada. Os identificadores definidos no momento e o tipo de dados a ser retornado no pvData estão listados na tabela a seguir.
Valor | Significado |
---|---|
|
Tipo de dados para pvData: ponteiro para um DWORD
Retorna um valor DWORD que indica se as operações de gravação no certificado são persistentes. O valor DWORD não será definido se o certificado estiver em um repositório de memória ou em um repositório baseado em registro aberto como somente leitura. |
|
Tipo de dados para pvData: NULL
Indica que o certificado é ignorado durante enumerações. Um certificado com esse conjunto de propriedades é encontrado com operações de pesquisa explícitas, como aquelas usadas para localizar um certificado com um hash específico ou um número de série. Nenhum dado em pvData está associado a essa propriedade. |
|
Tipo de dados para pvData: ponteiro para uma matriz BYTE Retorna uma cadeia de caracteres Unicode terminada em nulo nomeando o tipo de certificado para o qual o certificado foi registrado automaticamente. |
|
Tipo de dados para pvData: ponteiro para uma matriz BYTE Retorna uma matriz de bytes que contém uma estrutura de CTL_USAGE codificada em ASN.1 (Abstract Syntax Notation One). |
|
Tipo de dados para pvData: ponteiro para uma matriz BYTE Retorna a propriedade exibida pela interface do usuário do certificado. Essa propriedade permite que o usuário descreva o uso do certificado. |
|
Tipo de dados para pvData: Retorna uma matriz de bytes que contém uma estrutura de CERT_ENHKEY_USAGE codificada em ASN.1. |
|
Tipo de dados para pvData: ponteiro para uma matriz BYTE Retorna uma cadeia de caracteres Unicode terminada em nulo que contém o nome de exibição da CRL. |
|
Tipo de dados para pvData: ponteiro para uma cadeia de caracteres Unicode terminada em nulo.
Retorna uma cadeia de caracteres que contém um conjunto de algoritmos de chave pública L"<PUBKEY>/<BITLENGTH>" e pares de comprimento de bit. O ponto e vírgula, L";", é usado como delimitador. O <valor PUBKEY> identifica o algoritmo de chave pública CNG. Há suporte para os seguintes algoritmos:
Nota Essa propriedade não pode ser recuperada para um certificado de signatário OCSP delegado. Um certificado de signatário delegado é assinado com a mesma chave usada para assinar o certificado de entidade e é verificado lá.
: L"RSA/2048; RSA/4096" |
|
Tipo de dados para pvData: ponteiro para uma cadeia de caracteres Unicode terminada em nulo.
Retorna uma cadeia de caracteres que contém um conjunto de pares de algoritmos L"<SIGNATURE>/<HASH>". O ponto e vírgula, L";", é usado como delimitador entre pares. Essa propriedade é definida somente quando uma resposta OCSP é convertida em uma CRL. Para um certificado de signatário OCSP delegado, somente o par de algoritmos para o certificado do signatário é retornado. Para uma cadeia de certificados do signatário OCSP independente, um par de algoritmos é retornado para cada certificado na cadeia, excluindo a raiz. O <valor SIGNATURE> identifica o algoritmo de chave pública CNG. Há suporte para os seguintes algoritmos:
|
|
Tipo de dados para pvData: ponteiro para um valor DWORD .
Retorna o comprimento, em bits, da chave pública no certificado do emissor da CRL. Essa propriedade também é aplicável a uma resposta OCSP que foi convertida em uma CRL. Windows 8 e Windows Server 2012: o suporte para essa propriedade começa. |
|
Tipo de dados para pvData: ponteiro para um CERT_KEY_CONTEXT
Retorna uma estrutura CERT_KEY_CONTEXT . |
|
Tipo de dados para pvData: ponteiro para uma matriz BYTE Se não existir, pesquisa a extensão szOID_SUBJECT_KEY_IDENTIFIER. Se isso falhar, um hash SHA1 será feito no membro SubjectPublicKeyInfo do certificado para produzir os valores do identificador. |
|
Tipo de dados para pvData: ponteiro para um HCRYPTPROV
Retorna o identificador do provedor obtido do CERT_KEY_CONTEXT_PROP_ID. |
|
Tipo de dados para pvData: ponteiro para um CRYPT_KEY_PROV_INFO
Retorna um ponteiro para um CRYPT_KEY_PROV_INFO. |
|
Tipo de dados para pvData: ponteiro para um DWORD
Retorna um valor DWORD especificando a chave privada obtida de CERT_KEY_CONTEXT_PROP_ID propriedade, se ela existir. Caso contrário, se CERT_KEY_PROV_INFO_PROP_ID existir, será a origem do dwKeySpec. |
|
Tipo de dados para pvData: ponteiro para uma matriz BYTE Retorna o hash MD5. Se o hash não existir, ele será calculado usando CryptHashCertificate. |
|
Tipo de dados para pvData: ponteiro para uma matriz BYTE Retorna a estrutura de CERT_ALT_NAME_INFO codificada em ASN.1. CERT_NEXT_UPDATE_LOCATION_PROP_ID atualmente é usado apenas com CTLs. |
|
Tipo de dados para pvData: ponteiro para uma matriz BYTE Retorna um Unicode com terminação nula, cadeia de caracteres largos especificando o nome do arquivo que contém a chave privada associada à chave pública do certificado. |
|
Tipo de dados para pvData: ponteiro para uma matriz BYTE Retorna o hash SHA1. Se o hash não existir, ele será calculado usando CryptHashCertificate. |
|
Tipo de dados de pvData: ponteiro para uma cadeia de caracteres Unicode terminada em nulo.
Retorna a cadeia de caracteres L"<SIGNATURE>/<HASH>" que representa a assinatura do certificado. O <valor SIGNATURE> identifica o algoritmo de chave pública CNG. Há suporte para os seguintes algoritmos:
Windows 8 e Windows Server 2012: o suporte para essa propriedade começa. |
|
Tipo de dados para pvData: ponteiro para uma matriz BYTE Retorna o hash de assinatura. Se o hash não existir, ele será calculado com CryptHashToBeSigned. O comprimento do hash é de 20 bytes para SHA e 16 para MD5. |
Para muitos identificadores de propriedade, pvData aponta para uma matriz de bytes e não um CRYPT_DATA_BLOB como apontado pelo parâmetro pvData em CertSetCRLContextProperty.
Para obter mais informações sobre cada identificador de propriedade, consulte a documentação sobre o parâmetro dwPropId em CertSetCertificateContextProperty.
[out] pvData
Um ponteiro para um buffer para receber os dados conforme determinado por dwPropId. Estruturas apontadas por membros de uma estrutura retornada também são retornadas após a estrutura base. Portanto, o tamanho contido em pcbData geralmente excede o tamanho da estrutura base.
Esse parâmetro pode ser NULL para definir o tamanho das informações para fins de alocação de memória. Para obter mais informações, consulte Recuperando dados de comprimento desconhecido.
[in, out] pcbData
Um ponteiro para um valor DWORD que especifica o tamanho, em bytes, do buffer apontado pelo parâmetro pvData . Quando a função retorna, o valor DWORD contém o número de bytes a serem armazenados no buffer.
Retornar valor
Se a função for bem-sucedida, o valor retornado será TRUE.
Se a função falhar, o valor retornado será FALSE.
Observe que erros da função chamada CryptHashCertificate podem ser propagados para essa função. Para obter informações de erro estendidas, chame GetLastError. Alguns códigos de erro possíveis seguem.
Código de retorno | Descrição |
---|---|
|
A CRL não tem a propriedade especificada. |
|
Se o buffer especificado pelo parâmetro pvData não for grande o suficiente para manter os dados retornados, a função definirá o código ERROR_MORE_DATA e armazenará o tamanho do buffer necessário, em bytes, na variável apontada por pcbData. |
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows XP [aplicativos da área de trabalho | aplicativos UWP] |
Servidor mínimo com suporte | Windows Server 2003 [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | wincrypt.h |
Biblioteca | Crypt32.lib |
DLL | Crypt32.dll |