IWMDRMLicense::CreateSecureDecryptor 方法

[与此页面关联的功能 Windows Media Format 11 SDK 是一项旧功能。 它已被源读取器和接收器编写器取代。 源读取器和接收器编写器已针对Windows 10和Windows 11进行了优化。 如果可能,Microsoft 强烈建议新代码使用源读取器和接收器编写器,而不是 Windows Media 格式 11 SDK。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]

CreateSecureDecryptor 方法创建安全解密器对象。 安全解密器与普通解密器的不同之处在于,它解密内容,然后根据此方法的参数中指定的设置重新加密内容。

语法

HRESULT CreateSecureDecryptor(
  [in]      BYTE          *pbCertificate,
  [in]      DWORD         cbCertificate,
  [in]      DWORD         dwCertificateType,
  [in]      DWORD         dwFlags,
  [out]     BYTE          *pbInitializationVector,
  [in, out] DWORD         *pcbInitializationVector,
  [out]     IWMDRMDecrypt **ppDecryptor
);

参数

pbCertificate [in]

调用应用程序的证书。

cbCertificate [in]

证书的大小(以字节为单位)。

dwCertificateType [in]

证书的类型。 设置为 WMDRM_CERTIFICATE_TYPE_XML。

dwFlags [in]

用于重新编码的会话保护的类型。 必须设置为下表中的常量之一:

返回的常量 描述
WMDRM_PROTECTION_TYPE_RC4 使用 RC4 加密进行会话加密。 这是此版本唯一支持的会话保护。

pbInitializationVector [out]

接收初始化向量。 初始化向量使用 OAEP 填充方案与证书中找到的 RSA 公钥进行 RSA 加密。 设置为 NULL 以接收 所需的缓冲区大小(在initializationVector 中)。

2013 年 3 月 [in, out]

输入时,作为 pbInitializationVector 传递的缓冲区大小。 输出时,缓冲区已用部分的大小。 如果为 pbInitializationVector 传递 NULL,则此值将设置为输出时所需的缓冲区大小。

ppDecryptor [out]

接收指向新创建的 对象的 IWMDRMDecrypt 接口的指针。

返回值

该方法返回 HRESULT。 可能的值包括(但并不限于)下表中的项。

返回代码 说明
S_OK
方法成功。

备注

无。

要求

要求
标头
Wmdrmsdk.h

另请参阅

IWMDRMLicense 接口