Revocación de PlayReady

¿Qué es la revocación de PlayReady?

La revocación es un proceso para identificar a los clientes que han puesto en peligro la seguridad y evitar que esos clientes obtengan acceso a licencias adicionales para descifrar contenido protegido.

Cuando Microsoft identifica a un cliente con seguridad comprometida, el dispositivo se puede revocar y agregar a una lista de revocación. Los servidores de licencias que emiten licencias para contenido protegido descargan periódicamente la lista de revocación. Los servidores de licencias usan esta lista de revocación para denegar licencias a los dispositivos que se han revocado, lo que impide que el dispositivo reencien el contenido recién protegido.

Las listas de revocación se actualizan en los dispositivos cuando no están actualizadas. La lista de revocación también se puede emitir con licencias. El componente DRM del dispositivo comprueba esta lista de revocación antes de transferir contenido a otros dispositivos. Al impedir la comunicación con componentes revocados, las aplicaciones revocadas ya no funcionan. Una vez revocado, la única manera de corregir la situación es reemplazar el elemento revocado o quitar el componente revocado de una versión más reciente de la lista de revocación.

Microsoft compila y mantiene la lista de revocación y su estructura de control de versiones. Los clientes de PlayReady pueden descargar esta lista desde el vínculo siguiente:

Lista de revocación de PlayReady(https): https://aka.ms/revinfo

Lista de revocación de PlayReady(http): https://go.microsoft.com/fwlink/?LinkId=110086

Requisito para servidores PlayReady

Según los requisitos de las reglas de cumplimiento para productos de PlayReady, las empresas que operan un servidor PlayReady "deben actualizar las listas de revocación de certificados del Kit de desarrollo de software de PlayReady Server una vez a la semana". Esto garantiza que cualquier cliente en peligro obtenga sus solicitudes de licencia rechazadas en un período de tiempo razonable después de su adición por Parte de Microsoft a la lista de revocación.

Omitir entradas individuales en la lista de revocación de PlayReady

A partir de la versión 4.3 de PlayReady Server, la aplicación de servidor puede omitir explícitamente uno o varios hash revocados y seguir emitiendo contenido a ellos aunque se revoquen. Esto puede ser útil para las empresas que producen y distribuyen contenido protegido y que desean tener más control sobre dónde puede fluir ese contenido.

Para usar esta característica, deberá crear un nuevo archivo XML que contenga los hashes de certificado que desea omitir, así como agregar una nueva entrada al archivo web.config de la implementación de RMSDK. El archivo XML tiene el formato siguiente.

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

Los datos del nodo "CertificateHash" deben coincidir con el hash del modelo revocado o el certificado de empresa. Microsoft pretende publicar esta información, junto con la información del modelo correspondiente, para futuras revocaciones.

También debe hacer referencia a este archivo XML desde la configuración del servidor.

  • Para implementaciones de RMSDK basadas en .Net Core:

    • El archivo XML debe agregarse como un proyecto de elemento.
    • La cadena RevocationAllowFile de config/RMSDKConfig.cs debe actualizarse con la ruta de acceso al archivo XML.
  • Para implementaciones de RMSDK basadas en IIS:

    • Agregue una nueva clave con un nombre de "REVOCATIONALLOWFILE" que apunte al archivo XML al archivo web.config.
    • Por ejemplo, si el archivo XML anterior se denominaba "REVOCATIONALLOWSAMPLE.XML", el archivo web.config se actualizaría de la siguiente manera.
<?xml version="1.0" encoding="utf-8"?>
   <configuration>
      <appSettings>
         ...
         <add key="RevocationAllowFile" value="REVOCATIONALLOWSAMPLE.XML">
         ...