IDirect3DCryptoSession9::NegotiateKeyExchange method
Establishes the session key for the cryptographic session.
Syntax
HRESULT NegotiateKeyExchange( UINT DataSize, VOID *pData );
Parameters
- DataSize
-
The size of the pData byte array, in bytes.
- pData
-
A pointer to a byte array that contains the encrypted session key.
Return value
If this method succeeds, it returns S_OK. Otherwise, it returns an HRESULT error code.
Remarks
To find out which key-exchange mechanism to use, call the IDirect3DDevice9Video::GetContentProtectionCaps method. The key-exchange mechanism is specified in the KeyExchangeType member of the D3DCONTENTPROTECTIONCAPS structure. If the value is D3DKEYEXCHANGE_RSAES_OAEP, use RSA Encryption Scheme - Optimal Asymmetric Encryption Padding (RSAES-OAEP) to encrypt the session key. Pass this encrypted cyphertext in the pData parameter.
If the key-exchange type is D3DKEYEXCHANGE_DXVA, do not call this method to establish the session key. Instead, use the key-exchange mechanism that is defined for DirectX Video Acceleration 2 (DXVA-2) decoding.
The driver might also use a proprietary key-exhange mechanism.
Requirements
|
Minimum supported client |
Windows 7 [desktop apps only] |
|---|---|
|
Minimum supported server |
Windows Server 2008 R2 [desktop apps only] |
|
Header |
|
See also