PFND3DDDI_AUTHENTICATEDCHANNELKEYEXCHANGE función de devolución de llamada (d3dumddi.h)
La función AuthenticatedChannelKeyExchange negocia la clave de sesión.
Sintaxis
PFND3DDDI_AUTHENTICATEDCHANNELKEYEXCHANGE Pfnd3dddiAuthenticatedchannelkeyexchange;
HRESULT Pfnd3dddiAuthenticatedchannelkeyexchange(
HANDLE hDevice,
D3DDDIARG_AUTHENTICATEDCHANNELKEYEXCHANGE *unnamedParam2
)
{...}
Parámetros
hDevice
Identificador del dispositivo de visualización (contexto de gráficos).
unnamedParam2
pData [in, out]
Puntero a una estructura de D3DDDIARG_AUTHENTICATEDCHANNELKEYEXCHANGE que describe un búfer que contiene la clave de sesión, que usa el canal autenticado.
Valor devuelto
AuthenticatedChannelKeyExchange devuelve uno de los siguientes valores:
código de retorno | descripción |
---|---|
S_OK | La clave de sesión se negocia correctamente. |
E_OUTOFMEMORY | AuthenticatedChannelKeyExchange no pudo asignar la memoria necesaria para que se complete. |
Observaciones
El miembro pData de la estructura de D3DDDIARG_AUTHENTICATEDCHANNELKEYEXCHANGE apunta a un búfer que contiene una clave secreta que una aplicación cifrada anteriormente RSAES-OAEP con la clave pública del certificado de canal autenticado del controlador. El tamaño real del búfer es de 256 bytes. Este intercambio es idéntico al funcionamiento del intercambio de claves de Administrador de protección de resultados (OPM), excepto que el búfer de OPM contiene datos adicionales además de la clave de sesión. El mismo certificado que se usa para el intercambio de claves OPM se puede usar para el canal autenticado.
El controlador descifra esta clave secreta y usa la clave secreta en llamadas a la ConfigureAuthenticatedChannel y QueryAuthenticatedChannel funciones para calcular códigos de autenticación de mensajes en modo CBC (OMAC) de cifrado de clave única.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | AuthenticatedChannelKeyExchange se admite a partir del sistema operativo Windows 7. |
de la plataforma de destino de | Escritorio |
encabezado de | d3dumddi.h (incluya D3dumddi.h) |