RtlSecureZeroMemory 매크로(wdm.h)

RtlSecureZeroMemory 루틴은 안전한 방식으로 메모리 블록을 0으로 채웁니다.

구문

void RtlSecureZeroMemory(
         Ptr,
  [in]   cnt
);

매개 변수

Ptr

0으로 채울 메모리 버퍼에 대한 포인터입니다.

[in] cnt

0으로 채울 바이트 수를 지정합니다.

반환 값

없음

설명

RtlSecureZeroMemory의 효과는 RtlZeroMemory의 효과와 동일하며, 이후에 기록되지 않더라도 메모리 위치가 0으로 보장된다는 점을 제외하면 입니다. (호출자가 해당 메모리 범위에 다시 액세스하지 않는 것으로 확인되면 컴파일러는 RtlZeroMemory에 대한 호출을 최적화할 수 있습니다.)

RtlSecureZeroMemory를 사용하여 중요한 정보가 0으로 표시되도록 합니다. 예를 들어 함수가 로컬 배열 변수를 사용하여 암호 정보를 저장한다고 가정합니다. 함수가 종료되면 RtlSecureZeroMemory에 의해 0이 아닌 한 암호 정보는 동일한 메모리 위치에 남아 있을 수 있습니다.

RtlSecureZeroMemoryRtlZeroMemory보다 느립니다. 따라서 보안이 문제가 되지 않는 경우 RtlZeroMemory 를 대신 사용합니다.

ptr 블록이 비페이지 풀에 있는 경우 RtlSecureZeroMemory의 호출자는 모든 IRQL에서 실행될 수 있습니다. 그렇지 않으면 호출자가 IRQL <= APC_LEVEL 실행 중이어야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Server 2003 이상 버전의 Windows에서 사용할 수 있습니다. 루틴은 인라인으로 선언되므로 루틴 본문은 이전 버전의 운영 체제에 포함될 수 있습니다.
대상 플랫폼 데스크톱
헤더 wdm.h(Wdm.h, Ntddk.h, Ntifs.h 포함)
IRQL 모든 수준(설명 섹션 참조)

추가 정보

RtlFillMemory

RtlZeroMemory