IOPMVideoOutput::StartInitialization 方法 (opmapi.h)
开始输出保护管理器的初始化序列 (OPM) 会话。
语法
HRESULT StartInitialization(
[out] OPM_RANDOM_NUMBER *prnRandomNumber,
[out] BYTE **ppbCertificate,
[out] ULONG *pulCertificateLength
);
参数
[out] prnRandomNumber
指向 OPM_RANDOM_NUMBER 结构的指针。 结构接收显示驱动程序生成的 128 位随机数。 IOPMVideoOutput::FinishInitialization 方法需要此数字。
[out] ppbCertificate
接收指向包含显示驱动程序证书的缓冲区的指针。 方法为缓冲区分配内存。 调用方必须通过调用 CoTaskMemFree 释放内存。
[out] pulCertificateLength
接收 ppbCertificate 指向的缓冲区的长度。
返回值
如果该方法成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。
注解
此方法等效于认证输出保护协议中的 IAMCertifiedOutputProtection::KeyExchange 方法 (COPP) 。
方法返回一个证书链,其中包含驱动程序的 2048 位 RSA 公钥。 调用方必须验证证书链,然后调用 IOPMVideoOutput::FinishInitialization 来建立 OPM 会话。
此方法同时支持 OPM 语义和 COPP 语义。 支持 COPP 语义以实现向后兼容性;新应用程序应使用 OPM 语义。
OPM 语义
方法返回 X.509 证书链。 证书链使用 ASN.1 可辨别编码规则 (DER) 进行编码。COPP 语义
方法返回 COPP 证书链。 证书链作为 UTF-8 字符串返回。 可以将 ppbCertificate 中返回的缓冲区视为 chars 数组。要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 [仅限桌面应用] |
目标平台 | Windows |
标头 | opmapi.h |