Настоящее изобретение касается способа передачи элемента дополнительных данных процессором безопасности во внешнее устройство. Изобретение касается также:
- способа приема переданного таким образом элемента дополнительных данных,
- способа идентификации процессора безопасности, использующего этот способ передачи, и
- способа передачи элемента дополнительных данных от внешнего устройства в процессор безопасности.
Наконец, изобретение касается процессора безопасности и носителя записи данных для применения этих способов.
Процессор безопасности является компонентом, выполненным с возможностью осуществления различных видов обработки для защиты системы, в частности, криптографических операций, таких как операции шифрования и дешифрования, и запоминания чувствительных данных. В этой связи следует указать, что этот компонент сам тоже выполнен защищенным с целью затруднения любой попытки криптоанализа. Процессор безопасности связан с одним или несколькими внешними устройствами, которые являются менее защищенными от попыток криптоанализа. Эти внешние устройства передают в него предназначенные для обработки данные, такие как криптограммы. Процессор безопасности обрабатывает эти данные, затем передает результат этой обработки во внешние устройства. Таким образом, понятно, что анализ работы этих внешних устройств не дает никакой информации о криптографических операциях, осуществляемых процессором безопасности.
Процессор безопасности и внешнее устройство осуществляют связь между собой путем обмена информационными кадрами через интерфейс связи. Информационный кадр состоит из последовательности битов. Обычно передача кадров между процессором безопасности и внешним устройством является асинхронной. Так, информационный кадр образован определенным набором битов, обозначающим начало кадра, и другим специальным набором битов, обозначающим конец кадра. Как правило, структура этого кадра определяется стандартом. Соблюдение этого стандарта со стороны процессора безопасности и внешнего устройства делает возможным обмен данными между этими двумя блоками через стандартный интерфейс. Этот стандарт определяет положение полей, содержащихся в кадре, а также кодирование, используемое для передачи битов данных, составляющих кадр. Например, интерфейс между процессором безопасности и внешним устройством, с которым он непосредственно соединен, соответствует стандарту ISO 7816.
Процессор безопасности может быть неразъемно установлен внутри внешнего устройства. В этом случае говорят о «встроенном» процессоре безопасности. В этом случае процессор безопасности представляет собой, например, аппаратный компонент, специально предназначенный для этих функций. Часто процессор безопасности просто подключают разъемно к внешнему устройству. В этом случае он часто представляет собой микропроцессорную карту.
Внешнее устройство может быть устройством, к которому напрямую подключают процессор безопасности, или любым устройством, с которым процессор безопасности может обмениваться данными. В этом последнем случае нет необходимости соединять внешнее устройство с процессором безопасности напрямую. Например, внешнее устройство можно соединять с процессором безопасности через другие внешние устройства.
Существуют ситуации, когда между процессором безопасности и внешним устройством, с которым он соединен, требуется произвести обмен элементом дополнительных данных, не изменяя ни содержимого передаваемого информационного кадра, ни его структуры. Например, одной из причин такого обмена является необходимость передачи элемента дополнительных данных скрытно, то есть практически незаметно для злоумышленника, который может прослушивать и анализировать обмен данными между процессором безопасности и внешним устройством. Действительно, такое лицо извлекает и анализирует содержимое информационных кадров в соответствии с тем, что предусмотрено стандартом. Поэтому, если передают элемент дополнительных данных без изменения структуры кадра или его содержимого, это лицо вряд ли сможет обнаружить передачу этого элемента дополнительных данных. В этом случае говорят, что элемент дополнительных данных передан по скрытому или сублиминальному каналу.
Таким образом, целью изобретения является скрытная передача данных между процессором безопасности и внешним устройством при помощи асинхронной линии передачи данных.
В связи с этим объектом изобретения является способ передачи элемента дополнительных данных от процессора безопасности во внешнее устройство, в котором осуществляют передачу элемента дополнительных данных путем задержки начала передачи информационного кадра от процессора безопасности во внешнее устройство на промежуток времени, зависящий от этого элемента дополнительных данных.
Вышеуказанный способ позволяет передавать элемент дополнительных данных без изменения содержимого или структуры информационных кадров, направляемых процессором безопасности во внешнее устройство. Он не требует также передачи дополнительных информационных кадров по сравнению с информационными кадрами, которые в любом случае будут переданы. Поэтому очень трудно определить, каким образом предается элемент дополнительных данных. Кроме того, это позволяет передавать во внешнее устройство элемент дополнительных данных в дополнение к данным, содержащимся в информационном кадре без использования дополнительной полосы пропускания. Это позволяет, таким образом, увеличить общую незанятую полосу пропускания для передачи информации между процессором безопасности и внешним устройством.
Наконец, устранение созданного таким образом скрытого канала затруднено тем, что информационные кадры трудно исключить, поскольку они содержат данные, которые, кроме всего прочего, часто необходимы для нормальной работы защищенной системы.
Варианты осуществления этого способа передачи могут содержать один или несколько следующих отличительных признаков:
- способ содержит дешифрование процессором безопасности элемента конфиденциальной информации и инкапсуляцию этого конфиденциальной информации в задерживаемом информационном кадре;
- конфиденциальная информация является контрольным словом, позволяющим дешифровать скремблированный мультимедийный контент;
- способ содержит:
- выбор группы возможных времен задержки из множества разных групп возможных времен задержки в зависимости от значения элемента дополнительных данных,
- случайный выбор времени задержки, используемого для задержки начала передачи информационного кадра, только в группе, выбранной в зависимости от значения элемента дополнительных данных;
- для заданного значения элемента дополнительных данных передачу информационного кадра во внешнее устройство аннулируют;
- способ содержит:
- определение времени задержки, используемого для задержки начала передачи информационного кадра в зависимости от элемента дополнительных данных, и
- использование времен задержки, зависящих от одного и того же значения элемента дополнительных данных, для систематической задержки начала передачи нескольких заданных информационных кадров;
- информационный кадр, начало передачи которого задерживают, выбирают в зависимости от значения передаваемого элемента дополнительных данных;
- способ содержит формирование информационного кадра независимо от элемента дополнительных данных.
Кроме того, эти варианты выполнения способа передачи имеют следующие преимущества:
- задержка процессором безопасности передачи информационных кадров, содержащих дешифрованные конфиденциальные данные, затрудняет устранение скрытого канала, так как фильтрование этих информационных кадров затруднено для злоумышленника;
- случайный выбор времени задержки, используемого для задержки начала передачи кадра в группе, выбранной в зависимости от элемента дополнительных данных, еще больше затрудняет идентификацию скрытого канала;
- возможность аннулирования передачи позволяет заблокировать некоторые функциональные возможности процессора безопасности;
- задержка передачи нескольких информационных кадров на одинаковое время задержки позволяет впоследствии путем статистической обработки внешним устройством преодолеть влияние случайных значений на время вычисления и передачи информационного кадра;
- отсутствие элемента дополнительных данных в задержанном информационном кадре равносильно увеличению доступной полосы пропускания между процессором безопасности и внешним устройством.
Объектом настоящего изобретения является также способ приема внешним устройством элемента дополнительных данных, передаваемого процессором безопасности при помощи описанного выше способа передачи, при этом способ содержит получение значения элемента дополнительных данных, передаваемого с учетом времени задержки, используемого для задержки информационного кадра.
Варианты реализации этого способа приема могут содержать следующий отличительный признак, когда каждый элемент дополнительных данных передают в ответ на запрос, причем этим запросы передают в заданные интервалы:
- способ содержит:
- построение момента отправки запроса в зависимости от заданного интервала,
- отметку момента приема информационного кадра, переданного в ответ на запрос, и
- получение значения элемента дополнительных данных на основании разности между отмеченным моментом приема и построенным моментом отправки.
Объектом настоящего изобретения является также способ идентификации процессора безопасности, содержащий:
- передачу процессором безопасности элемента идентификационных данных в зависимости от процессора безопасности во внешнее устройство, при этом идентификатор процессора безопасности позволяет однозначно идентифицировать процессор безопасности среди всех процессоров безопасности, которые могут использоваться,
- прием внешним устройством переданного элемента идентификационных данных,
- определение ограниченной группы возможных идентификаторов для этого процессора безопасности на основании этого элемента идентификационных данных,
- при этом передачу процессором безопасности элемента идентификационных данных осуществляют при помощи описанного выше способа передачи.
Этот способ идентификации процессора безопасности является исключительно эффективным, так как не позволяет определить, каким образом процессор безопасности передает данные о своем идентификаторе во внешнее устройство.
Варианты реализации этого способа идентификации могут содержать следующий отличительный признак:
- прием элемента идентификационных данных осуществляют при помощи описанного выше способа приема.
Объектом настоящего изобретения является также способ передачи элемента дополнительных данных внешним устройством в процессор безопасности, причем передачу элемента дополнительных данных осуществляют с задержкой начала передачи информационного кадра от внешнего устройства в процессор безопасности на время задержки, зависящее от значения элемента дополнительных данных.
Объектом настоящего изобретения является также процессор безопасности, содержащий модуль передачи элемента дополнительных данных во внешнее устройство Этот модуль передачи выполнен с возможностью передачи элемента дополнительных данных с задержкой начала передачи информационного кадра из процессора безопасности во внешнее устройство на время задержки, зависящее от этого элемента дополнительных данных.
Наконец, объектом изобретения является носитель записи данных, содержащий команды для выполнения описанных выше способов, когда эти команды исполняет электронное вычислительное устройство.
Настоящее изобретение будет более очевидно из нижеследующего описания, представленного в качестве неограничительного примера, со ссылками на прилагаемые чертежи, на которых:
фиг.1 - схема системы широковещательной передачи скремблированного мультимедийного контента;
фиг.2 - схема таблицы прослушивания, используемой в системе, показанной на фиг.1;
фиг.3 - блок-схема способа идентификации процессора безопасности, применяемого в системе, показанной на фиг.1;
фиг.4 и 5 - хронограммы, иллюстрирующие частный вариант способа, показанного на фиг.3;
фиг.6 - график, иллюстрирующий пример содержимого таблицы прослушивания, показанной на фиг.2;
фиг.7 и 8 - схематичный вид двух информационных кадров, передаваемых в процессор безопасности системы, показанной на фиг.1.
На этих чертежах одинаковые элементы обозначены одинаковыми позициями.
В дальнейшем тексте описание признаков и функций, хорошо известных специалистам, опускается. Кроме того, используемая терминология относится к известным системам условного доступа к скремблированному мультимедийному контенту. Для большей информации по этой терминологии читатель может обратиться к следующему документу:
"Functional Model of Conditional Access System", EBU Review - Technical European Broadcasting Union, Bruxel, BE, №266, 21 декабря 1995 года.
На фиг.1 показана система 2 широковещательной передачи скремблированного мультимедийного контента. Мультимедийный контент содержит видео- и/или аудиоинформацию. Например, мультимедийный контент является фильмом или телевизионной передачей. Эти системы хорошо известны, поэтому подробно будут описаны только элементы, которые являются существенными для понимания изобретения.
Система 2 содержит передатчик 4 скремблированного мультимедийного контента. Для этого передатчик 4 содержит:
- устройство 6 скремблирования, выполненное с возможностью приема нескремблированного мультимедийного контента и вывода мультимедийного контента, скремблированного при помощи контрольного слова CW,
- генератор 8 контрольных слов, предоставляющий устройству 6 скремблирования подлежащие использованию контрольные слова, и
- генератор 10 сообщений ЕСМ (Entitlement Control Message).
Следует напомнить, что сообщения ECM содержат по меньшей мере одну криптограмму CW* контрольного слова CW, используемого для скремблирования мультимедийного контента.
Контрольное слово регулярно меняют. Интервал времени, в течение которого контрольное слово остается без изменения, является криптопериодом. Классически криптопериоды длятся менее 1 минуты. Например, криптопериод длится десять секунд.
Выходы устройства 6 скремблирования и генератора 10 соединены с соответствующими входами мультиплексора 12. Мультиплексор 12 мультиплексирует скремблированный мультимедийный контент с генерированными сообщениями ЕСМ для получения мультиплексированного мультимедийного контента. Мультиплексированный мультимедийный контент передают в сеть 14 передачи данных. Например, сеть 14 является сетью с коммутированием пакетов, такой как сеть Интернет. Сеть 14 может также состоять из нескольких сетей разного типа, соединенных друг с другом. Например, сеть 14 может частично состоять из спутниковой сети типа DVB-S и частично из сети Интернет.
Передаваемый таким образом мультиплексированный мультимедийный контент предназначен для приема абонентскими терминалами. Эти абонентские терминалы демультиплексируют мультиплексированный мультимедийный контент для получения, с одной стороны, сообщений ECM и, с другой стороны, скремблированного мультимедийного контента и направляют затем сообщения ЕСМ в связанные с ними процессоры безопасности, которые обрабатывают их в зависимости от предварительно полученных прав доступа и которые вносят их в память. В случае необходимости, эти процессоры безопасности возвращают затем дешифрованное контрольное слово CW в терминалы, которые могут дескремблировать мультимедийный контент и затем выводить его на экран в расшифрованном виде. Выражение «в расшифрованном виде» значит, что выводимый на экран дескремблированный мультимедийный контент может быть напрямую просмотрено человеком.
Вместо таких абонентских терминалов на фиг.1 показаны только «пиратские» терминалы. Эти пиратские терминалы используют для выведения на экран мультимедийного контента в незашифрованном виде без оплаты соответствующего абонентского взноса, то есть без получения прав доступа, позволяющих это делать законным путем. Обычно они получают декодированные контрольные слова CW из пиратских же сайтов в сети. На фиг.2 два показанных пиратских терминала 18 и 20 являются, например, идентичными. Поэтому в дальнейшем будет описан только терминал 18.
Терминал 18 соединен с экраном 21, таким как телевизионный экран. Терминал 18 оборудован:
- декодером 22, соединенным с сетью 14, для приема мультиплексированного мультимедийного содержимого, передаваемого передатчиком 4, и
- устройством 24 дескремблирования.
Декодер 22 демультиплексирует мультимедийный контент для извлечения из него скремблированного мультимедийного контента.
Устройство 24 дескремблирования дескремблирует или дешифрует скремблированный мультимедийный контент, используя контрольное слово CW. Для этого устройство 24 дескремблирования должно получить контрольное слово CW в незашифрованном виде. Для этого терминал 18 подключают к устройству 30 общего использования контрольного слова. Например, терминал 18 соединяют с устройством 30 через сеть 14.
Устройство 30 оборудовано декодером 32 и аутентичным процессором безопасности, непосредственно соединенным с декодером 32. Под «аутентичным процессором безопасности» следует понимать процессор безопасности, легально полученный при абонировании услуг оператора, распространяющего мультимедийный контент. Этот процессор 34 структурно идентичен процессорам, установленным в абонентских терминалах. В процессоре 34 права доступа к мультимедийному контенту регулярно обновляются при условии внесения абонентской платы. Это обновление происходит так же, как и для процессоров безопасности, подключенных к абонентским терминалам.
Декодер 32 демультиплексирует мультиплексированный мультимедийный контент, передаваемый передатчиком 4, для извлечения из него сообщений ЕСМ. Эти сообщения ECM поступают в процессор безопасности 34, который дешифрует криптограмму CW* для получения контрольного слова CW. Затем процессор 34 передает в декодер 32 информационный кадр, содержащий контрольное слово CW, так же, как если бы он был подключен к абонентскому терминалу.
В данном случае процессор безопасности 34 является съемной микропроцессорной картой, подключаемой к декодеру 32 через интерфейс связи, соответствующий стандарту ISO 7816. Таким образом, декодер 32 является внешним устройством, в которое процессор 34 передает данные.
Процессор 34 содержит электронное вычислительное устройство 36, выполненное с возможностью исполнения команд, записанных на носителе записи данных. Для этого вычислительное устройство 36 соединено с запоминающим устройством 38, которое содержит команды, необходимые для выполнения способа, показанного на фиг.3. В частности, эти команды кодируют модуль 40 передачи дополнительных данных по скрытому каналу. Запоминающее устройство 38 содержит также:
- идентификатор UA процессора безопасности, и
- криптографические ключи и пароли доступа, необходимые для дешифрования криптограмм CW*.
Идентификатор UA позволяет индивидуально идентифицировать процессор 34 из совокупности аутентичных процессоров безопасности, используемых в системе 2.
В отличие от абонентских терминалов декодер 32 оборудован передатчиком 44 контрольных слов. Этот передатчик 44 передает контрольное слово, принятое от процессора 34, во внешние устройства, которые записаны, например, в список передачи, поддерживаемый устройством 30. Пиратские терминалы 18 и 20 внесены в этот список для приема контрольных слов CW, дешифрованных процессором 34. В данном случае в этот список внесен также пост 50 прослушивания, который, таким образом, тоже представляет собой внешнее устройство, в которое процессор 34 передает дешифрованные контрольные слова.
Пост 50 выполнен с возможностью прослушивания данных, передаваемых устройством 30, с целью идентификации процессора 34, используемого этим устройством 30. Для этого пост 50 содержит:
- модуль 52 приема одновременно мультиплексированного мультимедийного контента, передаваемого передатчиком 4, и контрольных слов, передаваемых устройством 30,
декодер 54, выполненный с возможностью демультиплексирования мультимедийного контента, и
- модуль 56 обработки для получения данных, передаваемых процессором 34 по скрытому каналу.
Обычно модуль 52, декодер 54 и модуль 56 являются программными модулями, установленными в компьютере 58. Этот компьютер 58 соединен с запоминающим устройством 60. Запоминающее устройство 60 содержит команды, необходимые для выполнения способа, показанного на фиг.3, когда их исполняет компьютер 58. Это запоминающее устройство 60 содержит также таблицу 62 прослушивания.
На фиг.2 более детально показана таблица 62. Таблица 62 содержит три столбца 64-66. Первый столбец 64 предназначен для идентификаторов сообщений ECM. Например, столбец 64 содержит идентификаторы ECM1 и ECM2 двух разных сообщений ECM.
Столбец 65 содержит моменты te передачи сообщений ECM, идентифицируемых идентификаторами, содержащимися в столбце 64. Например, в данном случае столбец 65 содержит моменты te1 и te2.
Наконец, столбец 66 содержит моменты tr приема контрольных слов CW, передаваемых устройством 30. Например, столбец 66 содержит моменты tr1 и tr2, соответственно связанные с идентификаторами ECM1 и ECM2.
Далее со ссылками на способ, представленный на фиг.3, следует подробное описание работы системы 2.
Вначале на этапе 70 пост 50 подписывается на список широковещательной передачи устройства 30 для приема контрольных слов, дешифруемых и передаваемых этим устройством.
Затем на этапе 71 пост 50 строит момент te передачи передатчиком 4 сообщения ECM для каждого криптопериода. Например, пост 50 генерирует момент te передачи сообщения ECM в каждом криптопериоде с той же периодичностью, которая используется для передачи сообщений ECM. Действительно, сообщения ECM передаются периодически, как правило, непосредственно перед концом предыдущего криптопериода. Момент te не обязательно должен соответствовать моменту, в который передатчик 4 передает сообщение ECM. Достаточно, чтобы последовательность генерируемых моментов te имела ту же периодичность, что и используемая для передачи сообщений ECM. В случае необходимости, периодичность передачи сообщений ECM выводят из периодичности, с которой принимаются контрольные слова, передаваемые устройством 30.
После этого осуществляют фазу 72 передачи запроса идентификации процессора 34 и приема соответствующего ответа. В частности, на этапе 74 скремблированный мультимедийный контент, передаваемый передатчиком 4, мультиплексируют с сообщением ECM1, содержащим запрос R1. Запрос R1 касается ограниченной группы G1 процессоров безопасности. Эта группа является ограниченной в том смысле, что содержит меньше процессоров безопасности, чем может содержать система 2. В частности, этот запрос предназначен для того, чтобы узнать, принадлежит процессор 34 к группе G1 или нет. Например, группа G1 состоит из совокупности процессоров безопасности, идентификатор UA которых начинается с бита «1». Это сообщение ECM1 передается на все внешние устройства, подключенные к сети 14.
На этапе 76 устройство 30 и пиратские терминалы 18 и 20 принимают этот мультиплексированный мультимедийный контент.
На этапе 78 пиратские терминалы 18, 20 демультиплексируют принятый мультимедийный контент для извлечения из него скремблированного мультимедийного контента. Устройство 30 демультиплексирует принятый мультимедийный контент для извлечения из него сообщения ЕСМ1.
На этапе 80 модуль 56 поста 50 строит момент te1 передачи сообщения ECM1. Момент te1 вносится в таблицу 62. Например, момент te1 строят путем добавления продолжительности криптопериода к предыдущему построенному моменту te.
Параллельно на этапе 82 декодер 32 устройства 30 передает сообщение ECM1 в процессор 34.
На этапе 84 в ответ на прием этого сообщения ECM1 процессор 34 определяет, содержит это сообщение запрос, такой как запрос R1, или нет. При положительном результате он переходит на этап 86 вычисления элемента дополнительных данных D и время задержки Δ. Этот элемент данных D является ответом на запрос R1. В данном случае элемент данных D является булевым элементом, поскольку существует только два возможных ответа на запрос R1, то есть либо процессор 34 принадлежит к группе G1, либо он не принадлежит к этой группе.
Например, этап 86 начинается с операции 88, во время которой процессор 34 определяет, начинается ли его идентификатор UA с бита 1. В случае утвердительного результата элемент данных D принимают за 1 и во время операции 90 его связывают с заданной постоянной продолжительностью d1. В случае отрицательного результата во время операции 92 элемент данных D, который принимают равным 0, связывают с заданной постоянной продолжительностью d0. Например, продолжительность d0 является нулевой, а продолжительность d1 выбирают превышающей дрожание сигналов, передаваемых процессором 34 на пост 50. Дрожание хорошо известно также под английским названием ′′jitter′′. Например, продолжительность d1 превышает 1 мс. Продолжительности d0 и d1 являются двумя возможными продолжительностями промежутка времени Δ.
Затем после этапа 86 или в случае, когда сообщение ЕСМ, принятое процессором 34, не содержит запроса, осуществляют этап 94 дешифрования криптограммы CW*.
Во время этапа 96 процессор 34 строит кадр, содержащий дешифрованное контрольное слово CW. Этот кадр соответствует стандарту ISO 7816.
Затем на этапе 98 процессор 34 задерживает передачу в декодер 32 кадра, построенного на этапе 96, на время задержки Δ продолжительностью d1 или d0 в зависимости от значения элемента данных D, вычисленного на этапе 86.
На хронограммах фиг. 4 и 5 более подробно представлены два случая, которые могут иметь место на этапе 98 и которые будут описаны ниже.
После выжидания времени задержки Δ кадр сразу передают в сеть 14.
На этапе 100 пиратские терминалы 18 и 20, а также пост 50 принимают кадр, содержащий контрольное слово, дешифрованное процессором 34.
На этапе 102 декодер 22 пиратских терминалов извлекает контрольное слово CW из принятого кадра и передает его на дешифратор 24, который дескремблирует принятый скремблированный мультимедийный контент.
Параллельно на этапе 104 пост 50 отмечает момент tr1 приема кадра, содержащего контрольное слово CW. Этот момент tr1 вносится в таблицу 62, связанную с идентификатором сообщения ECM1.
Фаза 72 завершается, и начинается новая фаза 106 передачи нового запроса и приема соответствующего ответа. Эта фаза 106 идентична фазе 72 за исключением того, что передаваемое сообщение ЕСМ является сообщением ЕСМ2, содержащим запрос R2, касающийся группы G2. Например, группу G2 строят таким образом, чтобы пересечение с группой G1 было пустым и чтобы ее объединение с группой G1 соответствовало совокупности процессоров безопасности, используемых в системе 2. В данном случае группа G2 образована всеми процессорами, идентификатор UA которых начинается битом ноль. Моменты передачи этого сообщения ЕСМ2 и приема дешифрованного контрольного слова вносятся в таблицу 62 как моменты te2 и tr2.
Каждую фазу 72 и 106 повторяют несколько раз. Например, каждую из них повторяют более десяти раз и предпочтительно более ста раз. Например, фазы 72 и 106 повторяют поочередно. Это позволяет многократно записать моменты te передачи и tr приема, соответствующие запросам R1 и R2. Эти моменты записывают в таблицу 62. На фиг. 6 графически показана часть содержимого таблицы 62, полученного при чередующемся повторении фаз 72 и 106.
На этом графике каждая вертикальная полоса отображает время ответа на запрос. Заштрихованные полосы отображают время ответа на запрос R1, тогда как белые полосы отображают время ответа на запрос R2. Высота каждой из этих полос зависит от времени ответа. Время ответа равно разности между моментами te и tr, зарегистрированными для одного сообщения ЕСМ в таблице 62.
Как показано на графике, разность между моментами te и tr при ответе на один и тот же запрос меняется каждый раз, когда передается этот запрос. Это изменение связано со случайностями во времени прохождения сообщения ЕСМ и передаваемого дешифрованного контрольного слова CW, а также промежуточных сообщений, то есть обмениваемых в интервале времени, определяемом обменом в предыдущих интервалах времени, в сети 14. Эти изменения могут быть также связаны со случайностями во времени вычисления процессора 34.
После многократного повторения фаз 72 и 106 модуль 56 переходит к фазе 108 получения элемента данных D путем обработки моментов, записанных в таблице 62. Например, во время операции 110 модуль 56 вычисляет среднее время Rm1 ответа на запрос R1. Во время этапа 110 модуль 56 вычисляет также среднее время Rm2 ответа на запрос R2.
Затем во время операции 112 модуль 56 определяет, превышает ли среднее время ответа на запрос R1 среднее время ответа на запрос R2. При положительном результате он осуществляет операцию 114, во время которой он устанавливает, что время задержки Δ имеет продолжительность d1 и что элемент данных D, переданный в ответ на запрос R1, равен 1. В этом случае пост 50 определяет, что процессор 34 принадлежит к группе G1. В противном случае осуществляют операцию 116, во время которой он устанавливает, что время задержки Δ имеет продолжительность d0 и что элемент данных D, переданный в ответ на запрос R1, равна 0. Это значит, что процессор 34 принадлежит к группе G2. Действительно, как было указано выше, передача информационного кадра процессором 34 задерживается на промежуток времени d1, если этот процессор принадлежит к группе, для которой предназначен принятый запрос.
Средние значения Rm1 и Rm2 показаны на фиг. 6 горизонтальными пунктирными линиями.
Таким образом, по завершении фаз 76-108 удалось определить, к какой из групп G1 или G2 принадлежит процессор 34. В данном случае процессор 34 принадлежит к группе G2.
Затем этапы 72-108 повторяют соответственно для групп G3 и G4 во время фаз 72 и 106. Эти группы G3 и G4 строят таким образом, чтобы пересечение этих двух групп было нулевым и чтобы объединение этих двух групп было равно группе G2.
Таким образом, при помощи последовательных перекрывающих проверок можно постепенно определить принадлежность процессора 34 вплоть до его индивидуальной идентификации среди всех процессоров, используемых в системе 2.
На фиг. 4 показана хронограмма передачи и приема ответа на запрос. В момент tee передатчик 4 передает сообщение ЕСМ, содержащее запрос. При этом может иметь место смещение между моментами tee и te, как показано на фиг. 4 и 5. Это смещение является постоянным. Сообщение, содержащее запрос, поступает в устройство 30 в момент tRe. Разность между моментами tRe и tee соответствует времени прохождения сообщения ЕСМ от передатчика 4 до процессора 34.
Начиная с момента tRe процессор 34 обрабатывает принятое сообщение ЕСМ. Эта обработка заканчивается в момент tT. Разность между моментами tT и tRe соответствует времени вычисления, необходимому процессору 34 для обработки сообщения ЕСМ. Это время вычисления содержит, в частности, время дешифрования криптограммы CW* и время последующего построения кадра, содержащего дешифрованное контрольное слово CW.
В случае, когда процессор 34 принадлежит к группе, к которой относится принятый запрос, передача кадра, содержащего дешифрованное контрольное слово CW, задерживается на время задержки Δ, продолжительность которого вычисляют в зависимости от элемента данных D на этапе 86. После выжидания этого времени задержки Δ в момент tec процессор 34 сразу же передает этот кадр в декодер 32. Затем переданный кадр поступает в момент tRC на пост 50 прослушивания. Модуль 56 записывает этот момент tRC как момент tr. Разность между моментами tRC и tec соответствует времени прохождения этого кадра от процессора 34 до поста 50.
Время прохождения, а также время обработки может меняться псевдослучайно. В этих условиях только статистическая обработка промежутков времени ответа на запросы, описанная для фазы 108, позволяет получить элемент дополнительных данных, передаваемый по скрытому каналу.
На фиг. 5 показана такая же хронограмма, что и на фиг. 4, но для частного случая, когда процессор не принадлежит к группе, к которой относится запрос. Следовательно, время задержки Δ является нулевым.
Задержка передачи информационного кадра не меняет контента или структуры этого кадра. Следовательно, не предупрежденный пользователь едва ли сможет ощутить эту задержку. Таким образом, способ, показанный на фиг. 3, позволяет исключительно скрытно передавать дополнительные данные от процессора 34 во внешнее устройство.
Однако чтобы передача дополнительных данных от процессора 34 во внешнее устройство оставалась скрытной, необходимо также максимально замаскировать запросы, содержащиеся в сообщениях ЕСМ. Для этого на фиг. 7 показано сообщение ЕСМ, не содержащее запроса. Классически это сообщение ЕСМ дополнительно содержит поле 130, содержащее криптограмму CW*, и криптографическую избыточность 132, называемую MAC (от Message Authentication Code, код аутентификации сообщения) и кодированную 128 битами. Эта криптографическая избыточность позволяет проверить целостность сообщения ЕСМ. Как правило, ее строят, применяя функцию хеширования для содержимого сообщения ЕСМ и, в частности, учитывая криптограмму CW*.
На фиг. 8 показано сообщение ЕСМ, содержащее запрос. В данном случае этот запрос замаскирован в поле MAC сообщения ЕСМ. Например, это поле MAC начинается в данном случае двумя последовательными битами с нулем. Процессор 34 опознает эти биты, указывающие на присутствие запроса в этом поле. При этом 64 последних бита поля MAC содержат подпись сообщения, кодированного на 64 бит вместо 128. Это все равно позволяет проверить целостность этого сообщения ЕСМ.
Запрос R1 имеет вид, например, вектора битов, предназначенных для сравнения, один за другим, с битами идентификатора UA. Например, в данном случае запрос R1 кодирован в виде последовательности из 62 битов, из которых только первый бит равен «1». Процессор 34 интерпретирует этот код как определяющий группу процессоров безопасности, для которой бит с самым большим весовым коэффициентом идентификатора UA равен «1».
Предпочтительно содержимое поля MAC шифруют при помощи ключа, известного для процессоров безопасности. Таким образом, процессоры дешифруют содержимое поля MAC при помощи этого ключа перед использованием этого содержимого.
Возможны также многие другие варианты выполнения. Например, каждый запрос может определять нижнюю границу Binf и верхнюю границу Bsup. Если идентификатор UA процессора 34 содержится в сегменте [Binf; Bsup], значит, ответом D на принятый запрос является «да», и передачу последующего информационного кадра задерживают на время задержки Δ продолжительностью d1. В противном случае передачу последующего информационного кадра не задерживают.
В случае необходимости, запрос может касаться только одной карты. В этом случае группа сужается до одного процессора безопасности. Например, в этом случае сообщение ECM1 будет касаться только идентификатора UA карты 34.
Ограниченные группы можно предусматривать для идентификации, один за другим, битов идентификатора UA. Например, первый запрос касается процессоров безопасности, для которых первый бит идентификатора UA равен 1. Затем второй запрос касается процессоров безопасности, для которых второй бит идентификатора UA равен 1, и так далее. Таким образом, можно определить, какие из битов идентификатора UA равны 1, и, следовательно, соответствующий процессор безопасности.
Время задержки Δ может принимать более двух разных значений. Например, запрос содержит вектор битов, который процессор 34 должен комбинировать с идентификатором UA. Операция комбинирования состоит, например, в осуществлении операции «исключающее ИЛИ» между этом вектором битов и идентификатором UA.
Результат этого комбинирования определяет значение времени задержки Δ, используемого для задержки передачи информационного кадра. Затем во время фазы 106 используют другой вектор. Повторение фаз 72 и 106 для большого числа разных векторов позволяет затем путем обработки идентифицировать или более точно очертить принадлежность процессора 34.
Даже если время Δ задержки ограничено двумя возможными значениями, вовсе не обязательно, чтобы одно из этих значений было нулевым.
В варианте осуществления устройство 30 может использовать несколько аутентичных процессоров безопасности для дешифрования криптограмм CW*. Предположим, что дешифрованное контрольное слово передается только процессором безопасности, который быстрее всех дешифровал криптограмму CW*. Кадры, передаваемые другими процессорами безопасности, которые оказались более медленными, не передаются на пост прослушивания. В этом случае можно разработать стратегию, позволяющую идентифицировать каждый из процессоров безопасности, используемых устройством 30 общего использования контрольного слова. Например, в случае, когда устройство 30 использует два разных процессора безопасности, создают по меньшей мере три группы G1, G2, G3 таким образом, чтобы объединение этих групп парами соответствовало совокупности процессоров безопасности, используемых в системе 2. Это позволяет идентифицировать по меньшей мере одну группу и не более двух групп, к которым принадлежат процессоры безопасности. Затем можно ограничить более узкую совокупность, к которой принадлежат два процессора безопасности. Разделив опять аналогичным образом эту более узкую совокупность на три группы и идентифицировав группу или группы, к которым принадлежат совместно используемые процессоры, постепенно идентифицируют два процессора безопасности, используемых устройством 30. Например, предположим, что система 2 содержит девять процессоров безопасности, обозначенных от 1 до 9. Устройство 30 использует процессоры 1 и 5. Сначала создают три следующих группы:
- группу G1, которая объединяет все процессоры, кроме процессоров 1-3;
- группу G2, которая объединяет все процессоры, кроме процессоров 4-6;
- группу G3, которая объединяет все процессоры, кроме процессоров 7-9.
Затем применяют фазы 72, 106 и 108, чтобы определить, к какой группе принадлежат процессоры, используемые устройством 30. Учитывая, что передачу контрольного слова процессором безопасности, который не принадлежит к группе, которой касается принятый запрос, не задерживают, этот ответ передают перед ответом процессора, который принадлежит к затронутой запросом группе. Поэтому, чтобы пост 50 получил ответ, указывающий, что процессоры принадлежат к затронутой в запросе группе, необходимо, чтобы к этой группе принадлежали одновременно два процессора. Если запрос касается групп G1 и G2, принятым ответом является «нет». Если же запрос касается группы G3, то принятым ответом является «да», то есть запрошенные процессоры принадлежат к этой группе G3.
Затем группу G3 делят на три новые группы G4, G5 и G6. Группы G4, G5 и G6 объединяют соответственно процессоры 1 2 3 4, 1 2 5 6 и 3 4 5 6.
Повторив эти этапы 72-108 с использованием такого распределения на группы, пост 50 определяет, что процессоры, используемые устройством 30, принадлежат к группе G5. Затем группу G5 делят на три группы G7, G8 и G9, которые соответствуют процессорам 1 2 5, 2 5 6 и 1 5 6. После передачи соответствующих запросов и обработки ответов пост 50 определяет, что процессоры, используемые устройством 30, принадлежат к группам G7 и G9. Следовательно, совместно используемыми процессорами являются процессоры 1 и 5.
Существует также много других возможностей сокрытия запросов в сообщениях ЕСМ, передаваемых в процессор безопасности. Например, вместо того, чтобы передавать вектор битов внутри поля MAC, в качестве вектора битов используют содержимое поля 130 или поля 132. В качестве вектора битов можно также использовать контрольное слово CW, дешифрованное процессором безопасности. Затем этот вектор битов комбинируют с идентификатором UA процессора безопасности. Например, это комбинирование осуществляют при помощи операции «исключающее ИЛИ». Результат этого комбинирования кодируют в виде времени задержки, используемого для задержки передачи информационного кадра, содержащего дешифрованное контрольное слово CW. Например, время задержки равно результату комбинирования между вектором и идентификатором UA. Эти операции повторяют для большого числа разных векторов. Ответы на каждое отправленное сообщение ЕСМ вносят в таблицу прослушивания. После этого, если число данных является статистически достаточным, таблицу прослушивания обрабатывают, чтобы попробовать определить максимально точно значение идентификатора UA процессора, используемого устройством 30. В этом варианте выполнения, поскольку вектор выполняет также другую функцию (криптограмма контрольного слова, криптографическая избыточность и т.д.) поля сообщения ЕСМ, его обнаружение оказывается затрудненным.
Другое решение для сокрытия запросов состоит в том, чтобы просто не отправлять запрос. В этих вариантах выполнения передачу элемента дополнительных данных производят, например, каждый день в установленное время. Другой возможностью является осуществление передачи элемента дополнительных данных в момент, который процессор безопасности определяет в зависимости от подлежащего передаче элемента дополнительных данных. Таким образом, подлежащий передаче элемент данных тоже кодируют в момент, в который его передают.
Для ограничения числа запросов, передаваемых на процессор безопасности, сначала передают запрос, затем время задержания Δ, соответствующее подлежащему передаче элементу данных в ответ на этот запрос, систематически применяют для задержки множества заданных последующих информационных кадров. Например, все информационные кадры, передаваемые в течение заданного интервала времени после приема этого запроса, задерживают на время задержания Δ, не применяя этой задержки для следующих кадров при получении нового запроса.
Чтобы еще больше затруднить восприятие задержки, применяемой для передачи информационных кадров, можно действовать следующим образом: строят группы из нескольких возможных времен задержки. Например, формируют группы J1 и J2, соответствующие интервалам [n11; n12] и [n21; n22] возможных времен задержки. Группы J1 и J2 отличаются друг от друга, и предпочтительно их пересечение является пустым. Затем группу, в которой необходимо выбрать промежуток времени Δ, определяют в зависимости от элемента данных D. Наконец, промежуток времени Δ, используемый для задержки передачи информационного кадра, выбирают произвольно из ранее определенной группы. Таким образом, при приеме одинакового запроса время задержки передачи последующего информационного кадра не будет идентичным. С другой стороны, пост прослушивания может различить принадлежность промежутка времени к группе J1 или J2 и, следовательно, получить элемент данных D.
Если время прохождения информационных кадров между процессором безопасности и постом прослушивания и время вычисления и обработки сообщения ЕСМ являются постоянными, нет необходимости в многократном повторении фаз 72 и 106 для получения данной D. Достаточно одного измерения времени задержки Δ.
В одном варианте для определенного элемента данных используемое время задержки Δ является бесконечным временем, что соответствует аннулированию передачи информационного кадра.
На первом этапе можно внести все времена задержки ответа на запросы в таблицу 62, затем на втором этапе обработать эту таблицу, когда это становится необходимым, например, для идентификации процессора безопасности.
Ответ на запрос не обязательно передавать сразу с задержкой или без задержки передачи следующего информационного кадра. Например, время задержки Δ используют только для задержки передачи n-го информационного кадра, передаваемого процессором безопасности после получения запроса, где n строго превышает 1. Промежуточные кадры, то есть между кадром, непосредственно следующим за получением запроса, и (n-1)-м кадром, не применяют для кодирования ответа на запрос.
Ответ, передаваемый процессором безопасности, не обязательно передают при помощи только одного информационного кадра. Например, ответ на запрос состоит из нескольких элементов данных, при этом каждый элемент данных соответствует отдельному значению времени задержки Δ. В этом случае необходимо несколько информационных кадров для передачи полного ответа. Таким образом, один запрос может привести к передаче через скрытый канал нескольких элементов данных.
Скрытную передачу дополнительных данных, описанную в рамках способа, показанного на фиг. 3, можно применять в других контекстах, отличных от выявления мошенников. Например, передаваемый элемент дополнительных данных может соответствовать данным, отличным от данных, относящихся к идентификатору UA процессора безопасности. Задержку тоже можно применять для других информационных кадров, а не только для кадров, содержащих дешифрованное контрольное слово CW.
Запросы, передаваемые на процессор безопасности, можно включать в другие сообщения, кроме сообщений ЕСМ. Например, эти запросы можно включать в сообщения EMM.
Процессор безопасности может быть интегрированным или просто разъемно подключенным к дешифратору. Сам дешифратор может быть интегрирован или разъемно подключен к декодеру.
Сеть, используемая для передачи уплотненного мультимедийного контента, может также быть спутниковой сетью.
Пост 50 прослушивания не обязательно должен содержать декодер в частном случае, описанном со ссылками на фиг. 1 и 3.
Способ выявления мошенников, описанный со ссылками на фиг. 3, можно также применять для атак, известных под названием «совместное использование карты». В этих атаках каждый пиратский терминал передает принимаемое им сообщение ЕСМ в устройство 30, которое обрабатывает его при помощи процессора 34 и передает соответствующий ответ. В этом случае пост 50 прослушивания принимает также мультиплексированное мультимедийное содержимое и демультиплексирует его, чтобы извлечь из него сообщение ЕСМ, при помощи декодера 54. Затем он отправляет извлеченное сообщение ЕСМ в устройство 30. Затем устройство 30 передает на пост 50 контрольное слово, полученное процессором 34 путем дешифрования криптограммы CW*, содержащейся в сообщении ЕСМ. Поскольку пост 50 сам направляет сообщение ЕСМ в устройство 30, он может непосредственно измерить момент te передачи этого сообщения. Например, момент te принимают равным моменту приема сообщения ЕСМ постом 50. В одном варианте момент te содержится в самом сообщении ЕСМ.
Наконец, применение описанного выше скрытого канала можно также адаптировать для скрытной передачи дополнительных данных от внешнего устройства в процессор безопасности. Для этого достаточно применить описанный выше способ, поменяв ролями внешнее устройство и процессор безопасности. Например, такой замаскированный канал может использовать передатчик 4 и/или внешнее устройство 32 для скрытной передачи запросов.
Изобретение относится к области секретной передачи данных. Техническим результатом является обеспечение скрытой передачи данных между процессором безопасности и внешним устройством. Способ передачи информационного кадра и элемента дополнительных данных от процессора безопасности во внешнее устройство содержит этапы, на которых: в ответ на прием запроса вычисляют посредством процессора безопасности элемент дополнительных данных, причем элемент дополнительных данных является ответом на запрос, выбираемым по меньшей мере из двух возможных вариантов ответа на запрос; вычисляют посредством процессора безопасности время задержки на основании вычисленного элемента дополнительных данных; задерживают (98) начало передачи информационного кадра от процессора безопасности во внешнее устройство на вычисленное время задержки для осуществления передачи элемента дополнительных данных. 6 н. и 9 з.п. ф-лы, 8 ил.
1. Способ передачи информационного кадра и элемента дополнительных данных от процессора безопасности во внешнее устройство, причем информационный кадр образован определенным набором битов, обозначающим начало кадра, и другим определенным набором битов, обозначающим конец кадра, а элемент дополнительных данных представляет собой данные, передаваемые во внешнее устройство в дополнение к данным, содержащимся в информационном кадре; при этом способ содержит этапы, на которых:
в ответ на прием запроса вычисляют посредством процессора безопасности элемент дополнительных данных, причем элемент дополнительных данных является ответом на запрос, выбираемым по меньшей мере из двух возможных вариантов ответа на запрос;
вычисляют посредством процессора безопасности время задержки на основании вычисленного элемента дополнительных данных;
задерживают (98) начало передачи информационного кадра от процессора безопасности во внешнее устройство на вычисленное время задержки для осуществления передачи элемента дополнительных данных.
2. Способ по п.1, дополнительно содержащий этап, на котором дешифруют (94) с помощью процессора безопасности элемент конфиденциальной информации и инкапсулируют (96) элемент конфиденциальной информации в задержанный информационный кадр.
3. Способ по п.2, в котором элемент конфиденциальной информации является контрольным словом, используемым для дешифровки скремблированного мультимедийного контента.
4. Способ по п.1, дополнительно содержащий этапы, на которых:
выбирают группу возможных времен задержки из нескольких разных групп возможных времен задержки в зависимости от элемента дополнительных данных, и
выбирают случайным образом время задержки, используемое для задержки начала передачи информационного кадра, только из группы, выбранной в зависимости от элемента дополнительных данных.
5. Способ по п.1, в котором для заданного элемента дополнительных данных отменяют передачу информационного кадра во внешнее устройство.
6. Способ по п.1, дополнительно содержащий этапы, на которых:
определяют (98) время задержки, используемое для задержки начала передачи информационного кадра, в зависимости от элемента дополнительных данных, и
используют времена задержки, зависящие от того же элемента дополнительных данных, для систематической задержки начала передачи нескольких заданных информационных кадров.
7. Способ по п.1, в котором выбирают информационный кадр, начало передачи которого задерживается, в зависимости от элемента дополнительных данных, подлежащего передаче.
8. Способ по любому из пп.1-7, дополнительно содержащий этап, на котором формируют информационный кадр независимо от элемента дополнительных данных.
9. Способ приема внешним устройством элемента дополнительных данных, передаваемого процессором безопасности, при помощи способа передачи по п.1, характеризующийся тем, что получают (108) передаваемый элемент дополнительных данных на основании времени задержки, используемого для задержки информационного кадра, при этом
строят (80) момент передачи запроса,
отмечают (104) момент приема информационного кадра, переданного в ответ на запрос, и
получают (108) элемент дополнительных данных на основании разности между отмеченным моментом приема и построенным моментом передачи.
10. Способ по п.9, в котором передают каждый элемент дополнительных данных в ответ на запрос, причем запросы передают через заданные интервалы, при этом способ дополнительно содержит этап, на котором строят (80) момент передачи запроса в зависимости от заданного интервала.
11. Способ идентификации процессора безопасности, содержащий этапы, на которых:
передают (98) при помощи процессора безопасности во внешнее устройство элемент данных, зависящий от идентификатора процессора безопасности, при этом идентификатор процессора безопасности обеспечивает однозначную идентификацию процессора безопасности среди всех процессоров безопасности, подлежащих использованию,
принимают (104) при помощи внешнего устройства переданный элемент данных, и
определяют (114, 116) ограниченную группу возможных идентификаторов для указанного процессора безопасности на основании указанного элемента данных,
при этом передачу при помощи процессора безопасности элемента данных осуществляют посредством способа передачи по п.1.
12. Способ по п.11, в котором принимают элемент данных посредством способа приема по п.9.
13. Способ передачи информационного кадра и элемента дополнительных данных внешним устройством в процессор безопасности, причем информационный кадр образован определенным набором битов, обозначающим начало кадра, и другим определенным набором битов, обозначающим конец кадра, а элемент дополнительных данных представляет собой данные, передаваемые в процессор безопасности в дополнение к данным, содержащимся в информационном кадре, при этом способ содержит этапы, на которых:
в ответ на прием запроса вычисляют посредством процессора безопасности элемент дополнительных данных, причем элемент дополнительных данных является ответом на запрос, выбираемым по меньшей мере из двух возможных вариантов ответа на запрос;
вычисляют посредством процессора безопасности время задержки на основании вычисленного элемента дополнительных данных;
задерживают (98) начало передачи информационного кадра от внешнего устройства в процессор безопасности на вычисленное время задержки для осуществления передачи элемента дополнительных данных.
14. Процессор безопасности, содержащий модуль (40) передачи, выполненный с возможностью передачи информационного кадра и элемента дополнительных данных во внешнее устройство, причем информационный кадр образован определенным набором битов, обозначающим начало кадра, и другим определенным набором битов, обозначающим конец кадра, а элемент дополнительных данных представляет собой данные, передаваемые во внешнее устройство в дополнение к данным, содержащимся в информационном кадре;
при этом модуль (40) передачи выполнен с возможностью
вычисления в ответ на прием запроса элемента дополнительных данных, причем элемент дополнительных данных является ответом на запрос, выбираемым по меньшей мере из двух возможных вариантов ответа на запрос;
вычисления времени задержки на основании вычисленного элемента дополнительных данных;
задержки (98) начала передачи информационного кадра от процессора безопасности во внешнее устройство на вычисленное время задержки для осуществления передачи элемента дополнительных данных.
15. Носитель записи данных, содержащий команды для выполнения способа по любому из пп.1-13, когда команды исполняет электронное вычислительное устройство.
Приспособление в пере для письма с целью увеличения на нем запаса чернил и уменьшения скорости их высыхания | 1917 |
|
SU96A1 |
Щелеобразователь | 1989 |
|
SU1742474A1 |
Пресс для выдавливания из деревянных дисков заготовок для ниточных катушек | 1923 |
|
SU2007A1 |
Способ и приспособление для нагревания хлебопекарных камер | 1923 |
|
SU2003A1 |
УСТРОЙСТВО ДЛЯ ПЕРЕДАЧИ ДАННЫХ | 2004 |
|
RU2271612C1 |
Авторы
Даты
2015-02-27—Публикация
2009-12-14—Подача