PlayReady 版本 4.2 中的新增功能

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

PlayReady 版本 4.2 中的常规更改

添加了 SecureStop2 功能。 这比以前灭绝的 SecureStop1 功能更高级别的安全性。

PlayReady Server SDK 版本 4.2 中的更改

Windows现在支持适用于硬件和软件 DRM 的 CBCS。 此外,PlayReady 许可证服务器扩展了对 SL2000 的 CBCS 支持。

服务器现在可以处理 SecureStop2 消息。 有关详细信息,请参阅 PlayReady 安全停止

服务器的 Certificate 类现在正确返回来自Windows客户端的证书的 ManufacturerName、ModelName 和 ModelNumber。

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

常规

客户端现在将 SecureStop2 消息发送到服务器。 有关详细信息,请参阅 PlayReady 安全停止

客户端应用程序现在可以选择在Drm_Reader_Bind期间拒绝单个许可证。 有关详细信息,请参阅源代码文件 source/inc/drmcallbacktypes.h 中的枚举和结构文档。

现在可以更轻松地更改编译器设置并添加特定于 OEM 的错误代码。 有关详细信息,请参阅源代码文件 source/inc/oemcompiler.h 和 source/inc/oemresults.h。

drmcipher_test.exe和drmcrypto_test.exe工具不再包含在已编译的表单中。 它们仍然可以使用源代码文件源代码文件源代码/测试/密码/* 和 source/test/crypto/*进行编译。

不再包含DrmFileViewer.exe工具及其相应的源代码。 它仅支持不再广泛使用的文件格式。

术语“批处理 ID”已全局替换为“会话 ID”。 这会影响某些公共结构。 例如,在源代码文件 source/inc/drmlicacqv3.h 结构定义DRM_LICENSE_RESPONSE中,成员m_oBatchID已重命名为m_idSession。 (PlayReady 设备移植工具包.) 中,术语“批处理 ID”和“会话 ID”一直可互换

API

与传递给 DRMPFNPOLICYCALLBACK 回调的输出保护结构相比,已简化从早期版本的 PlayReady 迁移。 有关详细信息,请参阅源代码文件 source/inc/drmoutputleveltypes.h。

DRM_CDMI_DecryptOpaque API 已更新,以支持解密 AES128CBC 内容。 有关详细信息,请参阅源代码文件 source/inc/drmcdmi.h 和 source/modules/cdmi/real/drmcdmireal.c。

已删除以下公共 API。

Drm_Revocation_StoreRevListArray

已重命名以下 OEM API。

OEM_TEE_BASE_SignHashWithDeviceSigningKey -> OEM_TEE_BASE_ECDSA_P256_SignHash
OEM_TEE_LPROV_ECDSA_Sign -> OEM_TEE_BASE_ECDSA_P256_SignData

以下 OEM API 现在有一些参数更改为可选 (输入) 可能为 NULL。 有关详细信息,请参阅源代码文件源代码源/oem/common/inc/oemtee.h。

OEM_TEE_BASE_GetVersionInformation

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

OEM_TEE_SECURESTOP2_StopDecryptors

已删除以下 OEM API。

Oem_MemRealloc
OEM_SHA256_Finalize_With_SHA_1_Size
OEM_SHA256_HMAC_Init
OEM_SHA256_HMAC_Update
OEM_SHA256_HMAC_Finalize
OEM_SHA256_HMAC_FinalizeOffset
OEM_SHA256_HMAC_CreateMAC
OEM_SHA256_HMAC_VerifyMAC
OEM_TEE_LPROV_GetDeviceModelInfo