O que é gerenciamento de direitos digitais (DRM)?
O gerenciamento de direitos digitais usa criptografia, licenciamento, autenticação e políticas de reprodução para controlar o acesso a conteúdo digital. Os sistemas de DRM podem restringir como softwares, vídeos, áudios ou outras obras protegidas são usados e distribuídos.
Como funciona o gerenciamento de direitos digitais (DRM)
Para vídeo em streaming, o DRM tem três partes que cooperam entre si. Um empacotador criptografa a mídia codificada com uma chave de conteúdo e grava uma sinalização que identifica a chave pelo seu ID. Um serviço de licenças, operado pelo provedor de conteúdo ou em seu nome, decide se um determinado cliente pode receber essa chave e sob quais condições, como um prazo de validade, um nível mínimo de segurança do cliente ou uma proteção de saída obrigatória. Um módulo de descriptografia de conteúdo (CDM) fornecido pelo navegador ou pela plataforma do dispositivo obtém a licença, descriptografa a mídia e aplica essas condições. No navegador, a API Encrypted Media Extensions (EME) conecta as partes: a página repassa mensagens entre o CDM e o serviço de licenças. Determinar se um espectador tem direito de acesso não é algo que o sistema de DRM faz por conta própria. A especificação EME deixa a autenticação e a autorização a cargo da aplicação, e a documentação do Widevine descreve um proxy operado pelo provedor que valida cada solicitação de licença e adiciona regras de negócio antes que o serviço de licenças responda. O DRM também responde a uma questão diferente da tratada pela criptografia de transporte: nas palavras das diretrizes do DASH-IF, o HTTPS protege apenas o enlace de transporte e não substitui um sistema de DRM.
Informações essenciais
- Um único sistema de DRM pode alcançar todos os dispositivos? Não. EME é uma API comum para descobrir um sistema de proteção e se comunicar com ele; ela não define nenhum sistema de DRM nem protocolo de licenciamento, e o único sistema que toda implementação deve incluir é o Clear Key. O sistema comercial presente depende da plataforma: a matriz de suporte do Shaka Player lista Widevine no Chrome e no Firefox, Widevine e PlayReady no Edge baseado em Chromium e apenas FairPlay no Safari. A Microsoft afirma que o Edge oferece suporte ao PlayReady apenas no Windows 10 e em versões posteriores, e a própria tabela de plataformas do Widevine indica que o Safari para desktop e a Apple TV não têm suporte. Segundo essa matriz, Widevine e FairPlay, em conjunto, estão presentes nos quatro navegadores, e PlayReady é uma segunda opção no Edge para Windows. Em celulares, a tabela do Widevine lista o Android como compatível, e a lista de recursos HLS do Shaka Player limita o FairPlay ao Safari no macOS e no iOS. Portanto, um serviço que precisa reproduzir conteúdo em todos os principais navegadores necessita de licenças de mais de um sistema para o mesmo conteúdo, o que costuma ser chamado de multi-DRM.
- A criptografia HLS com AES-128 ou a criptografia Clear Key é DRM? Não no sentido normalmente exigido por uma licença de conteúdo. Com
METHOD=AES-128no HLS e o formato de chave padrãoidentity, a playlist indica uma URI da qual o player baixa a chave como um arquivo bruto de 16 bytes. Assim, todo cliente que consegue acessar essa URI tem a própria chave, e a proteção depende inteiramente do controle de acesso à URL da chave. O sistema Clear Key da EME também usa chaves não criptografadas, e o projeto Shaka Player o descreve como uma ferramenta de depuração que não oferece segurança real para o conteúdo. Nenhum dos dois inclui um cliente com segurança reforçada que mantenha a chave fora do alcance da aplicação ou imponha condições de reprodução. - Por que um vídeo protegido é reproduzido em um dispositivo, mas falha ou é reproduzido apenas em baixa resolução em outro? Porque uma licença pode exigir mais do que o dispositivo oferece. O PlayReady, por exemplo, distingue clientes SL2000 protegidos por software de clientes SL3000 que mantêm as chaves e o vídeo descriptografado dentro de um ambiente de execução confiável em hardware; um servidor de licenças pode fornecer resoluções diferentes aos dois, e um cliente recusa uma licença cujo nível mínimo de segurança ele não atende. Uma licença também pode exigir proteção de saída: o exemplo da Microsoft é um decodificador de TV que não reproduz conteúdo por HDMI em um televisor sem HDCP, e a EME informa essa situação pelo status de chave
output-restricted. O empacotamento também pode ser o obstáculo, já que a EME observa que diferentes esquemas de criptografia geralmente são incompatíveis entre si. Teste na classe de dispositivos menos segura que você pretende atender e ofereça uma versão de mídia cujos requisitos possam ser atendidos por essa classe. - O que acontece quando não é mais possível obter uma licença? A reprodução falha quando o dispositivo não tem nenhuma licença utilizável, mesmo que os arquivos estejam intactos, porque a chave chega apenas dentro de uma licença. A EME exige suporte apenas a sessões temporárias, cuja licença e cujas chaves nunca são armazenadas e são destruídas quando a sessão é encerrada. Por isso, reiniciar a reprodução depois disso implica uma nova solicitação ao serviço de licenças. Licenças persistentes são diferentes: a licença é armazenada e a sessão pode ser carregada novamente mais tarde, o que serve de base para a reprodução offline. O conteúdo licenciado dessa forma pode continuar sendo reproduzido enquanto a licença armazenada permanecer no dispositivo e seus termos ainda permitirem a reprodução. A EME torna opcionais as licenças persistentes, e o projeto Shaka Player observa que o armazenamento de licenças depende do suporte do navegador. Uma chave cujo prazo de validade já passou é indicada como
expirede não pode mais descriptografar o conteúdo. Portanto, manter os arquivos criptografados não basta por si só: o acesso a longo prazo depende de o serviço de licenças continuar disponível ou de uma licença armazenada que ainda permita a reprodução.
Quando o gerenciamento de direitos digitais (DRM) é relevante
Adicione DRM ao distribuir conteúdo sujeito a restrições contratuais de acesso ou reprodução. O suporte dos dispositivos, a disponibilidade de licenças e os erros na verificação de direitos de acesso podem impedir usuários autorizados de reproduzir mídias que, fora isso, são válidas.
Fontes
- Encrypted Media Extensions do W3C (escopo, Clear Key, robustez, status de chaves, tipos de sessão)
- README do Shaka Player: matriz de suporte a DRM por navegador e plataforma
- Visão geral do DRM Google Widevine (plataformas compatíveis, proxy de licenças)
- Apple FairPlay Streaming
- Microsoft PlayReady: nível de segurança (clientes SL2000 e SL3000)
- Microsoft PlayReady: níveis de proteção de saída
- Microsoft Edge: dados do usuário e privacidade, DRM PlayReady (com suporte apenas no Windows 10 e em versões posteriores)
- RFC 8216 (HTTP Live Streaming), seção 5.1: estrutura dos arquivos de chave (EXT-X-KEY e KEYFORMAT são definidos na seção 4.3.2.4)
- Pontos de interoperabilidade do DASH-IF v4.3, capítulo 7: proteção e segurança do conteúdo