Freigeben über


PFND3DDDI_CRYPTOSESSIONKEYEXCHANGE Rückruffunktion (d3dumddi.h)

Die CryptoSessionKeyExchange-Funktion handelt einen Sitzungsschlüssel aus.

Syntax

PFND3DDDI_CRYPTOSESSIONKEYEXCHANGE Pfnd3dddiCryptosessionkeyexchange;

HRESULT Pfnd3dddiCryptosessionkeyexchange(
  HANDLE hDevice,
  D3DDDIARG_CRYPTOSESSIONKEYEXCHANGE *unnamedParam2
)
{...}

Parameter

hDevice

Ein Handle für das Anzeigegerät (Grafikkontext).

unnamedParam2

pData- [in, out]

Ein Zeiger auf eine D3DDDIARG_CRYPTOSESSIONKEYEXCHANGE-Struktur, die einen Sitzungsschlüssel beschreibt, der für die Verschlüsselung verwendet wird.

Rückgabewert

CryptoSessionKeyExchange gibt einen der folgenden Werte zurück:

Rückgabecode Beschreibung
S_OK Der Sitzungsschlüssel wird erfolgreich ausgetauscht.
E_OUTOFMEMORY CryptoSessionKeyExchange konnte den erforderlichen Arbeitsspeicher nicht zuordnen, damit er abgeschlossen werden kann.

Bemerkungen

Der Treiber sollte nur einen einzelnen Schlüsselaustauschmechanismus für jeden Verschlüsselungstyp unterstützen. Microsoft hat den Schlüsselaustauschtyp D3DKEYEXCHANGE_RSAES_OAEP standardisiert. Hardwareanbieter können jedoch proprietäre Schlüsselaustauschmechanismen verwenden.

Für D3DKEYEXCHANGE_RSAES_OAEP verweist das pData- Mitglied der D3DDDIARG_CRYPTOSESSIONKEYEXCHANGE-Struktur auf einen Puffer, der den Sitzungsschlüssel enthält, den eine Anwendung zuvor RSAES-OAEP-verschlüsselt mit dem öffentlichen Schlüssel aus dem Kryptositzungszertifikat des Treibers verschlüsselt hat. Die tatsächliche Größe des Puffers beträgt 256 Byte. Dieser Austausch ist identisch mit der Funktionsweise des Output Protection Manager (OPM)-Schlüsselaustausch, außer der OPM-Puffer enthält neben dem Sitzungsschlüssel zusätzliche Daten. Dasselbe Zertifikat, das für den OPM-Schlüsselaustausch verwendet wird, kann für den D3DKEYEXCHANGE_RSAES_OAEP Schlüsselaustausch verwendet werden.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- CryptoSessionKeyExchange wird ab dem Windows 7-Betriebssystem unterstützt.
Zielplattform- Desktop
Header- d3dumddi.h (include D3dumddi.h)

Siehe auch

D3DDDIARG_CRYPTOSESSIONKEYEXCHANGE