PFND3D11_1DDI_NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE回调函数 (d3d10umddi.h)

为经过身份验证的通道建立会话密钥。

语法

PFND3D11_1DDI_NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE Pfnd3d111DdiNegotiateauthenticatedchannelkeyexchange;

HRESULT Pfnd3d111DdiNegotiateauthenticatedchannelkeyexchange(
  D3D10DDI_HDEVICE hDevice,
  D3D11_1DDI_HAUTHCHANNEL hCAuthChannel,
  UINT DataSize,
  VOID *pData
)
{...}

参数

hDevice

显示设备的句柄 (图形上下文) 。

hCAuthChannel

通过调用 CreateAuthenticatedChannel (D3D11_1) 函数创建的经过身份验证的通道对象的句柄。

DataSize

pData 数组中数据的大小(以字节为单位)。

pData

指向包含加密会话密钥的字节数组的指针。

返回值

NegotiateAuthenticatedChannelKeyExchange 返回以下值之一:

返回代码 说明
S_OK 已成功协商经过身份验证的通道的会话密钥。
E_INVALIDARG 参数已验证,确定为不正确。
E_OUTOFMEMORY 内存无法完成操作。

注解

pData 参数引用一个缓冲区,该缓冲区包含经过身份验证的通道的会话密钥。 此密钥缓冲区必须包含 256 字节的数据,并且必须使用 RSA 加密方案 - 最佳非对称加密填充 (RSAES-OAEP) 算法以及经过身份验证的通道证书中的公钥进行加密。

经过身份验证的通道的密钥交换与输出保护管理器 (OPM) 接口的密钥交换相同。 但是,OPM 密钥缓冲区包含会话密钥以外的其他数据。

注意

 同一证书可用于经过身份验证的通道和 OPM 会话密钥。

要求

要求
最低受支持的客户端 Windows 8
最低受支持的服务器 Windows Server 2012
目标平台 桌面
标头 d3d10umddi.h (包括 D3d10umddi.h)

另请参阅

CreateAuthenticatedChannel (D3D11_1)