Tenho me perguntado como o aluguel de filmes no iTunes funciona do ponto de vista da segurança. Dado que os arquivos “alugados” são realmente baixados para o computador do usuário e em seguida, reproduzido a partir daí, parece que não há como evitar que o usuário salve os arquivos indefinidamente.

É possível que os arquivos sejam armazenados em algum formato proprietário (algo como CSS), mas isso poderia ser facilmente subvertido a longo prazo pela engenharia reversa do código que os reproduz (como aconteceu com o DeCSS) .

Eu ficaria muito feliz se alguém pudesse me indicar algumas referências que analisam este sistema.

Resposta

Os sistemas DRM tendem a funcionar de acordo com uma variação dos mesmos princípios básicos:

  • Os conteúdos são criptografados com um algoritmo de criptografia simétrico, como por exemplo AES-128.
  • A chave de conteúdo, junto com uma descrição legível por máquina dos direitos de uso (como “jogar por 48 horas”), é entregue ao dispositivo do usuário no momento da compra do conteúdo.
  • Esta chave + direitos pacote é frequentemente chamado de “licença” e é criptografado com criptografia de chave pública. Isso implica que o dispositivo do usuário possui a chave privada para descriptografar esta licença.
  • Na reprodução do conteúdo, há necessariamente um “confiável ” pedaço de software executado dentro do aplicativo de reprodução – neste exemplo, iTunes. “Trusted” está entre aspas porque a Apple confia nele, não em você!
  • Este software, às vezes chamado de “agente”, é responsável pela descriptografia e – o que é mais importante – pelo cumprimento dos direitos de uso. Neste exemplo, ele talvez destrua a chave após 48 horas.
  • Os agentes, devido à sua natureza, geralmente vêm fortemente blindados contra ataques para derrotar as tentativas de engenharia reversa: a descompilação produzirá resultados inúteis, depuração torna-se impossível, etc.

Então … Para responder à sua pergunta: sim, o conteúdo e a chave de descriptografia estão no dispositivo (pelo menos por um tempo), mas há “sa máquinas trabalhando contra qualquer tentativa de colocá-los juntos. As pessoas ocasionalmente tiveram sucesso no passado, mas a barreira está ficando cada vez mais alta.

Comentários

  • Duvido que seu último ponto esteja estritamente correto – não importa o nível de ofuscação feito, sem dúvida ainda é possível fazer a engenharia reversa do código com tempo e esforço suficientes. Além disso, durante a depuração " dicas " são sem dúvida removidas do código compilado, a depuração não é de forma alguma impossível sob tais condições.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *