Licença e políticas
Durante a aquisição da licença, o cliente envia um desafio ao Servidor de Licenças do PlayReady que contém o cabeçalho de conteúdo e informações sobre o dispositivo do usuário. Depois que o desafio é recebido pelo Servidor de Licenças Do PlayReady, o Servidor analisa o desafio e começa a preencher a resposta da licença. A resposta incluirá a chave de conteúdo (CK) usada originalmente para criptografar o conteúdo que corresponde ao KID (identificador de chave) enviado no desafio de licença ou vários deles. Além disso, a resposta de licença retornará as políticas do PlayReady (direitos e restrições) sob as quais o conteúdo pode ser reproduzido.
Uma política do PlayReady descreve as ações permitidas e/ou necessárias em relação ao conteúdo do PlayReady e às restrições sobre essas ações, conforme descrito na licença PlayReady associada ao conteúdo do PlayReady. As políticas do PlayReady são definidas nas Regras de Conformidade do PlayReady (CR). O provedor de serviços deve incorporar as políticas obrigatórias e escolher quais das políticas opcionais usar e ter essas políticas integradas ao manipulador de licenças no Servidor de Licenças Do PlayReady. Essas políticas podem ser direitos, como o direito de reprodução ou restrições, como o Nível mínimo de segurança, o nível de proteção de saída, a expiração após a primeira reprodução e assim por diante.
Observe que uma resposta de licença pode conter várias licenças. Cada licença contém uma e apenas uma Chave de Conteúdo {KID, CK} e um conjunto de políticas associadas.
Quando o cliente recebe a resposta de licença do Servidor de Licenças do PlayReady, ele deve ser capaz de analisar a chave de conteúdo e as políticas enviadas de volta nas licenças recebidas. O Cliente PlayReady deve ser capaz de seguir as políticas enviadas na resposta da licença e reproduzir o conteúdo se todas as políticas obrigatórias forem atendidas ou interromper a reprodução se qualquer uma das políticas obrigatórias não for atendida.
Observação
Se o cliente der suporte ao PlayReady Device Porting Kit v3.0 e superior, o Servidor de Licenças do PlayReady não fornecerá uma licença que exija os direitos de Cópia, Execução ou Leitura.
Para obter mais informações sobre as políticas do PlayReady, consulte As Regras de Conformidade do PlayReady e os Termos Definidos para Regras de Conformidade e Robustez do PlayReady.
Direitos do PlayReady
Os seguintes direitos do PlayReady estão listados nas Regras de Conformidade do PlayReady:
- Reproduza à direita (consulte CR 3.1): para um cliente descriptografar o conteúdo de Áudio/Vídeo do PlayReady (filmes e músicas), renderize-o e passe-o para Saídas.
- Execute à direita (consulte CR 4.1): certo para um cliente descriptografar o conteúdo executável do PlayReady (aplicativos) e executá-lo. Não há mais suporte no PlayReady 3.0 e posterior.
- Leia à direita (consulte CR 5.1): certo para um cliente descriptografar o conteúdo literário do PlayReady (ebooks) e exibi-lo. Não há mais suporte no PlayReady 3.0 e posterior.
Restrições de direitos e outras políticas
As Regras de Conformidade do PlayReady contêm uma lista completa de modificadores corretos (extensões e restrições) que podem se aplicar à licença. Cada um desses modificadores tem várias propriedades:
- Ação – especifica a ação da política (por exemplo, envolver a criptografia HDCP na saída HDMI).
- Opcional – especifica se o cliente deve envolver a ação ou deve tentar envolver a ação (por exemplo, Controle de Saída para Conteúdo de Vídeo Digital Não Compactado 250, consulte CR 3.6.5).
- Deve Entender — especifica se um cliente tem permissão para associar uma licença e descriptografar conteúdo mesmo que não entenda a política. Aplicável a clientes de uma versão inferior (por exemplo, um Cliente PlayReady 2.X) recebendo uma licença, incluindo a política PlayReady introduzida em uma versão futura (por exemplo, um Servidor PlayReady 3.X, consulte CR 2.4).
- Melhor Esforço — outra maneira de especificar se o cliente deve envolver a ação ou deve tentar envolver a ação (por exemplo, Melhor Esforço de Macrovisionamento, consulte CR 2.4).
As seções a seguir listam alguns dos modificadores corretos mais comumente usados.
Política de expiração absoluta
Uma das restrições comuns é a política de expiração de data e hora absoluta. Cada licença pode incluir uma política de expiração de data/hora absoluta. Se estiver presente, o cliente deverá parar de associar essa licença e descriptografar o conteúdo se a data atual for posterior a esse valor.
Um exemplo prático é um usuário em um cliente reproduzindo conteúdo de um serviço de assinatura mensal. O dia de renovação mensal do serviço para esse usuário é o 15º do mês. O usuário inicia a reprodução no dia 2 do mês (2 de novembro de 2017). O Servidor de Licença dará o direito ao usuário até o dia 15 do mês e incluirá uma política de expiração definida como 16/11/2017, 0h00. Sempre que o usuário pagar a taxa de assinatura para o próximo mês, o serviço emitirá outra licença com uma data de validade definida um mês depois.
Essa política é, por definição, uma política Deve Entender e Obrigatória (ou seja, não Melhor Esforço), portanto, um cliente que associa uma licença que inclui essa política DEVE:
- Tenha um Sistema de Relógio Confiável do PlayReady para ter um tempo confiável. Um Relógio Seguro PlayReady ou um Relógio Anti-Reversão PlayReady são duas formas aceitáveis de sistemas de relógio confiáveis playready para clientes PlayReady.
- Tenha este Relógio Confiável do PlayReady definido.
- Seja capaz de analisar e entender a política de expiração na licença.
- Compare a hora atual do Sistema de Relógio Confiável do PlayReady com o valor expiração.
- Não associe a licença se a hora atual estiver além do valor expiração.
Observação
Sempre que um Servidor de Licença define uma política de Expiração Absoluta em uma licença, a Microsoft recomenda fortemente que uma política de Data de Início também seja definida, por motivos de robustez. Consulte Práticas recomendadas para políticas de licença para obter mais detalhes.
Política de Data de Início
Outra restrição comum é a política de data de início. Se ela estiver presente, o cliente não deverá associar essa licença e começar a descriptografar o conteúdo até que a data atual seja posterior a esse valor.
Para modelos de negócios que exigem que o conteúdo seja usado apenas por um período limitado, como em um cenário de aluguel, uma data de término é necessária para indicar quando a licença expira e o conteúdo não pode mais ser reproduzido (por exemplo, o conteúdo só pode ser reproduzido até 17h EST, 15 de maio de 2018). Isso é suficiente para um cenário de aluguel. No entanto, especificar uma data de início com a data de término é uma impedância natural para ataques de reversão de relógio.
Essa política é, por definição, uma política Deve Entender e Obrigatória (ou seja, não Melhor Esforço), portanto, um cliente que associa uma licença que inclui essa política DEVE:
- Tenha um Sistema de Relógio Confiável do PlayReady para ter um tempo confiável. Um Relógio Seguro PlayReady ou um Relógio Anti-Reversão PlayReady são duas formas aceitáveis de sistemas de relógio confiáveis playready para clientes PlayReady.
- Tenha este Relógio Confiável do PlayReady definido.
- Seja capaz de analisar e entender a política Data de Início na licença.
- Compare a hora atual do Sistema de Relógio Confiável do PlayReady com o valor Data de Início.
- Não associe a licença se a hora atual for antes do valor de Hora de Início.
Para obter mais informações, consulte Using BeginDate with EndDate (Usando BeginDate with EndDate)
Expiração após a primeira política de reprodução
Além dos cenários em que o conteúdo pode ser reproduzido dependendo de uma hora de início e hora de término, há também o modelo que especifica por quanto tempo o conteúdo pode ser reproduzido depois que o conteúdo é reproduzido pela primeira vez. A expiração após a primeira política de reprodução, se presente, indica que o cliente deve parar de associar essa licença e descriptografar o conteúdo se o número atual de segundos após o conteúdo ter sido reproduzido pela primeira vez corresponder ao valor nesta política.
Observação
Para o conteúdo que foi comprado para possuir, os usuários esperam que o conteúdo seja reproduzido indefinidamente em seus dispositivos. Os serviços provavelmente emitiriam licenças para esse conteúdo sem expiração. No entanto, como os usuários alteram os dispositivos com frequência e, como cada dispositivo pode alterar a identidade do PlayReady em algum momento (quando uma nova individualização é executada ou quando um dispositivo é completamente reinstalado), os serviços devem estar prontos a qualquer momento para emitir novamente licenças para conteúdo adquirido que foi entregue anteriormente a um usuário ou dispositivo.
Política de nível de segurança
Todos os clientes do PlayReady têm uma propriedade definida em seu Certificado de Cliente de Nível de Unidade chamado Nível de Segurança do Cliente. Quando um Servidor de Licença envia uma licença para um cliente, ele inclui na licença a política MinimumSecurityLevel e define seu valor como 150, 2000 ou 3000. Esse valor significa que a licença pode ser associada e o conteúdo só pode ser descriptografado em clientes que têm esse nível de segurança ou um mais alto.
Consulte a página Nível de Segurança do Cliente para obter mais informações sobre essa política.
Controle de saída para política de conteúdo de vídeo digital não compactada
Um serviço pode querer permitir que um cliente descriptografe e renderize conteúdo, mas restrinja como ele flui para saídas externas, como saídas HDMI. O serviço pode querer fazer isso porque pode haver gravadores conectados ao cabo HDMI, capazes de fazer uma cópia muito boa do conteúdo original.
O PlayReady tem todos os tipos de controles de Proteção de Saída para saídas analógicas, digitais e sem fio. Uma das mais comuns é a política HDCP para saídas HDMI (consulte CR 3.6.5). Dependendo do valor que o Servidor de Licença define para essa política, que pode ser 100, 250, 270, 300 (consulte CR 6.7), o cliente deve tentar se envolver ou deve envolver o HDCP nas saídas HDMI ao reproduzir essas saídas.
Por exemplo, se a licença incluir um controle de saída para conteúdo de vídeo digital não compactado definido como 300 (também conhecido como OPL de Vídeo Digital 300), o cliente DEVERÁ envolver o HDCP na saída HDMI ao reproduzir conteúdo. Se o cliente não puder envolver o HDCP (qualquer versão) em uma saída HDMI, ele terá duas opções:
- Reproduza o conteúdo e bloqueie essa saída. Por exemplo, reproduza em uma tela interna ou em uma saída analógica, mas bloqueie o sinal na saída HDMI.
- Só não reproduza o conteúdo. Se o dispositivo tiver uma tela interna, uma saída analógica e uma saída HDMI, bloquear a reprodução em todas as saídas apenas porque o dispositivo não pode envolver o HDCP na saída HDMI certamente seria uma experiência de usuário abaixo do ideal. O usuário pode perguntar "por que ele não é reproduzido na saída analógica, embora a restrição se aplique apenas à saída HDMI?". No entanto, essa opção é aceitável de uma perspectiva de Conformidade do PlayReady, pois atende às RRs de&cr.
Observe que o HDCP Tipo 1 tem suporte a partir do HDCP versão 2.1, portanto, o envolvimento do HDCP Tipo 1 não será possível em dispositivos que dão suporte apenas ao HDCP 2.0 ou 1.4.
Outras políticas
O PlayReady dá suporte a dezenas, se não centenas de políticas diferentes além daquelas descritas nesta página. Leia as Regras de Conformidade para Produtos PlayReady para obter a definição completa das políticas com suporte.
A tabela a seguir contém um mapa completo das Proteções de Saída definidas nas Regras de Conformidade e nas políticas de servidor de teste correspondentes.
Política | Seção CR |
---|---|
Controle de saída para conteúdo de áudio digital compactado | CRs seção 3.6.2 |
Restrição explícita de saída de áudio digital | CRs seção 3.6.2.8 |
Controle de saída para conteúdo de áudio digital descompactado | Seção CRs 3.6.3 |
Restrição explícita de saída de áudio digital | CRs seção 3.6.3.8 |
Controle de saída para conteúdo de vídeo digital compactado | Seção CRs 3.6.4 |
Controle de saída para conteúdo de vídeo digital descompactado | CRs seção 3.6.5 |
Resolução máxima de decodificação | CRs seção 3.6.5.7.1 |
Restrição de tipo HDCP | Seção CRs 3.6.5.7.2 |
Controle de saída para saídas de televisão analógica | CRs seção 3.6.6 |
Controles de saída estendidos para saídas de televisão analógica CGMS-A | CRs seção 3.6.7.1 |
Controles de saída estendidos para saídas de televisão analógica AGCCS | CRs seção 3.6.7.2 |
Controle de saída para saída do Monitor de Computador Analógico | CRs seção 3.6.8 |
Controle de saída para saída de vídeo de componente analógico | Seção CRs 3.6.9 |
Conteúdo somente de vídeo digital | CRs seção 3.6.11 |
Passando para Saída Desconhecida | CRs seção 3.9.1 |
Passando a resolução restrita para saída desconhecida | CRs seção 3.9.2 |
Especificação XMR
As empresas licenciadas do PlayReady têm acesso a um pacote de documentação mais abrangente que inclui a Especificação de XMR (PlayReady Extensible Media Rights) que descreve precisamente cada uma dessas políticas e a maneira como elas são codificadas em uma licença.