Partilhar 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 a Exclusão Segura do PlayReady, as operações a seguir são possíveis.

Os provedores de serviços podem rastrear 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 de 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 um fluxo de Exclusão Segura.

secure delete

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

Em seguida, o PlayReady armazena a licença no armazenamento de dados (HDS, Armazenamento de Dados de Hash), juntamente com um registro do blob de sessão de licença, que é composto por um identificador de sessão (SessionId) e um ou mais KIDs (identificadores de chave). Quando o aplicativo ou 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 armazenamento de dados sem 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 sem sinal que contém uma SessionId codificada em base 64 para o aplicativo (ou cliente).

Por fim, depois que o cliente recebe a resposta Exclusão Segura, o PlayReady valida que o SessionId contido 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.