Condividi tramite


Funzione CryptDestroyHash (wincrypt.h)

Importante Questa API è deprecata. Il software nuovo e esistente deve iniziare a usare le API di nuova generazione di crittografia. Microsoft può rimuovere questa API nelle versioni future.
 
La funzione CryptDestroyHash elimina l'oggetto hash a cui fa riferimento il parametro hHash . Dopo che un oggetto hash è stato eliminato, non può più essere usato.

Per garantire la sicurezza, è consigliabile eliminare gli oggetti hash dopo l'uso.

Sintassi

BOOL CryptDestroyHash(
  [in] HCRYPTHASH hHash
);

Parametri

[in] hHash

Handle dell'oggetto hash da eliminare.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è diverso da zero.

Se la funzione ha esito negativo, il valore restituito è zero. Per informazioni sull'errore estese, chiamare GetLastError.

I codici di errore preceduti da "NTE" vengono generati dal provider di servizi di crittografia specifico che si usa. Alcuni codici di errore possibili seguono.

Codice restituito Descrizione
ERROR_BUSY
L'oggetto hash specificato da hHash è attualmente in uso e non può essere eliminato.
ERROR_INVALID_HANDLE
Il parametro hHash specifica un handle non valido.
ERROR_INVALID_PARAMETER
Il parametro hHash contiene un valore non valido.
NTE_BAD_ALGID
L'handle hHash specifica un algoritmo che questo CSP non supporta.
NTE_BAD_HASH
L'oggetto hash specificato dal parametro hHash non è valido.
NTE_BAD_UID
Impossibile trovare il contesto CSP specificato quando l'oggetto hash è stato creato.

Commenti

Quando un oggetto hash viene distrutto, molti provider di servizi di configurazione sovrascrivono la memoria nel provider di servizi di gestione del database di azure in cui è stato mantenuto l'oggetto hash. La memoria CSP viene quindi liberata.

Dovrebbe esserci una corrispondenza uno-a-uno tra chiamate a CryptCreateHash e CryptDestroyHash.

Tutti gli oggetti hash creati usando un CSP specifico devono essere eliminati prima che venga rilasciato l'handle CSP con la funzione CryptReleaseContext .

Esempio

Per un esempio che usa la funzione CryptDestroyHash , vedere Programma C di esempio: Creazione e hash di una chiave di sessione.

Requisiti

   
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione wincrypt.h
Libreria Advapi32.lib
DLL Advapi32.dll

Vedi anche

CryptCreateHash

CryptHashData

CryptSignHash

Funzioni hash e firma digitale