Funzione NCryptStreamOpenToUnprotect (ncryptprotect.h)
La funzione NCryptStreamOpenToUnprotect apre un oggetto di flusso che può essere usato per decrittografare grandi quantità di dati allo stesso descrittore di protezione usato per la crittografia. Chiamare NCryptStreamUpdate per eseguire la decrittografia. Per decrittografare messaggi più piccoli, ad esempio chiavi e password, chiamare NCryptUnprotectSecret.
Sintassi
SECURITY_STATUS NCryptStreamOpenToUnprotect(
[in] NCRYPT_PROTECT_STREAM_INFO *pStreamInfo,
DWORD dwFlags,
[in, optional] HWND hWnd,
[out] NCRYPT_STREAM_HANDLE *phStream
);
Parametri
[in] pStreamInfo
Puntatore a una struttura NCRYPT_PROTECT_STREAM_INFO che contiene l'indirizzo di una funzione di callback definita dall'utente per ricevere i dati decrittografati e un puntatore ai dati di contesto definiti dall'utente.
dwFlags
Flag che specifica informazioni aggiuntive per il provider di servizi chiave. Questo valore può essere zero o il valore seguente.
Valore | Significato |
---|---|
|
Richiede che il provider di servizi chiave non visualizzi un'interfaccia utente. |
[in, optional] hWnd
Gestire la finestra padre dell'interfaccia utente, se presente, da visualizzare.
[out] phStream
Puntatore all'handle del flusso decrittografato dei dati.
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. |
|
Il parametro dwFlags deve contenere zero (0) o NCRYPT_SILENT_FLAG. |
|
I parametri phStream e pStreamInfo non possono essere NULL.
La funzione di callback a cui fa riferimento il membro pfnStreamOutput della struttura NCRYPT_PROTECT_STREAM_INFO puntata dal parametro pStreamInfo non può essere NULL. |
|
Memoria insufficiente per allocare un flusso di dati. |
Commenti
La funzione NCryptStreamOpenToUnprotect crea un oggetto flusso interno che può essere usato per crittografare messaggi di grandi dimensioni. Non è possibile usare direttamente l'oggetto. È invece necessario usare l'handle dell'oggetto restituito da questa funzione.
Chiamare questa funzione prima di chiamare la funzione NCryptStreamUpdate . Se si crittografa un file di grandi dimensioni, usare NCryptStreamUpdate in un ciclo che avanza attraverso il blocco di file, crittografando ogni blocco durante l'avanzamento e notificando il callback al termine di ogni blocco. Per altre informazioni, vedere NCryptStreamUpdate.
La funzione NCryptStreamOpenToUnprotect recupera la stringa di regola di protezione non crittografata dall'intestazione di flusso. La stringa di regola viene inserita nell'intestazione dalla funzione NCryptStreamOpenToUnprotect .
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 8 [solo app desktop] |
Server minimo supportato | Windows Server 2012 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | ncryptprotect.h |
Libreria | NCrypt.lib |
DLL | NCrypt.dll |