Condividi tramite


Macro RtlSecureZeroMemory (wdm.h)

La routine RtlSecureZeroMemory riempie un blocco di memoria con zeri in modo da garantire la sicurezza.

Sintassi

void RtlSecureZeroMemory(
         Ptr,
  [in]   cnt
);

Parametri

Ptr

Puntatore al buffer di memoria da riempire con zeri.

[in] cnt

Specifica il numero di byte da riempire con zeri.

Valore restituito

nessuno

Osservazioni

L'effetto di RtlSecureZeroMemory è identico a quello di RtlZeroMemory, ad eccezione del fatto che è garantito zero la posizione di memoria, anche se non viene successivamente scritta in . Il compilatore può ottimizzare una chiamata a RtlZeroMemory, se determina che il chiamante non accede di nuovo a tale intervallo di memoria.

Usare RtlSecureZeroMemory per garantire che le informazioni riservate siano state zero. Si supponga, ad esempio, che una funzione usi una variabile di matrice locale per archiviare le informazioni sulla password. Una volta terminata la funzione, le informazioni sulla password possono rimanere nella stessa posizione di memoria, a meno che non venga terminata da RtlSecureZeroMemory.

RtlSecureZeroMemory è più lento di RtlZeroMemory; pertanto, se la sicurezza non è un problema, usare invece RtlZeroMemory .

I chiamanti di RtlSecureZeroMemory possono essere eseguiti in qualsiasi IRQL se il blocco ptr si trova in un pool non di paging. In caso contrario, il chiamante deve essere in esecuzione in IRQL <= APC_LEVEL.

Requisiti

Requisito Valore
Client minimo supportato Disponibile in Windows Server 2003 e versioni successive di Windows. Poiché la routine è dichiarata inline, il corpo della routine può essere incluso nelle versioni precedenti del sistema operativo.
Piattaforma di destinazione Desktop
Intestazione wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
IRQL Qualsiasi livello (vedere la sezione Osservazioni)

Vedi anche

RtlFillMemory

RtlZeroMemory