PlayReady 版本 4.4 中的新增功能

此页面概述了 PlayReady 版本 4.3 和 PlayReady 版本 4.4 之间的最重大更改。

PlayReady 版本 4.4 中的常规更改

确定给定移植工具包实现支持的功能在客户端和服务器上添加的功能。

在单个许可证获取响应中获取多个非叶许可证时,服务器可以选择执行其他加密,以减少客户端上的加密。

PlayReady Server SDK 版本 4.4 中的常规更改

如果客户端也是版本 4.4 或更高版本,服务器应用程序现在可以确定客户端实现的功能。 有关详细信息,请参阅 如何确定客户端支持的功能

属性 LicenseResponse.IncludeOptimizedContentKey2 已 (添加到默认为 false) 。

  1. 如果优化的内容密钥 2 功能无法提高客户端的性能,则此属性不起作用。 例如,如果客户端早于版本 4.4,则会忽略该属性。
  2. 否则,将属性设置为 true 将导致服务器在生成许可证获取响应时执行额外的非对称加密操作,并在响应中包含的每个非叶许可证中包含“优化内容密钥 2”。 有关此功能的相应优势,请参阅下面的“PlayReady 设备移植工具包版本 4.4 中的更改”。

PlayReady 设备移植工具包版本 4.4 中的更改

常规

客户端应用程序现在可以确定 PlayReady 设备移植工具包的特定 OEM 实现已实现哪些功能。 有关详细信息,请参阅源代码文件 source/inc/drmmanagertypes.h 中的结构定义。

客户端将 PlayReady 设备移植工具包的特定 OEM 实现的功能作为许可证获取质询的一部分发送到服务器。 有关详细信息,请参阅 如何确定客户端支持的功能

许可证现在可能包含优化的内容密钥 2 XMR 对象。 当包含此 XMR 对象的单个许可证获取响应中的多个非叶许可证通过同一DRM_APP_CONTEXT中的Drm_Reader_Bind) 绑定 (时,客户端将仅执行一个非对称加密操作总数,而不是每个许可证执行一个非对称加密操作。 当客户端可能接收具有不同内容密钥的多个比特率或流时,这可能特别有用:服务器上的单个非对称加密操作可以消除客户端上的多个此类操作。

API

(以前源/cdmi/*) 中不再包含不符合规范的 CDMI 接口。 Microsoft 建议迁移到符合规范的 CDMI 接口。 有关详细信息,请参阅源代码文件 source/inc/drmcdmi* 和 source/modules/cdmi/real/*。

添加了以下 OEM API。 有关详细信息,请参阅 API 的默认实现所在的相应源代码文件。

Oem_Clock_GetSystemTimeOffsetAsInt64
Oem_Clock_SetSecureClockOffsetValue
OEM_ECC_GenerateTeeSigningPublicKey_P256Impl
OEM_ECC_GenerateTeeSigningPublicKey_P256
OEM_TEE_CRYPTO_ECC256_GenerateTeeSigningPrivateKey
OEM_TEE_BASE_ECC256_GenerateTeeSigningPrivateKey
OEM_TEE_BASE_GetExtendedVersion