Função CryptDestroyHash (wincrypt.h)
Para ajudar a garantir a segurança, recomendamos que os objetos hash sejam destruídos depois de serem usados.
Sintaxe
BOOL CryptDestroyHash(
[in] HCRYPTHASH hHash
);
Parâmetros
[in] hHash
O identificador do objeto hash a ser destruído.
Valor retornado
Se a função for bem-sucedida, o valor retornado será diferente de zero.
Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.
Os códigos de erro precedidos por "NTE" são gerados pelo CSP ( provedor de serviços criptográficos ) específico que você está usando. Alguns códigos de erro possíveis seguem.
Código de retorno | Descrição |
---|---|
|
O objeto hash especificado por hHash está sendo usado no momento e não pode ser destruído. |
|
O parâmetro hHash especifica um identificador que não é válido. |
|
O parâmetro hHash contém um valor que não é válido. |
|
O identificador hHash especifica um algoritmo ao qual esse CSP não dá suporte. |
|
O objeto hash especificado pelo parâmetro hHash não é válido. |
|
O contexto CSP especificado quando o objeto hash foi criado não pode ser encontrado. |
Comentários
Quando um objeto hash é destruído, muitos CSPs substituem a memória no CSP em que o objeto hash foi mantido. Em seguida, a memória CSP é liberada.
Deve haver uma correspondência um-para-um entre chamadas para CryptCreateHash e CryptDestroyHash.
Todos os objetos de hash que foram criados usando um CSP específico devem ser destruídos antes que esse identificador CSP seja liberado com a função CryptReleaseContext .
Exemplos
Para obter um exemplo que usa a função CryptDestroyHash , consulte Exemplo de programa C: criando e hash de uma chave de sessão.
Requisitos
Cliente mínimo com suporte | Windows XP [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2003 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | wincrypt.h |
Biblioteca | Advapi32.lib |
DLL | Advapi32.dll |