# Criptografia DRM de Arquivos


O Kinescope tem criptografia DRM integrada de arquivos (MPEG-CENC, Apple FairPlay, Google Widevine) para proteger vídeos contra download não autorizado. O vídeo criptografado não pode ser baixado ou reproduzido mesmo após ser salvo. O DRM bloqueia downloads via plugins de navegador e gravação de tela em dispositivos móveis.

[Видео Kinescope]

<div id="kinescope-widget-chapters" data-id="9fc0d644-ff07-4237-b829-078bb4942a84"></div>
<script src="https://widgets.kinescope.io/latest/loader.js"></script>

## Para quem é este artigo

* **Criadores de cursos** — precisam proteger materiais educacionais contra download e gravação de tela
* **Proprietários de conteúdo premium** — precisam de proteção máxima de vídeo contra pirataria
* **Desenvolvedores** — precisam integrar DRM com um backend de autorização para controle de acesso
* **Usuários do plano Super** — precisam ativar a criptografia DRM para projetos

* Downloads via plugins de navegador (por exemplo, SaveFrom) e programas separados (VLC, ffmpeg) são bloqueados.
* No iOS e Android, bem como em navegadores para macOS e Windows, é impossível tirar uma captura de tela ou gravar a tela ao reproduzir um vídeo.


## Importante sobre criptografia

A criptografia está incluída no plano **Super** e está disponível nas configurações do projeto (o recurso está desativado por padrão). Após ativar:

* A criptografia se aplica a todos os arquivos de mídia existentes e novos no projeto (incluindo vídeos dentro de playlists). As playlists são catálogos de vídeo — não é necessário ativá-las separadamente.
* A criptografia do projeto leva algum tempo, geralmente menos de um dia. Durante o processo, os arquivos permanecem acessíveis para os espectadores.

> **Информация:**

A criptografia só pode ser desativada pelo chat de suporte na interface do Kinescope.



## **DRM e controle de acesso**

A criptografia DRM protege o arquivo tecnicamente: bloqueia downloads e gravação de tela. Mas se você precisar controlar **quem pode assistir ao vídeo** com base nas regras do seu sistema (cursos, assinaturas, funções), use um **backend de autorização**.

**Como funcionam juntos:**

- **DRM** protege o arquivo de downloads não autorizados e gravação de tela
- **Backend de autorização** verifica os direitos de acesso: permite ou nega a visualização com base nas suas regras (curso adquirido, assinatura ativa, função apropriada existe)

Quando um usuário tenta assistir a um vídeo com DRM e um backend de autorização:

1. Seu site passa o identificador do usuário para o player via o parâmetro `drmauthtoken`
2. O Kinescope contata seu backend para verificar o acesso
3. Seu backend verifica as regras (curso, assinatura, função) e responde: **200** (permitir) ou **403** (negar)
4. Se o acesso for concedido, o DRM emite uma chave de descriptografia e o vídeo é reproduzido

