PFND3D11_1DDI_NEGOTIATECRYPTOSESSIONKEYESCHANGE回调函数 (d3d10umddi.h)
为加密会话对象建立会话密钥。
语法
PFND3D11_1DDI_NEGOTIATECRYPTOSESSIONKEYESCHANGE Pfnd3d111DdiNegotiatecryptosessionkeyeschange;
HRESULT Pfnd3d111DdiNegotiatecryptosessionkeyeschange(
D3D10DDI_HDEVICE hDevice,
D3D11_1DDI_HCRYPTOSESSION hCryptoSession,
UINT DataSize,
BYTE *pData
)
{...}
参数
hDevice
显示设备的句柄 (图形上下文) 。
hCryptoSession
通过调用 CreateCryptoSession 函数创建的加密会话对象的句柄。
DataSize
pData 数组中数据的大小(以字节为单位)。
pData
指向包含加密会话密钥的字节数组的指针。
返回值
NegotiateCryptoSessionKeyExchange 返回以下值之一:
返回代码 | 说明 |
---|---|
S_OK | 已成功协商加密会话的会话密钥。 |
E_INVALIDARG | 参数已验证,确定为不正确。 |
E_OUTOFMEMORY | 内存无法完成操作。 |
注解
pData 参数引用包含加密会话的会话密钥的缓冲区。 密钥交换机制取决于加密会话使用的加密算法的类型。
对于使用 RSA 加密方案 - 最佳非对称加密填充 (RSAES-OAEP) 算法的会话,密钥缓冲区必须包含 256 字节的数据,并且必须使用 RSA 加密方案 - 最佳非对称加密填充 (RSAES-OAEP) 算法以及加密会话证书中的公钥进行加密。
加密会话的密钥交换与输出保护管理器 (OPM) 接口的密钥交换相同。 但是,OPM 密钥缓冲区包含会话密钥以外的其他数据。
注意 同一证书可用于加密会话和 OPM 会话密钥。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 8 |
最低受支持的服务器 | Windows Server 2012 |
目标平台 | 桌面 |
标头 | d3d10umddi.h (包括 D3d10umddi.h) |