Share via


EnclaveUnsealData 함수(winenclaveapi.h)

암호화된 이진 큰 개체(Blob)의 암호를 해독합니다.

구문

HRESULT EnclaveUnsealData(
  [in]            const VOID       *ProtectedBlob,
  [in]            UINT32           ProtectedBlobSize,
  [out]           PVOID            DecryptedData,
  [in]            UINT32           BufferSize,
  [out]           UINT32           *DecryptedDataSize,
  [out, optional] ENCLAVE_IDENTITY *SealingIdentity,
  [out, optional] UINT32           *UnsealingFlags
);

매개 변수

[in] ProtectedBlob

봉인 해제할 봉인된 데이터에 대한 포인터입니다. 이 데이터는 enclave의 주소 범위 내에서 또는 호스트 프로세스의 주소 공간 내에 저장될 수 있습니다.

[in] ProtectedBlobSize

봉인 해제할 봉인된 데이터의 크기(바이트)입니다.

[out] DecryptedData

암호화되지 않은 데이터를 배치해야 하는 버퍼에 대한 포인터입니다. 이 데이터는 enclave의 주소 범위 내에서 또는 호스트 프로세스의 주소 공간 내에 저장될 수 있습니다. 이 매개 변수가 이 NULL면 암호 해독된 데이터의 크기만 계산됩니다.

[in] BufferSize

DecryptedData 매개 변수가 가리키는 버퍼의 크기(바이트)입니다. DecryptedData가 이면 BufferSizeNULL0이어야 합니다. DecryptedData가 이 아니NULL고 암호 해독된 데이터의 크기가 이 값보다 크면 오류가 반환됩니다.

[out] DecryptedDataSize

암호 해독된 데이터의 실제 크기를 바이트 단위로 받는 변수에 대한 포인터입니다.

[out, optional] SealingIdentity

데이터를 봉인한 enclave의 ID로 채워야 하는 버퍼에 대한 선택적 포인터입니다. 이 포인터가 이 NULL면 봉인 enclave의 ID가 반환되지 않습니다.

[out, optional] UnsealingFlags

암호화된 이진 큰 개체를 설명하는 다음 플래그 중 0개 이상을 수신하는 변수에 대한 선택적 포인터입니다.

의미
ENCLAVE_UNSEAL_FLAG_STALE_KEY
1
데이터가 부실 키로 암호화되었습니다. 봉인 키는 보안에 필요한 경우 회전되며 시스템은 최근에 알려진 고정된 수의 키만 유지할 수 있습니다. 부실 키로 데이터가 암호화되었음을 확인하는 enclave는 데이터를 암호화하는 데 사용된 키가 더 이상 키 목록에 유지 관리되지 않을 가능성을 최소화하기 위해 현재 키로 데이터를 다시 암호화해야 합니다.

반환 값

이 함수가 성공하면 S_OK 반환합니다. 그러지 않으면 HRESULT 오류 코드를 반환합니다.

설명

EnclaveUnsealData를 호출하는 enclave는 EnclaveSealData를 호출하여 데이터를 봉인한 enclave에서 지정한 ENCLAVE_SEALING_IDENTITY_POLICY 값에 해당하는 조건을 충족해야 합니다.

EnclaveUnsealData 는 enclave 내에서 호출되어야 하며 , ENCLAVE_TYPE_VBS enclave 형식이 있는 enclave 내에서만 지원됩니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 10 버전 1709 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2016 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 winenclaveapi.h
라이브러리 Vertdll.lib
DLL Vertdll.dll

추가 정보

Enclave 함수

ENCLAVE_SEALING_IDENTITY_POLICY

EnclaveSealData

VBS Enclave에서 사용할 수 있는 Vertdll API