PFND3DDDI_AUTHENTICATEDCHANNELKEYEXCHANGE fonction de rappel (d3dumddi.h)

La fonction AuthenticatedChannelKeyExchange négocie la clé de session.

Syntaxe

PFND3DDDI_AUTHENTICATEDCHANNELKEYEXCHANGE Pfnd3dddiAuthenticatedchannelkeyexchange;

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

Paramètres

hDevice

Handle pour le périphérique d’affichage (contexte graphique).

unnamedParam2

pData [in, out]

Pointeur vers une structure D3DDDIARG_AUTHENTICATEDCHANNELKEYEXCHANGE qui décrit une mémoire tampon contenant la clé de session, que le canal authentifié utilise.

Valeur retournée

AuthenticatedChannelKeyExchange retourne l’une des valeurs suivantes :

Code de retour Description
S_OK La clé de session est négociée avec succès.
E_OUTOFMEMORY AuthenticatedChannelKeyExchange n’a pas pu allouer la mémoire nécessaire pour qu’elle se termine.

Remarques

Le membre pData dans la structure D3DDDIARG_AUTHENTICATEDCHANNELKEYEXCHANGE pointe vers une mémoire tampon qui contient une clé secrète qu’une application a précédemment chiffrée avec la clé publique à partir du certificat de canal authentifié du pilote. La taille réelle de la mémoire tampon est de 256 octets. Cet échange est identique au fonctionnement de l’échange de clés de Output Protection Manager (OPM), sauf que la mémoire tampon OPM contient des données supplémentaires en plus de la clé de session. Le même certificat que celui utilisé pour l’échange de clés OPM peut être utilisé pour le canal authentifié.

Le pilote déchiffre cette clé secrète et utilise la clé secrète dans les appels aux fonctions ConfigureAuthenticatedChannel et QueryAuthenticatedChannel du pilote pour calculer les codes d’authentification de message (OMAC) en mode One-Key Cipher Block Chaining (CBC).

Configuration requise

Condition requise Valeur
Client minimal pris en charge AuthenticatedChannelKeyExchange est pris en charge à partir du système d’exploitation Windows 7.
Plateforme cible Desktop (Expérience utilisateur)
En-tête d3dumddi.h (inclure D3dumddi.h)

Voir aussi

D3DDDIARG_AUTHENTICATEDCHANNELKEYEXCHANGE