RtlEncryptMemory 함수(ntsecapi.h)
[RtlDecryptMemory 함수는 요구 사항 섹션에 지정된 운영 체제에서 사용할 수 있습니다. 이후 버전에서는 변경되거나 사용할 수 없습니다. 대신 CryptProtectMemory 함수를 사용합니다.]
RtlEncryptMemory 함수는 메모리 콘텐츠를 암호화합니다. 암호화된 콘텐츠는 RtlDecryptMemory 함수에 대한 후속 호출을 통해 해독할 수 있습니다.
메모
이 함수에는 연결된 가져오기 라이브러리가 없습니다. 이 함수는
통사론
NTSTATUS RtlEncryptMemory(
[in, out] PVOID Memory,
[in] ULONG MemorySize,
[in] ULONG OptionFlags
);
매개 변수
[in, out] Memory
암호화할 메모리에 대한 포인터입니다. 메모리 크기는 RTL_ENCRYPT_MEMORY_SIZE 상수의 배수여야 합니다.
[in] MemorySize
메모리
[in] OptionFlags
프로세스 경계 및 가장을 통해 암호화가 작동하는 방식을 지정하는 값입니다. 이 매개 변수는 다음 값 중 하나일 수 있습니다. 값은 상호 배타적입니다. 메모리를 암호화하고 암호를 해독할 때 동일한 플래그를 지정해야 합니다.
값 | 의미 |
---|---|
0 |
동일한 프로세스에서 메모리를 암호화하고 암호 해독합니다. 다른 프로세스에서 실행되는 애플리케이션은 데이터의 암호를 해독할 수 없습니다. |
RTL_ENCRYPT_OPTION_CROSS_PROCESS0x01 |
다른 프로세스에서 메모리를 암호화하고 암호 해독합니다. 다른 프로세스에서 실행되는 애플리케이션은 데이터의 암호를 해독할 수 있습니다. |
RTL_ENCRYPT_OPTION_SAME_LOGON0x02 |
동일한 로그온 자격 증명을 사용하여 다른 프로세스에서 메모리를 암호화하고 암호 해독합니다. 다른 프로세스에서 실행되는 애플리케이션은 데이터의 암호를 해독할 수 있습니다. 그러나 프로세스는 데이터를 암호화한 동일한 사용자와 동일한 로그온 세션에서 실행해야 합니다. |
RTL_ENCRYPT_OPTION_FOR_SYSTEM0x04 |
호출자가 시스템 프로세스에서만 정보 암호 해독을 암호화할 수 있도록 허용합니다. |
반환 값
함수가 성공하면 반환 값이 STATUS_SUCCESS.
함수가 실패하면 반환 값은 오류를 나타내는 NTSTATUS 코드입니다.
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows XP, Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003, Windows Server 2003 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | ntsecapi.h |
DLL | Advapi32.dll |