Partager via


Méthode IOPMVideoOutput ::FinishInitialization (opmapi.h)

Termine la séquence d’initialisation d’une session OPM (Output Protection Manager).

Syntaxe

HRESULT FinishInitialization(
  [in] const OPM_ENCRYPTED_INITIALIZATION_PARAMETERS *pParameters
);

Paramètres

[in] pParameters

Pointeur vers une structure OPM_ENCRYPTED_INITIALIZATION_PARAMETERS . Initialisez cette structure comme décrit dans la session Remarques.

Valeur retournée

Retourne un HRESULT. Les valeurs possibles incluent, sans s’y limiter, celles du tableau suivant.

Code de retour Description
S_OK
S_OK
ERROR_GRAPHICS_OPM_DRIVER_INTERNAL_ERROR
Une erreur inattendue s’est produite sur le pilote d’affichage.
ERROR_GRAPHICS_OPM_INVALID_ENCRYPTED_PARAMETERS
Les paramètres chiffrés dans pParameters sont incorrects .

Remarques

Cette méthode équivaut à la méthode IAMCertifiedOutputProtection ::SessionSequenceStart dans le protocole COPP (Certified Output Protection Protocol).

Le paramètre pParameters pointe vers une structure OPM_ENCRYPTED_INITIALIZATION_PARAMETERS qui contient un tableau de 256 octets. Avant d’appeler la méthode, préparez ce tableau comme suit. Tout d’abord, concaténer les nombres suivants :

  • Nombre 128 bits retourné dans le paramètre prnRandomNumber de la méthode IOPMVideoOutput ::StartInitialization .
  • Clé de signature AES. Cette valeur est un nombre aléatoire 128 bits généré par l’application.
  • Numéro de séquence initial pour les requêtes opm status. Cette valeur est un nombre aléatoire 32 bits généré par l’application.
  • Numéro de séquence initial pour les commandes OPM. Cette valeur est un nombre aléatoire 32 bits généré par l’application.
Chiffrez ce nombre avec RAEAS-OAEP, chiffrement à l’aide de la clé de chiffrement publique du pilote d’affichage. La clé de chiffrement publique est contenue dans le certificat retourné dans le paramètre ppbCertificate de la méthode StartInitialization .

L’application doit utiliser des nombres aléatoires sécurisés par chiffrement. La fonction CryptGenRandom est recommandée, même si elle n’est pas obligatoire.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau uniquement]
Plateforme cible Windows
En-tête opmapi.h

Voir aussi

IOPMVideoOutput

Gestionnaire de protection de sortie