PlayReady 吊销

什么是 PlayReady 吊销

吊销是识别已泄露安全性的客户端的过程,并阻止这些客户端访问其他许可证,以解密受保护的内容。

当 Microsoft 标识具有泄露安全性的客户端时,设备可能会被撤销并添加到吊销列表中。 吊销列表由颁发受保护内容的许可证的许可证服务器定期下载。 许可证服务器使用此吊销列表来拒绝已吊销设备的许可证,从而阻止设备播放新受保护的内容。

当吊销列表不是最新的时,会刷新设备上的吊销列表。 吊销列表也可能颁发许可证。 设备上的 DRM 组件在将内容传输到其他设备之前会检查此吊销列表。 通过防止与已撤销的组件通信,吊销的应用程序不再有效。 撤销后,修复这种情况的唯一方法是替换已撤销的元素,或者从较新版本的吊销列表中删除已撤销的组件。

Microsoft 生成和维护吊销列表及其版本控制结构。 PlayReady 客户可以从以下链接下载此列表:

PlayReady 吊销列表 (https) : https://aka.ms/revinfo

PlayReady 吊销列表 (http) : https://go.microsoft.com/fwlink/?LinkId=110086

PlayReady 服务器的要求

根据 PlayReady 产品的符合性规则的要求,运营 PlayReady 服务器的公司“必须每周更新一次 PlayReady 服务器软件开发工具包证书吊销列表”。 这可确保在 Microsoft 添加到吊销列表后,任何已泄露的客户端在合理时间内拒绝其许可证请求。

忽略 PlayReady 吊销列表中的单个条目

从 PlayReady Server 版本 4.3 开始,服务器应用程序可能会显式忽略一个或多个已撤销的哈希,并继续向他们发出内容,即使它们被撤销也是如此。 这对于生成和分发受保护内容以及希望更好地控制该内容流动位置的公司可能很有用。

若要利用此功能,需要创建一个新的 XML 文件,其中包含要忽略的证书哈希,并将新条目添加到 RMSDK 实现的web.config文件中。 XML 文件具有以下格式。

<?xml version="1.0" ENCODING="utf-8"?>
   <RevAllowInfo>
      <AllowList>
         <CertificateHash>2C4OCYBGE3XZ3ODIUVUWD0SVLWH4W1NX9EA5DMJZ/PK=</CertificateHash>
         <CertificateHash>9OHU9A1KAJYI9BUWQWAVXBOO7R4XS+GG8HV0ESDBTNW=</CertificateHash>
      </AllowList>
   </RevAllowInfo>

“CertificateHash”节点中的数据必须与吊销的模型或公司证书的哈希匹配。 Microsoft 打算发布此信息以及相应的模型信息,以便将来吊销。

还必须从服务器配置中引用此 XML 文件。

  • 对于基于.Net Core的 RMSDK 部署:

    • XML 文件应添加为项项目。
    • 应使用 XML 文件的路径更新 config/RMSDKConfig.cs 中的 RevocationAllowFile 字符串。
  • 对于基于 IIS 的 RMSDK 部署:

    • 添加名为“REVOCATIONALLOWFILE”的新密钥,该密钥指向 XML 文件web.config文件。
    • 例如,如果上面的 XML 文件名为“REVOCATIONALLOWSAMPLE.XML”,web.config文件将按如下所示进行更新。
<?xml version="1.0" encoding="utf-8"?>
   <configuration>
      <appSettings>
         ...
         <add key="RevocationAllowFile" value="REVOCATIONALLOWSAMPLE.XML">
         ...