共用方式為


PFND3DWDDM2_4DDI_NEGOTIATECRYPTOSESSIONKEYEXCHANGE回呼函式 (d3d10umddi.h)

建立密碼編譯會話物件的會話密鑰。

語法

PFND3DWDDM2_4DDI_NEGOTIATECRYPTOSESSIONKEYEXCHANGE Pfnd3dwddm24DdiNegotiatecryptosessionkeyexchange;

HRESULT Pfnd3dwddm24DdiNegotiatecryptosessionkeyexchange(
  D3D10DDI_HDEVICE hDevice,
  D3D11_1DDI_HCRYPTOSESSION hCryptoSession,
  D3DWDDM2_4DDI_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS flags,
  UINT DataSize,
  BYTE *pData
)
{...}

參數

hDevice

顯示裝置的句柄(圖形內容)。

hCryptoSession

密碼編譯會話之驅動程式私用數據的句柄。 此句柄是由 Direct3D 運行時間所建立,並在呼叫 CreateCryptoSession 時傳遞至驅動程式。

flags

函式的旗標值。

DataSize

pData 成員指向的數據大小,以位元組為單位。

pData

包含加密會話金鑰之緩衝區的指標。

傳回值

傳回下列其中一個 HRESULT 值:

傳回碼 描述
S_OK 已成功交涉密碼編譯會話的會話密鑰。
E_INVALIDARG 已驗證參數,並判斷為不正確。
E_OUTOFMEMORY 記憶體無法完成作業。

言論

pData 參數會參考包含密碼編譯會話之會話密鑰的緩衝區。 密鑰交換機制取決於密碼編譯會話所使用的加密演演算法類型。

對於使用 RSA 加密配置 - 最佳非對稱加密填補 (RSAES-OAEP) 演演算法的會話,金鑰緩衝區必須包含 256 個字節的數據,而且必須使用 RSA 加密配置 - 最佳非對稱加密填補 (RSAES-OAEP) 演算法與密碼編譯會話憑證中的公鑰進行加密。

密碼編譯會話的密鑰交換與 Output Protection Manager (OPM) 介面的密鑰交換相同。 不過,OPM 金鑰緩衝區除了會話密鑰之外,還包含其他數據。

注意

相同的憑證可用於密碼編譯會話和 OPM 會話密鑰。

要求

要求 價值
目標平臺 窗戶
標頭 d3d10umddi.h (包括 S3d10umddi.h)