Compartir a través de


Función RtlEncryptMemory (ntsecapi.h)

[La función RtlDecryptMemory está disponible para su uso en los sistemas operativos especificados en la sección Requisitos. Puede modificarse o no estar disponible en versiones posteriores. En su lugar, use la función CryptProtectMemory.]

La función RtlEncryptMemory cifra el contenido de la memoria. El contenido cifrado se puede descifrar mediante una llamada posterior a la función de RtlDecryptMemory.

Nota

 Esta función no tiene ninguna biblioteca de importación asociada. Esta función está disponible como un recurso denominado SystemFunction040 en Advapi32.dll. Debe usar las funciones de LoadLibrary y GetProcAddress para vincular dinámicamente a Advapi32.dll.

Sintaxis

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

Parámetros

[in, out] Memory

Puntero a la memoria que se va a cifrar. El tamaño de la memoria debe ser un múltiplo de la constante RTL_ENCRYPT_MEMORY_SIZE.

[in] MemorySize

Número de bytes a los que puntos de memoria. El número de bytes debe ser un múltiplo de la constante RTL_ENCRYPT_MEMORY_SIZE.

[in] OptionFlags

Valor que especifica cómo funciona el cifrado a través de los límites del proceso y la suplantación. Este parámetro puede ser uno de los siguientes valores. Los valores son mutuamente excluyentes. Debe especificar la misma marca al cifrar y descifrar la memoria.

Valor Significado
0 Cifre y descifre la memoria en el mismo proceso. Una aplicación que se ejecuta en un proceso diferente no podrá descifrar los datos.
RTL_ENCRYPT_OPTION_CROSS_PROCESS
0x01
Cifre y descifre la memoria en distintos procesos. Una aplicación que se ejecuta en un proceso diferente podrá descifrar los datos.
RTL_ENCRYPT_OPTION_SAME_LOGON
0x02
Use las mismas credenciales de inicio de sesión para cifrar y descifrar la memoria en distintos procesos. Una aplicación que se ejecuta en un proceso diferente podrá descifrar los datos. Sin embargo, el proceso debe ejecutarse como el mismo usuario que cifró los datos y en la misma sesión de inicio de sesión.
RTL_ENCRYPT_OPTION_FOR_SYSTEM
0x04
Permitir que los autores de llamadas cifren la información para que solo se descifre un proceso del sistema.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es STATUS_SUCCESS.

Si se produce un error en la función, el valor devuelto es un código NTSTATUS que indica el error.

Requisitos

Requisito Valor
cliente mínimo admitido Windows XP, Windows XP [solo aplicaciones de escritorio]
servidor mínimo admitido Windows Server 2003, Windows Server 2003 [solo aplicaciones de escritorio]
de la plataforma de destino de Windows
encabezado de ntsecapi.h
DLL de Advapi32.dll