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

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

+5
27 нояб. '14 в 11:34
источник поделиться
3 ответа

MPEG-CENC - это просто шифрование CTR AES-128 в файле ISO BMFF (mp4). Спецификация того, как это применяется к CENC, приведена здесь: https://www.w3.org/TR/2014/WD-encrypted-media-20140828/cenc-format.html а также https://www.iso.org/obp/ui/#iso:std:iso-iec:23001:-7:ed-1:v1

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

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

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

+8
28 июн. '15 в 22:46
источник

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

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

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

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

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

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

+5
28 нояб. '14 в 10:57
источник

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

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

-1
28 нояб. '14 в 13:35
источник

Посмотрите другие вопросы по метке или Задайте вопрос