Защита контента в линейном DVB/IPTV-вещании

Защита контента в линейном DVB/IPTV-вещании

Введение

Шифрование контента (в контексте DVB/IPTV чаще используется термин скремблирование) применяется для ограничения доступа к платным телеканалам и видеосервисам.
Вещатели — спутниковые, кабельные и IPTV-провайдеры — инвестируют значительные средства в производство и приобретение контента. Шифрование позволяет им монетизировать этот контент, продавая подписки и контролируя доступ. Оно создает технический барьер, делающий бессмысленным несанкционированное копирование и распространение сигнала без ключей для его расшифровки.

Сегодня шифрование используется не только в линейном телевещании (DVB и IPTV), но и в OTT-сервисах. В OTT за защиту контента отвечают DRM-системы — Widevine, FairPlay, PlayReady и др. Они выполняют ту же функцию, что и системы условного доступа (CAS) в традиционном вещании, однако это уже несколько иной способ распространения контента, поэтому в данной статье не рассматривается.

В DVB- и IPTV-вещании применяются две основные концепции защиты: SimulCrypt и BISS.


SimulCrypt: гибкость и масштабируемость

SimulCrypt — это стандарт ETSI TS 103 197, позволяющий использовать одну или несколько систем условного доступа (CAS) для одного и того же канала. Ключи шифрования здесь динамически меняются, а управление правами осуществляется CAS-системой, которая рассылает ключи легальным абонентам.

SimulCrypt требует развитой инфраструктуры — серверов CAS, генерации ECM/EMM, интеграции с мультиплексорами. Однако он обеспечивает высокую степень надежности и гибкость, позволяя вещателю комбинировать разные CAS и адаптировать систему под бизнес-задачи.


BISS: простое решение для профессиональной среды

BISS (Basic Interoperable Scrambling System) — более простое и легковесное решение, часто применяемое для временных или служебных каналов.
В базовой версии BISS-1 используется статический ключ, неизменный в течение всей трансляции. Это упрощает настройку — ключ можно вручную ввести на обоих концах — и делает систему удобной для передачи сигнала между телекомпаниями, подрядчиками или во время прямых эфиров.
Однако при утечке ключа защита теряет смысл: BISS-1 фактически представляет собой систему «общего секрета», где ключ известен всем участникам. Такая схема защищает только от случайного просмотра, но не от намеренного взлома.

Режим BISS-CA, предусматривавший динамическую смену ключей, не получил широкого распространения. Поэтому на практике под термином BISS почти всегда подразумевается именно упрощённая версия BISS-1.


Сосуществование SimulCrypt и BISS

В современных сетях оба подхода часто используются параллельно.
SimulCrypt применяется для защищённого вещания и подписок конечным пользователям, а BISS — для временных и служебных каналов, где важны скорость и простота настройки.

Иногда BISS-1 используют и для «защиты» потребительского контента, но из-за статического ключа такая схема крайне ненадежна: утечка ключа рано или поздно неизбежна.

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


Как работает SimulCrypt

В архитектуре SimulCrypt участвуют три ключевых компонента: скремблер, мультиплексор и CAS-система, тесно взаимодействующие между собой.

Рисунок 1 - Архитектура DVB SimulCrypt 
(изображение из стандарта ETSI TS 103 197)


Основные элементы системы (см. Рис. 1)

Синие блоки — элементы системы условного доступа (CA):

  • ACG (Access Criteria Generator) — определяет, кто имеет право смотреть контент;
  • EMMG (Entitlement Management Message Generator) — формирует EMM-сообщения с правами доступа для абонентов;
  • ECMG (Entitlement Control Message Generator) — создаёт ECM-сообщения, содержащие ключи для декодирования (Control Words или CW);
  • PDG (Private Data Generator) — генерирует служебные данные (опциональный блок);
  • PDG, CPSIG, CSIG — -формируют дополнительную служебную информацию систем CA для PSI/SI.

