Funzione BCryptHashData (bcrypt.h)
La funzione BCryptHashData esegue unidirezionale hash o codice di autenticazione dei messaggi (MAC) in un buffer di dati.
Sintassi
NTSTATUS BCryptHashData(
[in, out] BCRYPT_HASH_HANDLE hHash,
[in] PUCHAR pbInput,
[in] ULONG cbInput,
[in] ULONG dwFlags
);
Parametri
[in, out] hHash
Handle dell'oggetto hash o MAC da usare per eseguire l'operazione. Questo handle viene ottenuto chiamando la funzione BCryptCreateHash .
[in] pbInput
Puntatore a un buffer che contiene i dati da elaborare. Il parametro cbInput contiene il numero di byte in questo buffer. Questa funzione non modifica il contenuto del buffer.
[in] cbInput
Numero di byte nel buffer pbInput .
[in] dwFlags
Set di flag che modificano il comportamento di questa funzione. Non sono attualmente definiti flag, quindi questo parametro deve essere zero.
Valore restituito
Restituisce un codice di stato che indica l'esito positivo o negativo della funzione.
I codici restituiti possibili includono, ma non sono limitati a, i seguenti.
Codice restituito | Descrizione |
---|---|
|
La funzione ha avuto esito positivo. |
|
Uno o più parametri non sono validi. |
|
L'handle hash nel parametro hHash non è valido. Dopo che la funzione BCryptFinishHash è stata chiamata per un handle hash, tale handle non può essere riutilizzato. |
Commenti
Per combinare più buffer nell'hash o NEL MAC, è possibile chiamare questa funzione più volte, passando un buffer diverso ogni volta. Per ottenere il valore hash o MAC, chiamare la funzione BCryptFinishHash . Dopo aver chiamato la funzione BCryptFinishHash per un handle specificato, tale handle non può essere riutilizzato.
A seconda delle modalità di processore supportate da un provider, È possibile chiamare BCryptHashData dalla modalità utente o dalla modalità kernel. I chiamanti in modalità kernel possono essere eseguiti in PASSIVE_LEVELIRQL o DISPATCH_LEVEL IRQL. Se il livello IRQL corrente è DISPATCH_LEVEL, l'handle fornito nel parametro hHash deve essere derivato da un handle di algoritmo restituito da un provider aperto usando il flag BCRYPT_PROV_DISPATCH e tutti i puntatori passati alla funzione BCryptHashData devono fare riferimento a memoria non paginata (o bloccata).
Per chiamare questa funzione in modalità kernel, usare Cng.lib, che fa parte del Driver Development Kit (DDK). Windows Server 2008 e Windows Vista: Per chiamare questa funzione in modalità kernel, usare Ksecdd.lib.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows Vista [app desktop | App UWP] |
Server minimo supportato | Windows Server 2008 [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | bcrypt.h |
Libreria | Bcrypt.lib |
DLL | Bcrypt.dll |
Vedi anche
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per