Freigeben über


RtlDecryptMemory-Funktion (ntsecapi.h)

[Die RtlDecryptMemory-Funktion ist für die Verwendung in den Betriebssystemen verfügbar, die im Abschnitt Anforderungen angegeben sind. Es kann in nachfolgenden Versionen geändert oder entfernt werden. Verwenden Sie stattdessen die Funktion CryptUnprotectMemory .]

Die RtlDecryptMemory-Funktion entschlüsselt Speicherinhalte, die zuvor von der RtlEncryptMemory-Funktion verschlüsselt wurden.

Hinweis Diese Funktion verfügt über keine zugeordnete Importbibliothek. Diese Funktion ist als Ressource mit dem Namen SystemFunction041 in Advapi32.dll verfügbar. Sie müssen die Funktionen LoadLibrary und GetProcAddress verwenden, um eine dynamische Verknüpfung mit Advapi32.dll.
 

Syntax

NTSTATUS RtlDecryptMemory(
  [in, out] PVOID Memory,
  [in]      ULONG MemorySize,
  [in]      ULONG OptionFlags
);

Parameter

[in, out] Memory

Ein Zeiger auf den zu verschlüsselnden Speicher. Die Größe des Arbeitsspeichers muss ein Vielfaches der RTL_ENCRYPT_MEMORY_SIZE Konstanten sein.

[in] MemorySize

Anzahl der Bytes, auf die der Arbeitsspeicher verweist. Die Anzahl der Bytes muss ein Vielfaches der RTL_ENCRYPT_MEMORY_SIZE Konstanten sein.

[in] OptionFlags

Wert, der angibt, wie die Verschlüsselung über Prozessgrenzen und Identitätswechsel hinweg funktioniert. Dieser Parameter kann einen der folgenden Werte annehmen. Die Werte schließen sich gegenseitig aus. Beim Verschlüsseln und Entschlüsseln des Arbeitsspeichers müssen Sie das gleiche Flag angeben.

Wert Bedeutung
0
Verschlüsseln und Entschlüsseln des Arbeitsspeichers im selben Prozess. Eine Anwendung, die in einem anderen Prozess ausgeführt wird, kann die Daten nicht entschlüsseln.
RTL_ENCRYPT_OPTION_CROSS_PROCESS
Ver- und Entschlüsselung von Arbeitsspeicher in verschiedenen Prozessen. Eine Anwendung, die in einem anderen Prozess ausgeführt wird, kann die Daten entschlüsseln.
RTL_ENCRYPT_OPTION_SAME_LOGON
Verwenden Sie dieselben Anmeldeinformationen, um Arbeitsspeicher in verschiedenen Prozessen zu verschlüsseln und zu entschlüsseln. Eine Anwendung, die in einem anderen Prozess ausgeführt wird, kann die Daten entschlüsseln. Der Prozess muss jedoch als derselbe Benutzer ausgeführt werden, der die Daten verschlüsselt hat, und in derselben Anmeldesitzung.

Rückgabewert

Wenn die Funktion erfolgreich ist, wird der Rückgabewert STATUS_SUCCESS.

Wenn die Funktion fehlschlägt, ist der Rückgabewert ein NTSTATUS-Code , der den Fehler angibt.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP, Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003, Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile ntsecapi.h
DLL Advapi32.dll