NCryptProtectSecret-Funktion (ncryptprotect.h)
Die NCryptProtectSecret-Funktion verschlüsselt Daten in einen angegebenen Schutzdeskriptor. Rufen Sie NCryptUnprotectSecret auf, um die Daten zu entschlüsseln.
Syntax
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
);
Parameter
[in] hDescriptor
Handle des Schutzdeskriptorobjekts. Erstellen Sie das Handle, indem Sie NCryptCreateProtectionDescriptor aufrufen.
[in] dwFlags
Das Flag kann null oder der folgende Wert sein.
Wert | Bedeutung |
---|---|
|
Fordert an, dass der Schlüsseldienstanbieter keine Benutzeroberfläche anzeigt. |
[in] pbData
Zeiger auf das zu schützende Bytearray.
[in] cbData
Anzahl der Bytes in dem binären Array, das durch den pbData-Parameter angegeben wird.
[in, optional] pMemPara
Zeiger auf eine NCRYPT_ALLOC_PARA Struktur, die Sie verwenden können, um benutzerdefinierte Speicherverwaltungsfunktionen anzugeben. Wenn Sie dieses Argument auf NULL festlegen, wird die LocalAlloc-Funktion intern verwendet, um Arbeitsspeicher zuzuweisen, und Ihre Anwendung muss LocalFree aufrufen, um Arbeitsspeicher freizugeben, auf den der ppbProtectedBlob-Parameter verweist.
[in, optional] hWnd
Handle bis zum übergeordneten Fenster der Benutzeroberfläche, falls vorhanden, das angezeigt werden soll.
[out] ppbProtectedBlob
Adresse einer Variablen, die einen Zeiger auf die verschlüsselten Daten empfängt.
[out] pcbProtectedBlob
Zeiger auf eine ULONG-Variable , die die Größe der verschlüsselten Daten in Bytes enthält, auf die die Variable ppbProtectedBlob verweist.
Rückgabewert
Gibt einen status Code zurück, der den Erfolg oder Fehler der Funktion angibt. Mögliche Rückgabecodes sind u. a. die folgenden:
Rückgabecode | Beschreibung |
---|---|
|
Die Funktion war erfolgreich. |
|
Die Parameter pbData, ppbProtectedBlob und pcbProtectedBlob können nicht NULL sein.
Der cbData-Parameter darf nicht kleiner als eins sein. |
|
Es ist nicht genügend Arbeitsspeicher vorhanden, um den Inhaltsverschlüsselungsschlüssel zuzuweisen. |
|
Das vom hDescriptor-Parameter angegebene Handle ist ungültig. |
Hinweise
Verwenden Sie die NCryptProtectSecret-Funktion , um Schlüssel, Schlüsselmaterial und Kennwörter zu schützen. Verwenden Sie die Funktionen NCryptStreamOpenToProtect und NCryptStreamUpdate , um größere Nachrichten zu verschlüsseln.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 8 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2012 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | ncryptprotect.h |
Bibliothek | NCrypt.lib |
DLL | NCrypt.dll |