Жёлтые блоки — элементы мультиплексора и скремблера:

  • MUXCONFIG — управляет настройками мультиплексора (MUX), однако почти никогда не реализуется на практике;
  • PSIG (Program Specific Information Generator) — создает стандартные PSI-таблицы (например, PAT/PMT);
  • SIG (Service Information Generator) — создаёт SI-таблицы (например, SDT/EIT);
  • SCG (Scrambling Control Group) — управляет процессом шифрования: какие программы и какими ключами защищать
  • CWG (Control Word Generator) — генерирует ключи шифрования (Control Words).
  • MUX — мультиплексор, объединяет все потоки (видео, аудио, PSI/SI, ECM, EMM) в общий транспортный поток MPEG-TS.
  • Scrambler — шифрует (скремблирует) транспортный поток с использованием ключей CW.

CAS-система, как правило, включает серверы ECMG (Entitlement Control Message Generator) и EMMG (Entitlement Management Message Generator), которые обеспечивают генерацию ключей, их рассылку и управление STB. Среди известных производителей CAS — Verimatrix, Irdeto, Secure TV и др.
Следует учитывать, что реализация CAS у разных вендоров может существенно отличаться и не всегда поддерживает весь функционал, описанный в стандартах.

Скремблер может быть реализован как отдельная программа или аппаратный модуль. Реализация скремблеров от разных вендоров, как и CAS-систем, может существенно отличаться, но все они шифруют полезную нагрузку TS-пакетов и устанавливают соответствующий бит в поле Transport Scrambling Control (TSC) заголовка TS-пакета.   Это служит сигналом для декодера о том, что пакет зашифрован и требует для воспроизведения ключа дешифрования. При попытке воспроизвести такой поток без ключей пользователь увидит «чёрный экран» или искажённое изображение. В некоторых реализациях в задачи скремблера может входить также общение с CAS по определенным правилам (протоколу SimulCrypt), получение от нее ключей и модификация PSI/SI-таблиц, в таком случае мультиплексор может и вовсе не вовлекаться в процесс.

Мультиплексор, в общем случае, интегрируется со скремблером и вставляет в поток ECM/EMM-сообщения, полученные от CAS, а также модифицирует PSI/SI-таблицы, например, в случае наличия EMM добаляет CAT-таблицу и создает новые PID в PMT для ECM,  EMM и CAT.
В зашифрованных DVB-потоках всегда присутствуют ECM и периодически EMM-сообщения. В IPTV EMM чаще доставляются по отдельному двунаправленному IP-каналу (out-of-band) по запросу приставки, поэтому в основном потоке передаются только ECM.


Алгоритмы шифрования и их надежность

В DVB и IPTV используются следующие основные алгоритмы шифрования: DVB-CSA1, DVB-CSA2, DVB-CSA3, CISSA (AES). Все они отличаются длиной ключа, а значит, вычислительной сложностью и  стойкостью ко взлому. Чтобы использовать алгоритмы семейства DVB-CSA,  требуется лицензия, что следует учитывать при выборе решения. Сравним приведенные выше алгоритмы в таблице.

Алгоритм шифрования

Длина ключа, бит

Стойкость

Вычислительная сложность

Рекомендация

DVB-CSA1

48 (+16)*

Низкая

Низкая

Только для совместимости с имеющимся парком STB

DVB-CSA2

64

Средняя

Низкая

Рекомендуется для новых систем

DVB-CSA3

128

Высокая

Высокая

AES

128

Высокая

Высокая

 

* - фактически длина ключа составляет 48 бит, т.к. только 48 из 64 уникальны. Если считать с 0, то 3 и 7 байты ключа будут контрольной суммой по модулю 2 предыдущих 3 байт.

На практике оптимальным компромиссом между безопасностью и производительностью считается DVB-CSA2. DVB-CSA1 устарел и не рекомендуется. Есть сообщения о его взломе, поэтому использование его разумно только для поддержки старого парка абонентских устройств. Вычислительная сложность DVB-CSA3 слишком высока и не дает значительных преимуществ, а использование AES в линейном вещании ограничивается IPTV системами.


