NCryptUnprotectSecret 함수(ncryptprotect.h)
NCryptUnprotectSecret 함수는 데이터를 지정된 보호 설명자로 암호 해독합니다. NCryptProtectSecret을 호출하여 데이터를 암호화합니다.
구문
SECURITY_STATUS NCryptUnprotectSecret(
[out, optional] NCRYPT_DESCRIPTOR_HANDLE *phDescriptor,
[in] DWORD dwFlags,
[in] const BYTE *pbProtectedBlob,
ULONG cbProtectedBlob,
[in, optional] const NCRYPT_ALLOC_PARA *pMemPara,
[in, optional] HWND hWnd,
[out] BYTE **ppbData,
[out] ULONG *pcbData
);
매개 변수
[out, optional] phDescriptor
보호 설명자 핸들에 대한 포인터입니다.
[in] dwFlags
플래그는 다음 값의 0 또는 비트 OR일 수 있습니다.
값 | 의미 |
---|---|
|
키 서비스 공급자가 사용자 인터페이스를 표시하지 않도록 요청합니다. |
|
보호된 데이터 Blob의 헤더만 디코딩합니다. 실제 암호 해독은 발생하지 않습니다. |
[in] pbProtectedBlob
암호 해독할 데이터가 포함된 바이트 배열에 대한 포인터입니다.
cbProtectedBlob
pbProtectedBlob 매개 변수가 가리키는 배열의 바이트 수입니다.
[in, optional] pMemPara
사용자 지정 메모리 관리 함수를 지정하는 데 사용할 수 있는 NCRYPT_ALLOC_PARA 구조체에 대한 포인터입니다. 이 인수를 NULL로 설정하면 LocalAlloc 함수는 내부적으로 메모리를 할당하는 데 사용되며 애플리케이션은 LocalFree 를 호출하여 ppbData 매개 변수가 가리키는 메모리를 해제해야 합니다.
[in, optional] hWnd
표시할 사용자 인터페이스의 부모 창(있는 경우)에 대한 핸들입니다.
[out] ppbData
암호 해독된 데이터에 대한 포인터를 수신하는 변수의 주소입니다.
[out] pcbData
ppbData 변수가 가리키는 암호 해독된 데이터의 크기(바이트)를 포함하는 ULONG 변수에 대한 포인터입니다.
반환 값
함수의 성공 또는 실패를 나타내는 상태 코드를 반환합니다. 가능한 반환 코드에는 다음이 포함되지만 이에 국한되지는 않습니다.
반환 코드 | 설명 |
---|---|
|
함수가 성공했습니다. |
|
dwFlags 매개 변수는 NCRYPT_SILENT_FLAG 또는 NCRYPT_UNPROTECT_NO_DECRYPT 포함할 수 있습니다. |
|
pbProtectedBlob, ppbData 및 pcbData 매개 변수는 NULL일 수 없습니다.
cbData 매개 변수는 1보다 작을 수 없습니다. |
설명
NCryptUnprotectSecret 함수를 사용하여 키, 키 자료 및 암호를 해독합니다. NCryptStreamOpenToUnprotect 및 NCryptStreamUpdate 함수를 사용하여 더 큰 메시지의 암호를 해독합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 8 [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2012 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | ncryptprotect.h |
라이브러리 | NCrypt.lib |
DLL | NCrypt.dll |