СИСТЕМА УСЛОВНОГО ДОСТУПА
CONDITIONAL ACCESS SYSTEM

В системах доставки звуковой и видеоинформации с условным доступом (аудиовизуальные или другие) данные обычно доставляются в защищенном виде. Только избранные клиентские устройства, например телевизионные приставки, цифровые телевизоры, персональные компьютеры или мобильные телефоны могут затем воспроизводить, копировать или иным образом использовать данные. Как правило, это подразумевает дескремблирование или дешифрование входящих данных. По причинам безопасности эти операции дескремблирования обычно требуют использования смарт-карты или другого отдельного модуля условного доступа, который владеет правильными ключами дескремблирования.
Большинство этих систем условного доступа создаются в соответствии со стандартом EN50221 Общего Интерфейса (CI) Цифрового видеовещания (DVB) и стандартом ETSI TS 101 699. Следуя терминологии этих стандартов, клиентское устройство в дальнейшем называется "Хостом", а смарт-карта или другой модуль условного доступа называется "CAM" (сокращение для "модуля условного доступа"). Следует учесть, что настоящее изобретение также может использоваться в сочетании с системами условного доступа, которые работают в соответствии с другими стандартами или специализированными системами.
CAM дескремблирует входящие данные и предоставляет результат Хосту для дальнейшего использования. Проблема этого подхода в том, что выходные данные из CAM могут быть захвачены или перенаправлены в незашифрованном виде, что нежелательно.
Чтобы решить эту проблему, уделено внимание защите выходных данных из CAM. Если CAM доставляет выходные данные Хосту в повторно скремблированном виде, незашифрованные данные уже не могут быть захвачены или перенаправлены из передачи от CAM к Хосту. Ключ, который должен использоваться для повторного скремблирования, предпочтительно устанавливается CAM и Хостом вместе, что подразумевает, что Хосту и модулю нужно проверять аутентичность друг друга. Такая схема защиты могла бы стать предметом нового стандарта, определенного DVB или аналогичной организацией.
Одновременно существует потребность в обратной совместимости. Если один из CAM и Хоста обнаруживает, что другой не поддерживает вышеупомянутую схему защиты, он обязан вернуться к существующим стандартам.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Настоящее изобретение впервые признает, что данная потребность в обратной совместимости привносит угрозу безопасности. Процесс обнаружения может выполняться только путем обмена информацией между CAM и Хостом. Эта необходимая информация находится в незашифрованном виде, поскольку у CAM и Хоста нет возможности установить защищенный канал. Такой защищенный канал просто не определен в существующих стандартах CI DVB. Злоумышленник может сейчас манипулировать этим обменом информацией, например, путем блокирования запросов информации или сообщений, которые инициируют протокол аутентификации.
Угроза безопасности состоит в том, что отсутствие соответствующего ответа также может быть вызвано фактом, что другая сторона может работать только в соответствии с существующими стандартами DVB и не поддерживает защищенный обмен данными. Потребность в обратной совместимости предписывает, что данные затем должны доставляться в незашифрованном виде. Злоумышленник соответственно может получить доступ к данным.
Чтобы устранить эту угрозу безопасности, изобретение предоставляет систему условного доступа по п.1. Эта система основывается на понимании, что обнаружение уникального кода, встроенного в поток данных, является более надежным, чем любой обмен информаций между CAM и Хостом для попытки обнаружения, поддерживается ли схема защиты. На основе этого понимания изобретение предлагает, чтобы Хост и модуль условного доступа контактировали друг с другом в протоколе аутентификации при обнаружении этого уникального кода, встроенного во входные или выходные данные.
Предпочтительно код встраивается посредством «водяного знака». Поскольку «водяному знаку» не нужно нести никакой информации, он может быть высококачественным «водяным знаком» с низкой видимостью/слышимостью, который сложно удалить. Схемы применения «водяных знаков», которые удовлетворяют этим требованиям, сами по себе хорошо известны.
В варианте осуществления модуль условного доступа конфигурируется для встраивания кода в выходные данные перед предоставлением выходных данных Хосту, и Хост конфигурируется для инициации протокола аутентификации с модулем условного доступа при обнаружении кода, встроенного в выходные данные. Этот вариант осуществления позволяет CAM указывать его поддержку защищенной передачи данных путем встраивания кода в выходные данные.
В этом варианте осуществления предпочтительно Хост дополнительно конфигурируется для прекращения приема выходных данных при обнаружении кода, встроенного в выходные данные. Обнаружение наличия кода указывает, что Хост взаимодействует с CAM, который поддерживает защищенную передачу данных. Передача выходных данных в незашифрованном виде потом не нужна и даже может быть указывающей на фальсификацию взаимодействия между Хостом и CAM. Поэтому такую передачу следует прекратить, и предпочтительно как можно быстрее.
В дополнительном варианте осуществления модуль условного доступа конфигурируется для инициации протокола аутентификации с Хостом при обнаружении кода, встроенного в выходные данные. В этом варианте осуществления код вставлен посредством CAM перед приемом скремблированного потока данных. Код теперь служит в качестве указания, что выходные данные могут предоставляться Хосту только после успешной аутентификации. Обычно выходные данные будут затем предоставляться в скремблированном виде.
В вариации этого дополнительного варианта осуществления модуль условного доступа конфигурируется, чтобы воздержаться от предоставления выходных данных Хосту, пока протокол аутентификации не завершен успешно.
В еще одном варианте осуществления модуль условного доступа конфигурируется для скремблирования выходных данных с использованием ключа, согласованного в протоколе аутентификации, и для доставки скремблированных выходных данных Хосту. Существует много протоколов аутентификации, которые обеспечивают возможность согласовать ключ. Этот ключ может затем использоваться для повторного скремблирования выходных данных перед предоставлением их Хосту, посредством этого защищая поток данных.
В варианте осуществления Хост конфигурируется для встраивания дополнительного кода, уникального для Хоста, в выходные данные, предоставленные модулем условного доступа. Это дает возможность идентификации Хоста, если незашифрованная, нескремблированная версия выходных данных будет сделана доступной без авторизации.
Предпочтительно код встраивается в выходные данные посредством «водяного знака». «Водяные знаки» сложно обнаружить и еще сложнее удалить без специальной информации о том, где находится «водяной знак». В некоторых случаях обнаружение «водяного знака» требует знания определенного ключа. В качестве альтернативы код встраивается в выходные данные посредством записи кода в поле метаданных в выходных данных. Также возможны другие способы встраивания кода.
В варианте осуществления Хост конфигурируется для обнаружения встроенного кода во входном потоке данных. Это обладает преимуществом в том, что обнаружение встроенного кода может быть легко реализовано в Хосте, поскольку обнаружение требует небольшой обработки входящего потока данных.
В этом варианте осуществления встроенный код предпочтительно указывает на наличие по меньшей мере одного элемента информации во входящем потоке данных, и в котором Хост конфигурируется для ограничения его взаимодействия с модулем условного доступа при обнаружении встроенного кода и сбое в извлечении по меньшей мере одного элемента информации из выходного потока, предоставленного Хосту модулем условного доступа. Преимущество вышеприведенного варианта осуществления в том, что Хост может быстро обнаружить встроенный код и позже обработать информацию, чье наличие помечается. Незаконный CAM не может скрыть эту информацию, потому что Хост знает, что ее нужно ожидать. Когда используется элемент аутентификации, CAM не может им даже манипулировать.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Эти и другие особенности изобретения станут очевидными и разъясненными со ссылкой на пояснительные варианты осуществления, показанные на фигурах, на которых:
фиг.1 схематически показывает систему условного доступа;
фиг.2 схематически показывает первый вариант осуществления этой системы;
фиг.3 схематически показывает второй вариант осуществления этой системы.
На всех фигурах одинаковые номера ссылок указывают аналогичные или соответствующие свойства. Некоторые из свойств, указанных на фигурах, обычно реализуются в программном обеспечении и по существу представляют программные сущности, например программные модули или объекты.
ПОДРОБНОЕ ОПИСАНИЕ ПРЕДПОЧТИТЕЛЬНЫХ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ
Изобретение имеет применение в любой области, где желателен условный доступ к данным. Это включает в себя, но не ограничивается, цифровое телевидение и радио.
Фиг.1 схематически показывает вариант осуществления системы 100 условного доступа. Система содержит Хост 101, который функционально соединен с модулем условного доступа или CAM 110. Хост 101 показан на фиг.1 в виде телевизионной приставки, которая принимает цифровые сигналы телевидения условного доступа от головного узла 120 и предоставляет выходной телевизионный сигнал на экран 130 дисплея, но специалист поймет, что также возможны многие другие варианты осуществления. Например, система 100 условного доступа может быть интегрированной с помощью предоставления Хоста 101 в виде части экрана 130 дисплея, например, применительно к Интегрированному Цифровому Телевидению или Интегрированному Цифровому Телевизору. В качестве альтернативы Хост 101 может предоставляться в виде части мобильного телефона или персонального компьютера, либо любого из многих других устройств. Цифровые сигналы условного доступа также могут содержать звук или данные и могут считываться с носителя информации или приниматься из Интернета или любого другого источника.
Хост 101 содержит приемник 102, который принимает скремблированный поток данных и доставляет этот скремблированный поток данных к CAM 110. Этот скремблированный поток данных предпочтительно содержится в транспортном потоке MPEG-2, хотя, конечно, с тем же успехом могут использоваться другие транспортные протоколы и/или протоколы кодирования или схемы. CAM 110 дескремблирует скремблированный поток данных и предоставляет соответствующие выходные данные Хосту 101, где модуль 103 декодирования декодирует выходные данные, например, путем преобразования программных потоков MPEG-2 в аудиовизуальные сигналы, и доставляет декодированные выходные данные на экран 130 дисплея. Эти операции само по себе являются общеизвестными и не будут дополнительно конкретизироваться.
Предпочтительный вариант осуществления придерживается стандартов CI DVB, упомянутых выше, хотя в принципе любая система условного доступа и любой механизм скремблирования/дескремблирования или шифрования/дешифрования могут использоваться с настоящим изобретением. Важно то, что CAM 110 работает в соответствии с правильным механизмом, так что подходящие выходные данные, соответствующие входным данным, могут предоставляться Хосту 101.
В качестве альтернативы вместо скремблирования входящий поток данных может предоставляться в незашифрованном виде. В этом случае никакого дескремблирования перед встраиванием кода, конечно, не нужно.
В соответствии с настоящим изобретением, Хост 101 и CAM 110 конфигурируются для контакта друг с другом в протоколе аутентификации при обнаружении кода, встроенного в выходные данные. Наличие кода является указанием, что нужно выполнить протокол аутентификации.
В первом варианте осуществления, показанном на фиг.2, CAM 110 содержит встраивающий модуль 115, который встраивает код в выходные данные перед предоставлением Хосту выходных данных. Предпочтительно код встраивается посредством «водяного знака», хотя код также может предоставляться в метаданных, например таблице в системах DVB-CI. Встраивание кода может потребовать использования ключа «водяного знака» или секретного ключа, в зависимости от используемого алгоритма «водяных знаков». Более того, встраивание кода обычно требует, чтобы скремблированные входные данные дескремблировались первыми.
Как показано на фиг.2, встраивающий модуль 115 соединяется с выходом модуля 114 дескремблирования, который, в свою очередь, соединяется с приемным модулем 111, посредством которого скремблированные данные принимаются от Хоста 101. Модуль 114 дескремблирования обычно обладает доступом к носителю 113 хранения с необходимыми ключами дескремблирования или расшифровки. В качестве альтернативы необходимые ключи могут предоставляться со смарт-карты или другого устройства, или загружаться из внешнего расположения. Необходимые ключи могут предоставляться в сочетании или даже в объекте с цифровой подписью, которая указывает одно или несколько разрешенных (лицензированных) действий касательно выходных данных.
Выход встраивающего модуля 115 соединяется с входом передающего модуля 119, который предоставляет Хосту 101 дескремблированные выходные данные со встроенным кодом. Хост 101 в этом варианте осуществления содержит детектор 104 кода, который обрабатывает выходные данные для обнаружения наличия или отсутствия встроенного кода в дескремблированных выходных данных. Обнаружение встроенного кода может потребовать вышеупомянутый ключ «водяного знака» или секретный ключ. Если обнаруживается встроенный код, детектор 104 кода отправляет сигнал модулю 105 аутентификации для инициации протокола аутентификации с соответствующим модулем 118 аутентификации в CAM 110.
Пока протокол выполняется, доставка, декодирование и/или дальнейшая обработка выходных данных может приостанавливаться или не приостанавливаться. Этот выбор зависит от многих факторов, например времени, необходимого для полного выполнения протокола. Если это занимает не более нескольких секунд, может быть приемлемо продолжить доставку, декодирование и дальнейшую обработку выходных данных, пока выполняется протокол. Это гарантирует, что визуальное восприятие пользователя не прерывается, если протокол успешен. Если протокол не может быть завершен успешно, то пользователь получит доступ лишь к нескольким секундам стоящей информации.
Если протокол завершен успешно, то модуль 105 аутентификации сигнализирует модулю 103 декодирования, что декодирование и дальнейшая обработка выходных данных может начинаться или продолжаться.
Предпочтительно Хост 101 прекращает прием незашифрованных выходных данных при обнаружении кода, встроенного в выходные данные. Это уменьшает возможность несанкционированного доступа к этим незашифрованным выходным данным. Выходные данные вместо этого впоследствии могут предоставляться в зашифрованном или скремблированном виде.
Во втором варианте осуществления, показанном на фиг.3, CAM 110 содержит детектор 104 кода, который соединяется с модулем 118 аутентификации. В этом варианте осуществления CAM 110 инициирует протокол аутентификации с Хостом при обнаружении кода, встроенного в дескремблированные данные, предоставленные модулем 114 дескремблирования. После успешной аутентификации выходные данные будут предоставлены Хосту 101.
В этом варианте осуществления предположение состоит в том, что код встроен перед приемом потока данных посредством CAM. Предпочтительный способ реализации этого - заставить встраивать код в головную станцию (в терминологии DVB) или другой передатчик. В качестве альтернативы код может встраиваться поставщиком звуковых или видеоданных.
Один вариант для этого варианта осуществления - сконфигурировать передающий модуль 119, чтобы тот воздерживался от предоставления выходных данных Хосту 101, пока протокол аутентификации не завершен успешно. Это гарантирует, что выходные данные не будут предоставляться несанкционированному Хосту 101. Это может быть реализовано, например, с помощью конфигурирования детектора 104 кода для сигнализации передающему модулю 119, когда могут быть предоставлены выходные данные Хосту 101.
Другой вариант - сконфигурировать CAM 110 для скремблирования выходных данных с использованием ключа, согласованного в протоколе аутентификации, и доставки скремблированных выходных данных Хосту. Это, конечно, требует использования протокола аутентификации, который также предусматривает согласование ключа или ввод ключа в действие. Возможными вариантами являются алгоритм Диффи-Хеллмана и Гиллу-Кискатра, хотя, конечно, могут также использоваться другие протоколы.
Несколько вариантов существуют в этом варианте осуществления для случая, когда аутентификация неуспешна, или Хост не отвечает на запросы для инициации протокола аутентификации. Первый вариант - не доставлять вообще никакие выходные данные. Второй вариант - доставлять ухудшенную, низкокачественную версию выходных данных. Например, качество видео может быть понижено, например, с Высокой четкости (High Definition) до классического телевизионного качества, или может предоставляться только часть всех видеокадров. Качество звука может понижаться аналогичными способами. Звук мог бы даже быть полностью пропущен, соответственно предоставляя выходные данные только с видеосигналом.
Действия могут ограничиваться только для так называемого контента "свободного вещания", только контента, который был предоставлен в нескремблированном виде или другого контента, для которого требование защиты низкое. Такой нескремблированный или "свободный" контент может указывать, что повторная передача разрешается, только если контент скремблируется перед повторной передачей. В таком случае выходные данные такого контента могут блокироваться, когда аутентификация неуспешна.
Другой вариант - обеспечить CAM 110 встраивающим модулем (не показан), посредством которого уникальный код может встраиваться в выходные данные перед тем, как выходные данные предоставляются Хосту 101. Хотя теперь выходные данные могут обрабатываться несанкционированными способами, распространение выходных данных может теперь прослеживаться по меньшей мере до этого конкретного CAM.
Еще один вариант - скремблировать выходные данные с использованием ключа, согласованного в протоколе аутентификации, и доставлять скремблированные выходные данные Хосту 101, как уже упоминалось выше.
В дополнение или в качестве альтернативы к любому из вышеизложенного, CAM 110 может отменить полномочия у Хоста 101, например, путем добавления идентификатора для Хоста 101 в "черный список" или удаления его идентификатора из "белого списка", или путем сообщения идентификатора для Хоста 101 доверенной третьей стороне, которая впоследствии добавляет идентификатор в черный список или удаляет идентификатор из белого списка.
В дополнительном варианте осуществления Хост 101 содержит модуль встраивания дополнительного кода (не показан), который встраивает дополнительный код, уникальный для Хоста, в выходные данные, предоставляемые CAM 110. Такой дополнительный уникальный код может быть, например, порядковым номером, предоставленным в постоянном запоминающем устройстве в Хосте 101. Это снова дает возможность отслеживания в случае несанкционированного дальнейшего распространения выходных данных.
В альтернативном варианте осуществления код встроен во входящий поток данных. Как объяснялось выше со ссылкой на фиг.1, входящий поток данных сначала принимается Хостом 101, а затем передается к CAM 110. В этом варианте осуществления Хост 101 обнаруживает встроенный код перед тем, как поток данных передается к CAM 110. Если обнаруживается код, Хост 101 контактирует с CAM 110 в упомянутом выше протоколе аутентификации.
В этом варианте осуществления встроенный код предпочтительно содержит сообщение с элементом аутентификации, позволяющим аутентификацию сообщения как происходящего от уполномоченного поставщика услуг, например цифровой подписью или кодом аутентификации сообщений (MAC), созданным поставщиком услуг.
В этом варианте осуществления встроенный код предпочтительно содержит один или несколько элементов информации, например номер версии, флаг для указания, что в потоке доступна информация из черного списка или белого списка, флаг для указания, что в потоке доступны информация об управлении копированием или данные о правах, или флаг для указания, что требуется повторное скремблирование данных. Если обнаруживается какой-нибудь из флагов, Хост 101 предполагает, что указанная информация должна быть доступна в потоке, который возвращен передающим модулем 119 в CAM 110.
Встроенные флаги могут предоставляться в некоторых предопределенных положениях во входящем потоке данных, например, каждые несколько секунд или вслед за каждой таблицей или кадром конкретного типа. Это способствует более простому обнаружению встроенных флагов.
Незаконный CAM 110 не может удалить черный список, белый список, управление копированием или другую информацию в потоке, потому что Хост 101 ожидает эту информацию в выходных данных. Если информация предоставляется вместе с элементом аутентификации, например цифровой подписью или кодом аутентификации сообщений (MAC), созданным поставщиком услуг, информацию нельзя подделать в любом случае.
Конечно, Хост 101 также мог бы напрямую извлечь черный список, белый список, управление копированием или другую информацию из входящего потока. Это, однако, обладает недостатком в том, что извлечение такой информации является сложным и отнимающим много времени.
Если присутствует код, но никакой информации, которая предполагается, как указано флагом (флагами), не обнаруживается в выходных данных, то Хост 101 должен ограничить взаимодействие с модулем условного доступа способом, аналогичным упомянутым выше вариантам для случая, когда аутентификация между Хостом 101 и CAM 110 терпит неудачу.
Следует отметить, что вышеупомянутые варианты осуществления скорее иллюстрируют, а не ограничивают изобретение, и специалисты в данной области техники смогут спроектировать многие альтернативные варианты осуществления без отклонения от объема прилагаемой формулы изобретения. Например, хотя изобретение представлено выше применительно к системе условного доступа в стиле DVB, изобретение с тем же успехом может использоваться в системах, которые предоставляют более сложные формы управления цифровыми правами, например Управление цифровыми правами (DRM) версии 2.0 Открытого альянса мобильной связи (OMA). Это может применяться, в частности, когда DRM используется для систем с однонаправленной связью, например телевидение или радиовещание.
В качестве другого примера детектор 104 кода может попытаться обнаружить код с несколькими интервалами. Это позволяет детектору 104 игнорировать сбой в обнаружении кода в некоторых из нескольких попыток обнаружения. Это также позволяет Хосту 101 и CAM 110 периодически повторно аутентифицировать друг друга.
Хотя выше использовано слово "скремблирование", это указывает любое преобразование сигнала, которое делает сигнал неразборчивым без специальных сведений, например ключа. В совместимых с DVB системах условного доступа использовался бы Общий Алгоритм Скремблирования. Системы DRM часто используют схемы шифрования, такие как AES, 3DES или DES.
В формуле изобретения любые знаки ссылок, помещенные в круглых скобках, не следует истолковывать в качестве ограничивающих формулу изобретения. Слово "содержащий" не исключает наличия элементов или этапов, отличных от перечисленных в формуле изобретения. Неопределенное указание, предшествующее элементу, не исключает наличия множества таких элементов. Изобретение может быть реализовано посредством аппаратных средств, содержащих несколько отдельных элементов, и посредством соответствующим образом запрограммированного компьютера.
В пунктах формулы для устройства, перечисляющих несколько средств, некоторые из этих средств могут быть реализованы с помощью одного и того же элемента аппаратных средств. Сам факт, что некоторые критерии перечисляются во взаимно разных зависимых пунктах формулы изобретения, не указывает на то, что сочетание этих критериев не может использоваться с пользой.