다음을 통해 공유


PFND3DDDI_AUTHENTICATEDCHANNELKEYEXCHANGE 콜백 함수(d3dumddi.h)

AuthenticatedChannelKeyExchange 함수는 세션 키를 협상합니다.

구문

PFND3DDDI_AUTHENTICATEDCHANNELKEYEXCHANGE Pfnd3dddiAuthenticatedchannelkeyexchange;

HRESULT Pfnd3dddiAuthenticatedchannelkeyexchange(
  HANDLE hDevice,
  D3DDDIARG_AUTHENTICATEDCHANNELKEYEXCHANGE *unnamedParam2
)
{...}

매개 변수

hDevice

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

unnamedParam2

pData [in, out]

인증된 채널에서 사용하는 세션 키가 포함된 버퍼를 설명하는 D3DDDIARG_AUTHENTICATEDCHANNELKEYEXCHANGE 구조체에 대한 포인터입니다.

반환 값

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

반환 코드 설명
S_OK 세션 키가 성공적으로 협상되었습니다.
E_OUTOFMEMORY AuthenticatedChannelKeyExchange 가 완료하는 데 필요한 메모리를 할당할 수 없습니다.

설명

D3DDDIARG_AUTHENTICATEDCHANNELKEYEXCHANGE 구조의 pData 멤버는 이전에 애플리케이션이 드라이버의 인증된 채널 인증서에서 공개 키로 RSAES-OAEP로 암호화한 비밀 키가 포함된 버퍼를 가리킵니다. 버퍼의 실제 크기는 256바이트입니다. 이 교환은 OPM 버퍼에 세션 키 외에 추가 데이터가 포함되어 있다는 점을 제외하고 OPM( 출력 보호 관리자 ) 키 교환의 작동 방식과 동일합니다. OPM 키 교환에 사용되는 것과 동일한 인증서를 인증된 채널에 사용할 수 있습니다.

드라이버는 이 비밀 키를 해독하고 드라이버의 ConfigureAuthenticatedChannelQueryAuthenticatedChannel 함수 호출에서 비밀 키를 사용하여 CBC(One-key Cipher Block Chaining) 모드 OMAC(메시지 인증 코드)를 계산합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 AuthenticatedChannelKeyExchange는 Windows 7 운영 체제부터 지원됩니다.
대상 플랫폼 데스크톱
머리글 d3dumddi.h(D3dumddi.h 포함)

추가 정보

D3DDDIARG_AUTHENTICATEDCHANNELKEYEXCHANGE