# DRM-шифрование файлов


В Kinescope встроено DRM-шифрование файлов (MPEG-CENC, Apple FairPlay, Google Widevine) для защиты видео от несанкционированного скачивания. Зашифрованное видео невозможно скачать или проиграть даже после загрузки. DRM блокирует скачивание через плагины браузеров и запись экрана на мобильных устройствах.

## Кому подходит эта статья

* **Создателям курсов** — нужно защитить обучающие материалы от скачивания и записи экрана
* **Владельцам премиум-контента** — требуется максимальная защита видео от пиратства
* **Разработчикам** — нужно интегрировать DRM с авторизационным бэкендом для контроля доступа
* **Владельцам аккаунтов на тарифе «Супер»** — требуется включить DRM-шифрование для проектов

* Скачивание через плагины браузеров (например, SaveFrom) и отдельных программ (VLC, ffmpeg) заблокировано.
* На iOS и Android, а также в браузерах для macOS и Windows, невозможно сделать скриншот или записать экран при воспроизведении видео.


## Важное о шифровании

Шифрование включено в тариф **«Супер»** и доступно в настройках проекта (по умолчанию функция отключена). После включения:

* Шифрование распространяется на все существующие и новые медиафайлы проекта (в том числе видео внутри плейлистов). Плейлисты — каталоги видео, отдельно их включать не нужно.
* Шифрование проекта занимает время, обычно менее суток. В процессе файлы остаются доступными для зрителей.
* Останется возможность скачать только оригиналы видео в разделе **«Файлы».** Скачать версии видео в разных качествах (например, 1080р) из раздела **«Файлы»** или по прямой ссылке в формате video_URL/quality будет нельзя.

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

