Как расшифровать и воспроизвести содержимое, защищенное CENC, в DASH?

У меня есть клип MPD, который поддерживает CENC, как расшифровать и воспроизвести без использования какого-либо конкретного механизма DRM? Есть ли какой-нибудь алгоритм дешифрования, доступный для расшифровки 128-битного AES CTR? Если да, будет ли он использоваться для дешифрования содержимого MPEG-DASH? некоторые сторонние библиотеки, доступные в сети, такие как NACL,Openssl,crypto++, которые могут выполнять дешифрование AES ctr 128. Могу ли я использовать одну из них для дешифрования содержимого DASH (поддерживается CENC)??

3 ответа

MPEG-CENC - это просто шифрование CES AES-128 в файле ISO BMFF (mp4). Спецификация того, как это применяется к CENC, находится здесь: https://www.w3.org/TR/2014/WD-encrypted-media-20140828/cenc-format.html и https://www.iso.org/ ОБП / щ /# изо: станд: изо-МЭК 23001:-7: изд-1:v1

И хорошее объяснение CTR AES-128 https://en.wikipedia.org/wiki/Block_cipher_mode_of_operation

Для расшифровки вам понадобится ключ, а также вектор инициализации (IV), который использовался для шифрования содержимого. Это доступно из полей senc и tenc в файле mp4. После того, как вы их получите, вам просто нужно просмотреть образцы или фрагменты файла, расшифровать и собрать MP4 (при условии, что вы хотите воспроизвести его).

Как уже упоминалось в инструментах Bento, mp4decrypt приводит пример того, как это сделать: https://github.com/axiomatic-systems/Bento4/blob/master/Source/C%2B%2B/Apps/Mp4Decrypt/Mp4Decrypt.cpp

DASH-видео, защищенные с помощью CENC, могут воспроизводиться с использованием множества различных технологий DRM. Основные факторы, о которых вам нужно заботиться:

  • Используемый проигрыватель должен поддерживать выбранную технологию DRM. Из популярных браузеров Internet Explorer 11 поддерживает PlayReady, а Chrome поддерживает Widevine. Для не браузерных платформ доступны различные сторонние плееры.
  • Видео должно содержать метаданные, которые позволяют технологии DRM распознавать действия, необходимые для дешифрования видео (что наиболее важно, идентификатор ключа шифрования и URL-адрес, с которого его можно получить).
  • Должна быть запущена служба, которая будет предоставлять ключ дешифрования проигрывателю по требованию после проверки того, что пользователь имеет право просматривать видео. Как правило, ключ встроен в структуру данных, называемую лицензией, которая может предоставлять проигрывателю дополнительные данные относительно требований защиты контента (например, "HDCP должен быть включен для воспроизведения этого видео").

Обратите внимание, что для того, чтобы охватить широкий спектр игроков, вам нужно будет одновременно поддерживать несколько технологий DRM.

Некоторые ссылки на технологии DRM вы найдете на странице ссылок на защиту контента DASH-IF.

Обратите внимание, что некоторые браузеры могут также поддерживать технологию DRM "clearKey", которая является поддельной реализацией, которая просто берет ключ дешифрования и использует его напрямую. Если у вас есть ключ дешифрования и видео, вы можете использовать механизм clearKey для воспроизведения вашего видео.

Редактировать: Если у вас есть криптографический ключ, вы можете использовать инструмент mp4decrypt из набора Bento4 для дешифрования файлов фрагментов.

ClearKey через MPEG-CENC и HTML5 Encrypted Media Extensions поддерживается некоторыми браузерами, например, Google Chrome. Другие браузеры могут использовать запасной вариант для расшифровки, например, используя Flash.

MPEG-CENC, использующий Clearkey в HTML5, а также Flash, показан на этом демонстрационном веб-сайте http://www.dash-player.com/demo/drm-and-protection/

Другие вопросы по тегам