Partilhar via


Parada Segura do PlayReady

Introduzido no PlayReady versão 3.0, o PlayReady Secure Stop é um recurso que fornece os meios para um dispositivo PlayReady afirmar com confiança a um serviço de streaming de mídia que a reprodução de mídia parou para qualquer conteúdo específico. Esse recurso garante que seus serviços de streaming de mídia forneçam relatórios e imposição precisos de limitações de uso em dispositivos diferentes para uma determinada conta.

Visão geral da Parada Segura

Um evento Secure Stop é relatado a um Servidor de Parada Segura pelo cliente quando a reprodução de mídia é interrompida, no final da mídia ou porque o usuário interrompeu a apresentação de mídia em algum lugar no meio. Quando um evento Secure Stop é relatado e, no momento em que o evento Secure Stop é gravado, o Cliente PlayReady garante que a chave de conteúdo seja apagada da memória. Uma Parada Segura também é relatada quando a sessão anterior termina inesperadamente (por exemplo, devido a uma falha de sistema ou aplicativo).

Observação

A Parada Segura aplica-se apenas a licenças não persistentes.

Imagem animada mostrando Solicitações de Licença entre dispositivos e o Serviço de Licença, bem como Dispositivos e o Serviço de Parada Segura

Há dois cenários principais para enviar um desafio de Parada Segura:

  • Quando a reprodução de mídia é interrompida no final ou porque o usuário interrompeu a apresentação de mídia em algum lugar no meio.
  • Quando a sessão anterior é encerrada inesperadamente (por exemplo, devido a uma falha no sistema ou no aplicativo). O aplicativo precisará consultar, na inicialização ou desligamento, se as sessões de Parada Segura pendentes e enviar desafios separados de qualquer outra reprodução de mídia.

Para obter informações sobre a Parada Segura em aplicativos UWP, consulte a seção Adicionar parada segura no artigo drm do PlayReady .

Parada segura 2

A partir do PlayReady versão 4.2, o PlayReady Secure Stop 2 fornece mais segurança aplicando a funcionalidade de Parada Segura no cliente no TEE (Ambiente de Execução Confiável) no Nível de Segurança 3000.

Um serviço pode usar o recurso SecureStop para impor a reprodução em vários clientes que pertencem a uma mesma conta de usuário. Dependendo da configuração de um cliente específico nessa conta de usuário, o serviço receberá mensagens ligeiramente diferentes do cliente.

A tabela a seguir mostra a lógica do Aplicativo de Servidor em diferentes versões de Nível de Segurança do Cliente e Parada Segura.

Versão do cliente Lógica do servidor SecureStop Robustez
PlayReady versão 2.0+
SL2000
O servidor não recebe nenhuma mensagem SecureStop do cliente. Use a lógica do aplicativo para fazer isso. Baixo
PlayReady versão 3.0+
SL3000 (exemplo: aplicativo Windows 10)
O servidor recebe uma mensagem SecureStop1 do cliente.
A robustez dessa mensagem contra ataques é maior do que a lógica de aplicativo simples.
Médio
PlayReady versão 4.2+
SL3000
O servidor recebe uma mensagem SecureStop2 do cliente. Uma mensagem secureStop2 mal-intencionada desse cliente exigiria um ataque no TEE (Ambiente de Execução Confiável) do cliente.
A robustez dessa mensagem contra ataques é maior que SecureStop1.
Alto

Para aproveitar o recurso Parada Segura 2, o aplicativo Servidor deve habilitar o recurso da seguinte maneira:

  • Defina a propriedade SecureStop2AESKey na classe MediaLicense ao emitir uma licença com o Secure Stop. (Isso pode ser feito independentemente de o cliente dar suporte ou não à Parada Segura 2.)
  • Crie uma classe que implemente a interface ISecureStop2Handler (semelhante a qualquer outro manipulador), de modo que, para qualquer KID determinado, ela retorne a mesma chave que foi usada ao definir a propriedade SecureStop2AESKey em um MediaLicense com esse KID.
  • Depois de chamar GetSecureStopData, consulte a propriedade SecureStop2VerifiedSession na classe SecureStopDataChallenge. Se ele estiver definido como Guid.Empty, o cliente enviará uma mensagem SecureStop1. Se ele estiver definido como qualquer outro Guid, o cliente enviará uma mensagem SecureStop2. O Guid retornado é a ID da sessão única dentro do desafio SecureStop2 que pode ser verificada como não mal-intencionada (supondo que o TEE (Ambiente de Execução Confiável) do cliente não tenha sido atacado com êxito).

Confira também

Servidor de Parada Segura