ГОСТ Р 56170-2014
11.6.4.5 Требования к дескремблированию
ИнтерфейсAPI СА должен поддерживать запуск и остановку процесса дескремблироваиия служб
или компонентов служб, которые получают доступ к низкоуровневымAPI. таким какAPI фильтра секции
в соответствии с требованиями технической спецификации DAVIC [7].
Интерфейс API СА должен обеспечивать формирование отчета о возможности (или невозмож
ности) дескремблирования транспортного потока в случаях отсутствия доступа модуля NIU к модулю
безопасности или в случае несовпадения скремблирующих алгоритмов.
Интерфейс API САдолжен поддерживать процедуры проверки возможности дескремблирования
определенной службы или события в случаях, когда модуль имеет для этой цели необходимые ресур сы.
Служба или событие могут находиться или могут не находиться в процессе обработки. Интерфейс API
СА должен позволить системе СА накладывать ограничения на доступ к этим данным.
ИнтерфейсAPI САдолжен обеспечивать поиск списка всех прав пользователя. Права могут быть
перечислены отдельно для каждого сочетания системы СА и модуля безопасности. API может приме
нять ограничения доступа, налагаемые системой СА. на эти данные.
11.6.4.6 Модель объекта API СА и состояния API СА
11.6.4.6.1 Модель объекта
Модель объекта включает следующие основные части.
- класс CAModule. который является абстракцией физического модуля СА. Он обеспечивает
функции запроса о правах и получения соответствующей информации;
- класс DescramblerProxy. реализующий интерфейс ResourceProxy для управления ресурсами;
- объект DescramblerProxy. обеспечивающий функцию дескремблирования одной службы;
- классы TransportStream. Service (служба) и ElementaryStream от API компонентов MPEG, ис
пользующиеся в качестве параметров в методах классов CAModule и DescramblerProxy;
- объект CAModuleManager. управляющий модулями СА и отслеживающий доступные модули в
STU. При реализации объекта CAModuleManager автоматически создает экземпляр CAModule и реги
стрирует его. когда модуль вставляется в STU. Класс CAModule не имеет общедоступного
конструктора. CAModule автоматически удаляется из объекта CAModuleManager при удалении модуля
из STU.
Параметры модели объектаAPI СА должны быть в соответствии с [7] (приложение I. 3.1).
11.6.4.6.2 Состояния интерфейса API СА
На рисунке 8 показаны три состояния, в которых может находиться система СА;
- «дескремблирование не введено» (no_descrambling);
- «готовность интерфейса MMI» (MMI_done);
- «дескремблирование введено» (descrambling).
Рисунок 8 - Изменения состояния системы
По умолчанию система (класс CAModule) устанавливается в состояние «дескремблирование не
введено». В этом состоянии дескремблирование не выполняется. Переход в состояние «дескрембли
рование введено» может быть выполнен двумя способами. Первый способ реализуется прямым вызо
вом метода startDescrambling. После вызова этой функции начинается процесс дескремблирования. В
этом случае представление информации может включать диалоги пользователя по запросам системы
СА. Если дескремблирование при использовании первого способа невозможно, то применяется второй
способ, который заключается в вызове метода startDescramblingDialog. Это заставляет систему СА в
случав необходимости начинать диалог с пользователем и ввести состояние «готовность интерфейса
MMI» MMI_done. После этого состояние «дескремблирование введено» может быть достигнуто вызо вом
метода startDescrambling.
80