다음을 통해 공유


PFND3DWDDM2_4DDI_NEGOTIATECRYPTOSESSIONKEYEXCHANGE 콜백 함수(d3d10umddi.h)

암호화 세션 개체에 대한 세션 키를 설정합니다.

구문

PFND3DWDDM2_4DDI_NEGOTIATECRYPTOSESSIONKEYEXCHANGE Pfnd3dwddm24DdiNegotiatecryptosessionkeyexchange;

HRESULT Pfnd3dwddm24DdiNegotiatecryptosessionkeyexchange(
  D3D10DDI_HDEVICE hDevice,
  D3D11_1DDI_HCRYPTOSESSION hCryptoSession,
  D3DWDDM2_4DDI_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS flags,
  UINT DataSize,
  BYTE *pData
)
{...}

매개 변수

hDevice

디스플레이 디바이스(그래픽 컨텍스트)에 대한 핸들입니다.

hCryptoSession

암호화 세션에 대한 드라이버의 개인 데이터에 대한 핸들입니다. 이 핸들은 Direct3D 런타임에서 만들어지고 CreateCryptoSession 호출에서 드라이버에 전달되었습니다.

flags

함수의 플래그 값입니다.

DataSize

pData 멤버가 가리키는 데이터의 크기(바이트)입니다.

pData

암호화된 세션 키가 포함된 버퍼에 대한 포인터입니다.

반환 값

다음 HRESULT 값 중 하나를 반환합니다.

반환 코드 설명
S_OK 암호화 세션의 세션 키가 성공적으로 협상되었습니다.
E_INVALIDARG 매개 변수의 유효성이 검사되었고 잘못된 것으로 확인되었습니다.
E_OUTOFMEMORY 메모리를 사용하여 작업을 완료할 수 없습니다.

설명

pData 매개 변수는 암호화 세션에 대한 세션 키가 포함된 버퍼를 참조합니다. 키 교환 메커니즘은 암호화 세션에서 사용되는 암호화 알고리즘의 유형에 따라 달라집니다.

RSA 암호화 체계 - RSAES-OAEP(최적 비대칭 암호화 패딩) 알고리즘을 사용하는 세션의 경우 키 버퍼는 256바이트의 데이터를 포함해야 하며, 암호화 세션 인증서의 공개 키와 함께 RSA 암호화 체계 - 최적의 비대칭 암호화 패딩(RSAES-OAEP) 알고리즘을 사용하여 암호화해야 합니다.

암호화 세션의 키 교환은 OPM(출력 보호 관리자) 인터페이스의 키 교환과 동일합니다. 그러나 OPM 키 버퍼에는 세션 키 외에 추가 데이터가 포함됩니다.

참고

암호화 세션 및 OPM 세션 키에 동일한 인증서를 사용할 수 있습니다.

요구 사항

요구 사항
대상 플랫폼 Windows
헤더 d3d10umddi.h(S3d10umddi.h 포함)