Método IX509PublicKey::ComputeKeyIdentifier (certenroll.h)
O método ComputeKeyIdentifier cria um identificador de um hash SHA-1 de 160 bits da chave pública.
Sintaxe
HRESULT ComputeKeyIdentifier(
[in] KeyIdentifierHashAlgorithm Algorithm,
[in] EncodingType Encoding,
[out] BSTR *pValue
);
Parâmetros
[in] Algorithm
Um valor da enumeração KeyIdentifierHashAlgorithm que especifica qual algoritmo de hash usar para criar o identificador de chave.
Se esse valor for SKIHashDefault ou SKIHashSha1, o identificador será criado com o hash apenas da matriz de bytes que contém a chave e excluindo os campos de marca, comprimento e bits não utilizados do Distinguished Encoding Rules (DER).
Se esse valor for SKIHashCapiSha1, o identificador será criado com o hash da matriz de bytes codificada em DER que contém a marca, o comprimento, o número de bits não utilizados e a chave pública.
[in] Encoding
Um valor de enumeração EncodingType que especifica o tipo de codificação Unicode a ser aplicado ao hash contido no parâmetro pValue . O valor padrão é XCN_CRYPT_STRING_BASE64.
[out] pValue
Ponteiro para uma variável BSTR que contém o identificador de chave.
Retornar valor
Se a função for bem-sucedida, a função retornará S_OK.
Se a função falhar, ela retornará um valor HRESULT que indica o erro. Os possíveis valores incluem, mas sem limitação, aqueles na tabela a seguir. Para obter uma lista de códigos de erro comuns, consulte Valores HRESULT comuns.
Valor/código retornado | Descrição |
---|---|
|
Não foi possível encontrar o identificador de objeto do algoritmo ou os parâmetros de chave pública. |
Comentários
Você deve chamar o método InitializeFromEncodedPublicKeyInfo ou o método Initialize para inicializar o objeto de chave pública antes de chamar ComputeKeyIdentifier.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows Vista [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2008 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | certenroll.h |
DLL | CertEnroll.dll |