PFND3DDDI_CRYPTOSESSIONKEYEXCHANGE回呼函式 (d3dumddi.h)
CryptoSessionKeyExchange 函式會交涉會話密鑰。
語法
PFND3DDDI_CRYPTOSESSIONKEYEXCHANGE Pfnd3dddiCryptosessionkeyexchange;
HRESULT Pfnd3dddiCryptosessionkeyexchange(
HANDLE hDevice,
D3DDDIARG_CRYPTOSESSIONKEYEXCHANGE *unnamedParam2
)
{...}
參數
hDevice
顯示裝置的句柄 (圖形內容) 。
unnamedParam2
pData [in, out]
描述用於加密之會話金鑰 之D3DDDIARG_CRYPTOSESSIONKEYEXCHANGE 結構的指標。
傳回值
CryptoSessionKeyExchange 會傳回下列其中一個值:
傳回碼 | 描述 |
---|---|
S_OK | 已成功交換會話金鑰。 |
E_OUTOFMEMORY | CryptoSessionKeyExchange 無法配置所需的記憶體,使其完成。 |
備註
驅動程式應該只支援每個加密類型的單一金鑰交換機制。 Microsoft 已將密鑰交換類型標準化D3DKEYEXCHANGE_RSAES_OAEP。 不過,硬體廠商可以使用專屬密鑰交換機制。
針對 D3DKEYEXCHANGE_RSAES_OAEP,D3DDDIARG_CRYPTOSESSIONKEYEXCHANGE 結構的 pData 成員會指向緩衝區,其中包含應用程式先前以驅動程式加密會話憑證中公鑰的 RSAES-OAEP 加密的會話密鑰。 緩衝區的實際大小是 256 個字節。 此交換與 輸出保護管理員 (OPM) 金鑰交換的運作方式相同,不同之處在於 OPM 緩衝區除了會話密鑰之外還包含其他數據。 用於 OPM 金鑰交換的相同憑證可用於D3DKEYEXCHANGE_RSAES_OAEP金鑰交換。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 從 Windows 7 操作系統開始,支援 CryptoSessionKeyExchange。 |
目標平台 | 桌面 |
標頭 | d3dumddi.h (include D3dumddi.h) |