Отключить шифрование можно только через [поддержку](https://t.me/kinescope_bot).



## **DRM и контроль доступа**

DRM-шифрование защищает файл технически: блокирует скачивание и запись экрана. Но если вам нужно контролировать, **кто может смотреть видео** на основе правил вашей системы (курсы, подписки, роли), используйте **авторизационный бэкенд**.

**Как это работает вместе:**

- **DRM** защищает файл от несанкционированного скачивания и записи экрана
- **Авторизационный бэкенд** проверяет права доступа: разрешает или запрещает просмотр на основе ваших правил (куплен ли курс, активна ли подписка, есть ли нужная роль)

Когда пользователь пытается посмотреть видео с DRM и авторизационным бэкендом:

1. Ваш сайт передаёт идентификатор пользователя в плеер через параметр `drmauthtoken`
2. Kinescope обращается к вашему бэкенду за проверкой доступа
3. Ваш бэкенд проверяет правила (курс, подписка, роль) и отвечает: **200** (разрешить) или **403** (запретить)
4. Если доступ разрешён, DRM выдаёт ключ дешифровки, и видео воспроизводится

> **Когда нужен авторизационный бэкенд:** Если вы хотите ограничить доступ к видео по курсам, подпискам, ролям или другим правилам вашей системы. Подробнее о настройке читайте в документации [«Авторизационный бэкенд для контроля доступа к видео»](https://docs.kinescope.ru/instrukcii-dlya-razrabotchikov/avtorizatsionnyy-bekend-dlya-kontrolya-dostupa-k-video/).

### **Совместимость DRM**

* **Поддерживаются** современные браузеры с [Encrypted Media Extensions (EME)](https://www.w3.org/2017/09/pressrelease-eme-recommendation.html.en).
* **Не поддерживаются**:
  * **Десктоп:** Firefox ESR — видео не воспроизводятся.
  * **Android:** UC Browser (уведомляет о проблеме), Firefox и Firefox Focus (не показывают уведомления).
  * **Режим инкогнито в Chrome для Android:** С версии Chrome 62, поддержка Widevine в режиме инкогнито отключена (подробнее от Google по [ссылке](https://developer.chrome.com/blog/media-updates-in-chrome-62)). Плеер Kinescope, как и любой другой проигрыватель на базе MSE/ EME, не сможет воспроизводить потоки, защищенные DRM.
## **Пошаговая инструкция**

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

Включение шифрования доступно только для пользователей с правами Администратора.



1. В [каталоге](https://app.kinescope.io/video) наведите курсор на название проекта и выберите **«Настройки проекта»** в контекстном меню.

   ![Открытие настроек проекта для включения DRM](images/zk-drm-proekt-01.webp)
2. В настройках нажмите **«Включить шифрование»**, ознакомьтесь с предупреждениями и подтвердите действие.

   ![Включение шифрования в настройках проекта](images/zk-drm-proekt-02.webp)
3. Ожидайте завершения процесса. Прогресс можно отслеживать в настройках проекта.
4. Проверьте настройки встраивания и SSL. Убедитесь, что:
   * Код встраивания содержит параметр encrypted-media и скопирован из Kinescope. Если вы используете CMS со встроенным редактором, проверяйте код на странице после публикации, а не в самом редакторе.
   * Сайт использует защищённый протокол HTTPS (с SSL-сертификатом и TLS). Если вы используете LMS или конструктор сайтов, запросите у них инструкцию по настройке HTTPS или поищите в их в базе знаний


### **Пример кода для встраивания плеера с DRM**

**Базовый вариант (только DRM):**

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

**С авторизационным бэкендом (DRM + контроль доступа):**

Если вы используете авторизационный бэкенд для контроля доступа, передайте идентификатор пользователя через параметр `drmauthtoken`:

```markup
<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>
```

В качестве токена можно использовать `user_id`, JWT-токен или другой идентификатор, который ваш бэкенд сможет проверить. Подробнее о настройке авторизационного бэкенда читайте в документации [«Авторизационный бэкенд для контроля доступа к видео»](https://docs.kinescope.ru/instrukcii-dlya-razrabotchikov/avtorizatsionnyy-bekend-dlya-kontrolya-dostupa-k-video/).

## **Если встроенные видео не воспроизводятся**

Проверьте:

1. Правильность кода встраивания — используйте оригинальный код из панели управления Kinescope.
2. Наличие SSL-сертификата — **он обязателен** для работы DRM.
3. Наличие протокола HTTPS на сайте. Например,[настройка HTTPS](https://help-ru.tilda.cc/https) в Tilda.
4. Браузер зрителя (рекомендуется Chrome).

Если что-то не получается, [напишите в поддержку](https://t.me/kinescope_bot).

## Частые вопросы

{{< faq >}}
{{< faq-item q="Если включить DRM на всех текущих проектах, мне придется перевстраивать всё на сайте, менять код плеера?" >}}
Ничего менять не нужно. Все изменения вступят в силу автоматически, видео будут доступны по прежним ссылкам.
{{< /faq-item >}}

{{< faq-item q="Плейлисты и шифрование: нужно ли что-то включать отдельно?" >}}
Нет. Плейлист — это каталог видео, шифруются сами медиафайлы проекта. Видео в плейлисте из этого же проекта воспроизводятся с DRM так же, как по прямой ссылке. Отдельно включать шифрование для плейлиста не нужно — перенос плейлиста в другой проект не меняет шифрование самих видео: шифруются только медиафайлы того проекта, в котором они лежат.
{{< /faq-item >}}

{{< faq-item q="Нужно ли везде добавлять параметр encrypted после включения DRM для текущих проектов?" >}}
Ничего добавлять не нужно. Этот параметр изначально есть во вставке кода.

![Параметр encrypted-media в коде встраивания](images/zk-drm-parametr-01.webp)
{{< /faq-item >}}
{{< /faq >}}

## Что дальше?

После включения DRM-шифрования рекомендуем:

1. **[Основные настройки медиафайлов](https://docs.kinescope.ru/katalog-i-upravlenie-video/osnovnye-nastroyki-mediafaylov/)** — настройка конфиденциальности и доступа
2. **[Ограничить доступ по доменам](https://docs.kinescope.ru/katalog-i-upravlenie-video/osnovnye-nastroyki-mediafaylov/#настройка-встраивания)** — разрешите встраивание только на определённых сайтах
3. **[Настроить авторизационный бэкенд](https://docs.kinescope.ru/instrukcii-dlya-razrabotchikov/avtorizatsionnyy-bekend-dlya-kontrolya-dostupa-k-video/)** — контролируйте доступ к видео по вашим правилам (курсы, подписки, роли)
4. **[Добавить водяные знаки](https://docs.kinescope.ru/zashita-kontenta/dinamicheskie-i-staticheskie-vodyanye-znaki/)** — дополнительно защитите контент от утечек

Остались вопросы? Напишите в [чат поддержки](https://t.me/kinescope_bot) — специалисты помогут!

