Compartilhar via


Exclusão segura do PlayReady

Introduzido no PlayReady versão 4.0, o PlayReady Secure Delete é um recurso que permite que os provedores de serviços recebam confirmação segura quando uma licença persistente é excluída pelo aplicativo no cliente. Anteriormente, quando uma licença era excluída, os provedores de serviços não eram notificados quando a exclusão era concluída. Com o PlayReady Secure Delete, as operações a seguir são possíveis.

Os provedores de serviços podem acompanhar quais licenças estão armazenadas no momento e quais licenças foram excluídas, em um determinado computador cliente. Os provedores de serviços podem emitir um número específico de licenças persistentes para um cliente e acompanhar a contagem de licenças no computador desse cliente. O recurso Exclusão Segura também atende ao requisito de especificação do EME (Encrypted Media Extensions), conforme definido em setembro de 2017, que especifica que um registro de exclusão de licença deve ser enviado ao servidor após a exclusão da licença.

A figura a seguir ilustra o fluxo de exclusão segura.

exclusão segura

Antes da exclusão segura ocorrer, o aplicativo ou cliente primeiro cria uma instância de um CDM (Módulo de Descriptografia de Conteúdo) do PlayReady e adquire uma licença persistente do Servidor (Etapas 1 a 7 na figura acima).

Em seguida, o PlayReady armazena a licença no armazenamento de dados (HDS, Armazenamento de Dados Hashed), juntamente com um registro do bloco de sessão de licença, que é composto por um identificador de sessão (SessionId) e um ou mais identificadores de chave (KIDs). Quando o aplicativo ou o cliente iniciar uma solicitação de exclusão de licença, ele chamará as APIs apropriadas para remover as licenças associadas ao KID do armazenamento de dados. Durante um processo de remoção de licença de Exclusão não Segura, o PlayReady remove as licenças do repositório de dados sem realizar mais ações. Usando a Exclusão Segura, o PlayReady não apenas remove as licenças associadas ao KID do armazenamento de dados, mas também gera um desafio de Exclusão Segura que contém SessionId e KID(s) (Etapas 12-13 na figura acima).

Em seguida, o aplicativo ou cliente envia o desafio Exclusão Segura para o Servidor de Exclusão Segura, que processa o desafio.

Depois de processar o desafio Exclusão Segura, o Servidor de Exclusão Segura envia uma resposta de Exclusão Segura não criptografada e não assinada que contém um ID de Sessão codificado em base 64 para o aplicativo (ou cliente).

Por fim, depois que o cliente recebe a resposta Exclusão Segura, o PlayReady valida que a SessionId contida na resposta Exclusão Segura corresponde à SessionId usada para gerar o desafio Exclusão Segura. Se a validação for bem-sucedida, o PlayReady removerá o registro da sessão de licença do armazenamento de dados.