Особенности скремблера Elecard

Как уже упоминалось ранее, конкретная реализация скремблеров может отличаться среди разных вендоров. Решение Elecard, помимо стандартных функции скремблирования, предоставляет дополнительные возможности, полезные на практике.

  • Выборочное шифрование. Например, шифруется только один TS-пакет из 16. Такой режим существенно снижает вычислительные затраты как на шифрование, так и на дешифрование, что особенно важно для совместимости со старым парком относительно маломощных STB, но при этом обеспечивает достаточную деградацию качества декодированного без ключа изображения.

Рисунок 2 - Выборочное шифрование

  • Гибкий выбор потоков. Можно зашифровать только аудиодорожку или только видео.

  • Поведение при потере связи с ECMG. поддерживается резервирование, при отсутствии резервных ECMG или их недоступности можно задать действие — продолжить шифрование последним ключом или временно снять защиту.

  • Проксирование EMM-сообщений. Позволяет установить всего одно TCP-соединение с EMMG и далее распространять EMM мультикастом по локальной сети. В свою очередь, скремблер способен принимать EMM-сообщения как непосредственно от EMMG по TCP, так и EMM, вещаемые мультикастом. Такая схема позволяет экономить подключения к EMMG, количество которых, как правило, ограничено лицензией

Рисунок 3 - Проксирование EMM-сообщений


Производительность и отказ от ПЛИС

Решение Elecard CodecWorks полностью программное и не требует специализированного аппаратного обеспечения.
Хотя специализированные микросхемы (ПЛИС) отличаются высокой скоростью и энергоэффективностью, для них требуются специализированные драйверы, что ограничивает выбор платформ и ОС. Кроме того, необходима установка физического модуля в сервер, а значит, его производство и поставка, что усложняет логистику и существенно снижает гибкость решения. 
Программные скремблеры Elecard работают на любых x86-серверах, включая виртуальные машины, и обновляются обычным программным патчем. Это еще одно неоспоримое преимущество —обновление программного решения намного проще и дешевле замены устройства или даже смены прошивки. 

Для достижения высокой производительности без использования аппаратных ускорителей применяются векторные инструкции SIMD (AVX2), суть которых сводится к одновременному выполнению нескольких однотипных операций над несколькими порциями данных. Более подробно можно почитать о них в наших статьях:

Используемое нами AVX2 расширение системы команд x86 поддерживается даже процессорами Intel Haswell (с 2013 г.) и AMD Zen (с 2017 г.).
При этом скремблеры работают даже на более старых ЦПУ без поддержки AVX2, но сниженной производительностью.

Для сравнения приведем время шифрования одного и того же файла с включенными и отключенными оптимизациями:

Рисунок 4 - Файл AVC

Или, в пересчете производительности, в Мбит/с на 1 ядро ЦПУ:

Рисунок 5 - UPD AVC

В практическом смысле это означает, что для организации сплошного скремблирования 20 MPTS со средним битрейтом 100 Мбит/с каждый нам понадобится весьма скромный сервер на базе 1 ЦПУ Xeon Silver 4316 (2.3 GHz, 20C/40T):

Рисунок 6 - Сервер на базе CPU  Intel

Либо можно посмотреть в сторону систем на базе процессоров AMD (64 MPTS со средним битрейтом 100 Мбит/с каждый):

Рисунок 7 - Сервер на базе CPU AMD

Компания Elecard протестировала и гарантирует совместимость своих скремблеров с основными CAS-производителями, а также стабильную работу под управлением российских ОС (например, Astra Linux Special Edition 1.8) и на серверах отечественного производства.

 


shmakovАвтор

Дмитрий Шмаков

Ведущий инженер компании Elecard. Работает в сфере видеоанализа с 2021 года. Дмитрий отвечает за работу с крупнейшими клиентами Elecard, такими как Telstra, Globo, Amagi, Innet и др.

 


 

28 октября 2025