Condividi tramite


Funzione RtlDecryptMemory (ntsecapi.h)

[La funzione RtlDecryptMemory è disponibile per l'uso nei sistemi operativi specificati nella sezione Requisiti. Potrebbe essere modificato o non disponibile nelle versioni successive. Usare invece la funzione CryptUnprotectMemory.

La funzione RtlDecryptMemory decrittografa il contenuto della memoria precedentemente crittografato dalla funzione di RtlEncryptMemory.

Nota

 Questa funzione non ha una libreria di importazione associata. Questa funzione è disponibile come risorsa denominata SystemFunction041 in Advapi32.dll. È necessario usare le funzioni di LoadLibrary e GetProcAd dress per collegare dinamicamente a .

Sintassi

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

Parametri

[in, out] Memory

Puntatore alla memoria da crittografare. Le dimensioni della memoria devono essere multiple della costante RTL_ENCRYPT_MEMORY_SIZE.

[in] MemorySize

Numero di byte a cui punti memoria. Il numero di byte deve essere un multiplo della costante RTL_ENCRYPT_MEMORY_SIZE.

[in] OptionFlags

Valore che specifica il funzionamento della crittografia sui limiti del processo e sulla rappresentazione. Questo parametro può essere uno dei valori seguenti. I valori si escludono a vicenda. È necessario specificare lo stesso flag durante la crittografia e la decrittografia della memoria.

Valore Significato
0 Crittografare e decrittografare la memoria nello stesso processo. Un'applicazione in esecuzione in un processo diverso non sarà in grado di decrittografare i dati.
RTL_ENCRYPT_OPTION_CROSS_PROCESS
0x01
Crittografare e decrittografare la memoria in processi diversi. Un'applicazione in esecuzione in un processo diverso sarà in grado di decrittografare i dati.
RTL_ENCRYPT_OPTION_SAME_LOGON
0x02
Usare le stesse credenziali di accesso per crittografare e decrittografare la memoria in processi diversi. Un'applicazione in esecuzione in un processo diverso sarà in grado di decrittografare i dati. Tuttavia, il processo deve essere eseguito come lo stesso utente che ha crittografato i dati e nella stessa sessione di accesso.
RTL_ENCRYPT_OPTION_FOR_SYSTEM
0x04
Consentire ai chiamanti di crittografare le informazioni da decrittografare solo da un processo di sistema.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è STATUS_SUCCESS.

Se la funzione ha esito negativo, il valore restituito è un NTSTATUS codice che indica l'errore.

Fabbisogno

Requisito Valore
client minimo supportato Windows XP, Windows XP [solo app desktop]
server minimo supportato Windows Server 2003, Windows Server 2003 [solo app desktop]
piattaforma di destinazione Finestre
intestazione ntsecapi.h
dll Advapi32.dll