Compartir a través de


Macro RtlSecureZeroMemory (wdm.h)

La rutina RtlSecureZeroMemory rellena un bloque de memoria con ceros de forma que se garantiza que sea seguro.

Sintaxis

void RtlSecureZeroMemory(
         Ptr,
  [in]   cnt
);

Parámetros

Ptr

Puntero al búfer de memoria que se va a rellenar con ceros.

[in] cnt

Especifica el número de bytes que se van a rellenar con ceros.

Valor devuelto

None

Observaciones

El efecto de RtlSecureZeroMemory es idéntico al de RtlZeroMemory, salvo que se garantiza que cero la ubicación de memoria, incluso si no se escribe posteriormente en. (El compilador puede optimizar una llamada a RtlZeroMemory, si determina que el autor de la llamada no tiene acceso de nuevo a ese intervalo de memoria).

Use RtlSecureZeroMemory para garantizar que se ha eliminado la información confidencial. Por ejemplo, supongamos que una función usa una variable de matriz local para almacenar información de contraseña. Una vez que se cierra la función, la información de contraseña puede permanecer en la misma ubicación de memoria, a menos que RtlSecureZeroMemory se quede sin cero.

RtlSecureZeroMemory es más lento que RtlZeroMemory; Por lo tanto, si la seguridad no es un problema, use RtlZeroMemory en su lugar.

Los autores de llamadas de RtlSecureZeroMemory se pueden ejecutar en cualquier IRQL si el bloque ptr está en un grupo no paginado. De lo contrario, el autor de la llamada debe ejecutarse en IRQL <= APC_LEVEL.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible en Windows Server 2003 y versiones posteriores de Windows. (Dado que la rutina se declara insertada, el cuerpo de la rutina se puede incluir en versiones anteriores del sistema operativo).
Plataforma de destino Escritorio
Encabezado wdm.h (incluya Wdm.h, Ntddk.h, Ntifs.h)
IRQL Cualquier nivel (consulte la sección Comentarios)

Consulte también

RtlFillMemory

RtlZeroMemory