> **Quando você precisa de um backend de autorização:** Se quiser restringir o acesso ao vídeo por cursos, assinaturas, funções ou outras regras em seu sistema. Veja a documentação de [Backend de Autorização para Controle de Acesso ao Vídeo](https://docs-br.kinescope.com/developer-guides/authorization-backend/) para detalhes de configuração.

### **Compatibilidade de DRM**

* **Suportado:** Navegadores modernos com [Encrypted Media Extensions (EME)](https://www.w3.org/2017/09/pressrelease-eme-recommendation.html.en).
* **Não suportado:**
  * **Desktop:** Firefox ESR — os vídeos não são reproduzidos.
  * **Android:** UC Browser (notifica sobre o problema), Firefox e Firefox Focus (não mostram notificações).
  * **Modo anônimo no Chrome para Android:** A partir da versão 62 do Chrome, o suporte ao Widevine no modo anônimo está desativado (mais do Google via [este link](https://developer.chrome.com/blog/media-updates-in-chrome-62)). O player do Kinescope, como qualquer outro player baseado em MSE/EME, não poderá reproduzir streams protegidos por DRM.

## **Instruções passo a passo**

> **Информация:**

A ativação da criptografia está disponível apenas para usuários com direitos de Administrador.



1. No [catálogo](https://app.kinescope.io/video), passe o mouse sobre um nome de projeto e selecione **Configurações do projeto** no menu de contexto.

   ![Abrindo as configurações do projeto para ativar o DRM](images/cp-drm-project-01.webp)
2. Nas configurações, clique em **Ativar criptografia**, revise os avisos e confirme a ação.

   ![Ativando a criptografia nas configurações do projeto](images/cp-drm-enable-01.webp)
3. Aguarde a conclusão do processo. O progresso pode ser acompanhado nas configurações do projeto.
4. Verifique as configurações de incorporação e SSL. Certifique-se de que:
   * O código de incorporação contém o parâmetro encrypted-media e é copiado do Kinescope. Se você usa um CMS com um editor integrado, verifique o código na página após publicar, não no próprio editor.
   * O site usa o protocolo seguro HTTPS (com certificado SSL e TLS). Se usar um LMS ou criador de sites, peça a eles instruções de configuração de HTTPS ou pesquise em sua base de conhecimento.

### **Código de incorporação de exemplo para um player com DRM**

**Variante básica (apenas DRM):**

```html
<iframe
  src="https://kinescope.io/embed/pcFNnQGsD59CMKte2SQQaz"
  width="640"
  height="360"
  frameborder="0"
  allow="autoplay; fullscreen; picture-in-picture; encrypted-media;"
></iframe>
```

**Com backend de autorização (DRM + controle de acesso):**

Se você usar um backend de autorização para controle de acesso, passe o identificador do usuário via o parâmetro `drmauthtoken`:

```html
<iframe
  src="https://kinescope.io/embed/pcFNnQGsD59CMKte2SQQaz?drmauthtoken=${user_id}"
  width="640"
  height="360"
  frameborder="0"
  allow="autoplay; fullscreen; picture-in-picture; encrypted-media;"
></iframe>
```

Você pode usar `user_id`, um token JWT ou qualquer outro identificador que seu backend possa verificar como token. Veja a documentação de [Backend de Autorização para Controle de Acesso ao Vídeo](https://docs-br.kinescope.com/developer-guides/authorization-backend/) para detalhes de configuração.

## **Se os vídeos incorporados não reproduzem**

Verifique:

1. O código de incorporação está correto — use o código original do painel de controle do Kinescope.
2. Existe um certificado SSL — **é obrigatório** para o DRM funcionar.
3. HTTPS está presente no site — verifique as configurações do seu hospedeiro ou criador de sites para configuração de SSL/HTTPS.
4. O navegador do espectador (Chrome é recomendado).

Se algo não funcionar, acesse o chat de suporte na interface do Kinescope.

## Perguntas frequentes

{{< faq >}}
{{< faq-item q="Se eu ativar o DRM em todos os projetos atuais, precisarei reincorporar tudo no meu site ou alterar o código do player?" >}}
Não são necessárias alterações. Todas as alterações terão efeito automaticamente; os vídeos serão acessíveis nos mesmos links.
{{< /faq-item >}}

{{< faq-item q="Playlists e criptografia: preciso ativar alguma coisa separadamente?" >}}
Não. Uma playlist é um catálogo de vídeo; os arquivos de mídia do projeto são criptografados. Vídeos em uma playlist do mesmo projeto são reproduzidos com DRM assim como via link direto. Não é necessário ativar a criptografia separadamente para uma playlist — mover uma playlist para outro projeto não altera a criptografia dos próprios vídeos: apenas os arquivos de mídia do projeto ao qual pertencem são criptografados.
{{< /faq-item >}}

{{< faq-item q="Preciso adicionar o parâmetro encrypted em todos os lugares após ativar o DRM para os projetos atuais?" >}}
Não é necessário adicionar nada. Este parâmetro já está no código de incorporação.

![O parâmetro encrypted-media no código de incorporação](images/cp-drm-embed-01.webp)
{{< /faq-item >}}
{{< /faq >}}

## O que fazer a seguir?

1. **[Configurações de arquivos de mídia](https://docs-br.kinescope.com/catalog-and-video-management/media-file-settings/)** — configurando privacidade e acesso
2. **[Restringir acesso por domínio](https://docs-br.kinescope.com/catalog-and-video-management/media-file-settings/#embedding-settings)** — permita a incorporação apenas em determinados sites
3. **[Configurar backend de autorização](https://docs-br.kinescope.com/developer-guides/authorization-backend/)** — controle o acesso ao vídeo pelas suas regras (cursos, assinaturas, funções)
4. **[Adicionar marcas d'água](https://docs-br.kinescope.com/content-protection/watermarks/)** — proteja adicionalmente o conteúdo contra vazamentos

Ainda tem dúvidas? Escreva para o chat de suporte na interface do Kinescope — nossos especialistas vão ajudá-lo!

