Funzione NCryptProtectSecret (ncryptprotect.h)
La funzione NCryptProtectSecret crittografa i dati in un descrittore di protezione specificato. Chiamare NCryptUnprotectSecret per decrittografare i dati.
Sintassi
SECURITY_STATUS NCryptProtectSecret(
[in] NCRYPT_DESCRIPTOR_HANDLE hDescriptor,
[in] DWORD dwFlags,
[in] const BYTE *pbData,
[in] ULONG cbData,
[in, optional] const NCRYPT_ALLOC_PARA *pMemPara,
[in, optional] HWND hWnd,
[out] BYTE **ppbProtectedBlob,
[out] ULONG *pcbProtectedBlob
);
Parametri
[in] hDescriptor
Handle dell'oggetto descrittore di protezione. Creare l'handle chiamando NCryptCreateProtectionDescriptor.
[in] dwFlags
Il flag può essere zero o il valore seguente.
Valore | Significato |
---|---|
|
Richiede che il provider di servizi chiave non visualizzi un'interfaccia utente. |
[in] pbData
Puntatore alla matrice di byte da proteggere.
[in] cbData
Numero di byte nella matrice binaria specificata dal parametro pbData .
[in, optional] pMemPara
Puntatore a una struttura NCRYPT_ALLOC_PARA che è possibile usare per specificare funzioni di gestione della memoria personalizzate. Se si imposta questo argomento su NULL, la funzione LocalAlloc viene usata internamente per allocare memoria e l'applicazione deve chiamare LocalFree per rilasciare la memoria a cui punta il parametro ppbProtectedBlob .
[in, optional] hWnd
Gestire nella finestra padre dell'interfaccia utente, se presente, da visualizzare.
[out] ppbProtectedBlob
Indirizzo di una variabile che riceve un puntatore ai dati crittografati.
[out] pcbProtectedBlob
Puntatore a una variabile ULONG contenente le dimensioni, in byte, dei dati crittografati a cui punta la variabile ppbProtectedBlob .
Valore restituito
Restituisce un codice di stato che indica l'esito positivo o negativo della funzione. I codici restituiti possibili includono, a titolo esemplificativo, quanto segue.
Codice restituito | Descrizione |
---|---|
|
La funzione ha avuto esito positivo. |
|
I parametri pbData, ppbProtectedBlob e pcbProtectedBlob non possono essere NULL.
Il parametro cbData non può essere minore di uno. |
|
Memoria insufficiente per allocare la chiave di crittografia del contenuto. |
|
L'handle specificato dal parametro hDescriptor non è valido. |
Commenti
Usare la funzione NCryptProtectSecret per proteggere chiavi, materiale della chiave e password. Usare le funzioni NCryptStreamOpenToProtect e NCryptStreamUpdate per crittografare messaggi di dimensioni maggiori.
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 |