Устройство, сконфигурированное для обмена данными, и способ аутентификации

Иллюстрации

Показать все

Первое устройство, сконфигурированное для обмена данными со вторым устройством. Первое устройство принимает из второго устройства сертификат, содержащий открытый ключ (UPK) для второго устройства. Затем первое устройство аутентифицирует второе устройство как сильно защищенное устройство после успешной проверки принятого сертификата с помощью открытого ключа центра сертификации (САРК), если открытый ключ центра сертификации доступен, и аутентифицирует второе устройство как слабо защищенное устройство после успешной проверки принятого сертификата с помощью локально доступного открытого ключа (SPK). Второе устройство делает то же самое, чтобы выполнить взаимную аутентификацию. Выполнив аутентификацию друг друга, первое и второе устройства могут безопасно установить ключи сеанса и обмениваться данными, что является техническим результатом. 2 н. и 7 з.п. ф-лы, 7 ил.

Реферат

Изобретение относится к первому устройству, сконфигурированному для обмена данными со вторым устройством, и к способу аутентификации удаленного устройства.

При обмене данными между устройством-источником и устройством-приемником часто желательно, чтобы устройства могли аутентифицировать друг друга. Таким образом, источник знает, что он посылает данные в достоверный приемник, а приемник знает источник данных, которые он принимает. Это важно, например, когда приемник должен загружать новое программное обеспечение, а также при распространении данных в соответствии с правилами управления цифровыми правами (DRM).

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

Однако этот подход требует, чтобы другое устройство каким-либо образом получило сертификат для устройства, которое оно желает аутентифицировать. Кроме того, подход является «черно-белым»: либо аутентификация является успешной, либо нет, и в последнем случае устройства не могут обмениваться данными взаимно доверительным образом. Конечно, устройства могут иметь множество открытых ключей с множеством ассоциированных сертификатов, но этим сложно и трудно управлять. Более важно то, что это требует взаимодействия с центром сертификации для того, чтобы выпускать сертификаты.

ЕР-А-0592808 раскрывает механизм распространения ключа, который использует канал распространения ключа между двумя устройствами. Устройства совместно используют ключ шифрования ключа, который установлен как часть инициализации системы. Ключ сеанса шифруется с помощью ключа шифрования ключа в первом устройстве и дешифруется с помощью того же самого ключа во втором устройстве (столбец 12, строки 33-34). Однако аутентификация между устройствами для распространенного доверительным образом ключа сеанса не выполняется. Также механизм не является прозрачным в том смысле, что нет простого способа, чтобы переключаться из вышеупомянутого подхода, основанного на сертификате, к этому механизму распространения ключа и наоборот.

US-В-5949883 раскрывает систему шифрования, которая обеспечивает прозрачную и изменяемую защиту между окружением высокого доверия и низкого доверия. Она выполняет это с помощью выбора общего алгоритма шифрования, например стандарта шифрования данных DES, в обоих окружениях и фиксирования ряда битов ключей в устройствах в окружении низкого доверия. Таким образом, устройство в окружении низкого доверия может шифровать данные для устройства в окружении высокого доверия, которые затем могут быть расшифрованы. К зашифрованным данным также могут осуществить доступ правоохранительные органы с помощью взламывания ключа, так как ряд битов ключа фиксирован. Однако устройство в окружении высокого доверия не может установить, сообщается ли оно с другим устройством в окружении высокого доверия или с устройством в окружении низкого доверия.

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

Эта задача выполняется, в соответствии с изобретением, в первом устройстве, содержащем

- средство приема, предназначенное для приема из второго устройства сертификата для открытого ключа (UPK) для второго устройства и

- средство аутентификации, предназначенное для аутентификации второго устройства как сильно защищенного устройства после успешной проверки принятого сертификата с помощью открытого ключа центра сертификации (CAPK), если открытый ключ центра сертификации доступен, и аутентификации второго устройства как слабо защищенного устройства после успешной проверки принятого сертификата с помощью локально доступного открытого ключа (SPK).

Первое или второе устройство может быть источником, тогда другое является приемником. Сертификат, принятый из второго устройства, может быть подписан либо центром сертификации, либо посредством секретного ключа, имеющегося во втором устройстве. В последнем случае первое устройство должно иметь соответствующий локально доступный открытый ключ. Этот случай менее безопасен, поскольку в данном случае нет независимой третьей стороны, которая может поручиться за аутентичность и достоверность сертификата. Из-за этой причины второе устройство в этом случае аутентифицируют как слабо защищенное устройство. Этапы аутентификации, отмеченные выше, предпочтительно выполняют как с помощью первого, так и второго устройства. Таким образом, реализуется взаимная аутентификация.

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

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

Предпочтительно переданный сертификат является сертификатом, подписанным центром сертификации, если второе устройство аутентифицировано как сильно защищенное устройство, и сертификат является сертификатом, подписанным с помощью локально доступного секретного ключа (SSK), если второе устройство аутентифицировано как слабо защищенное устройство.

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

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

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

Из-за своей простоты этот способ генерирования ключа шифрования данных может использоваться для существенного уменьшения объема обработки в устройствах сопряжения или «неинтеллектуальных» запоминающих устройствах. Кроме того, не требуется связь между источником и приемником для генерирования ключей шифрования во время сеанса.

Предпочтительно генератор ключа слабого шифрования дополнительно сконфигурирован для последующего вычисления второго хеш-кода конкатенации первого хэш-кода и локально доступного секретного ключа и использования второго хеш-кода вместо первого хеш-кода. Таким образом, источник и приемник могут регулярно обмениваться ключами таким образом, что компрометация одного ключа шифрования данных является только временной проблемой. Поскольку локально доступный секретный ключ является по-прежнему (предположительно) секретным, хеш-код конкатенации предыдущего ключа с секретным ключом не может быть предсказан взломщиком.

В дополнительном варианте осуществления первое устройство дополнительно содержит средство установления сеанса для создания контейнера, содержащего ключ сеанса и данные управления цифровыми правами, подписи контейнера с помощью секретного ключа (USK), соответствующего открытому ключу (UPK) для первого устройства, шифрования подписанного контейнера с помощью открытого ключа (UPK) для второго устройства и передачи подписанного и зашифрованного контейнера во второе устройство.

Сеанс может устанавливаться каждый раз, когда источник желает послать контент (информационно значимое содержимое) в приемник. Таким образом, сеанс может быть загрузкой музыкальной записи из источника в приемник, копированием всего компакт-диска, записью футбольного матча и т. д.

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

В дополнительном варианте осуществления первое устройство дополнительно содержит средство установления сеанса для приема из второго устройства подписанного и зашифрованного контейнера, расшифровывания контейнера с помощью секретного ключа (USK), соответствующего открытому ключу (UPK) для первого устройства, проверки подписи с помощью открытого ключа (UPK) для второго устройства и получения ключа сеанса и данных управления цифровыми правами из контейнера.

Дополнительной задачей изобретения является предоставить способ в соответствии с преамбулой, который аутентифицирует второе устройство прозрачным и масштабируемым образом.

Эта задача выполняется, в соответствии с изобретением, способом, содержащим этапы, на которых

- принимают из удаленного устройства сертификат, содержащий открытый ключ (UPK) для удаленного устройства,

- аутентифицируют удаленное устройство как сильно защищенное устройство после успешной проверки принятого сертификата с помощью открытого ключа центра сертификации (САРК), если открытый ключ центра сертификации доступен, и аутентифицируют второе устройство как слабо защищенное устройство после успешной проверки принятого сертификата с помощью локально доступного открытого ключа (SPK).

Изобретение дополнительно относится к компьютерному программному продукту, сконфигурированному для того, чтобы предписывать процессору выполнять способ в соответствии с изобретением.

Эти и другие аспекты изобретения будут понятны и объяснены со ссылкой на варианты осуществления, изображенные на чертежах, на которых:

фиг.1 схематически изображает вариант осуществления устройства, содержащего устройства-источники и устройства-приемники;

фиг.2 - блок-схема алгоритма, изображающая способ аутентификации в устройстве-источнике;

фиг.3 - блок-схема алгоритма, изображающая способ аутентификации в устройстве-приемнике;

фиг.4 - блок-схема алгоритма, изображающая способ установления сеанса связи с устройством-приемником, выполняемый в устройстве-источнике;

фиг.5 - блок-схема алгоритма, изображающая способ установления сеанса связи с устройством-источником, выполняемый в устройстве-приемнике;

фиг.6 - блок-схема алгоритма, изображающая способ генерирования ключа для устройств, взаимно аутентифицированных как слабо защищенные;

фиг.7 - блок-схема алгоритма, изображающая способ генерирования ключа для устройств, взаимно аутентифицированных как сильно защищенные;

фиг.8 схематически изображает вариант осуществления устройства, содержащего устройство источника, устройство приемника и два устройства сопряжения.

На всех фигурах одинаковые ссылочные номера обозначают подобные или соответствующие средства. Некоторые из признаков средств, указанных на чертежах, обычно реализуются как программное обеспечение, и таким образом, представляют элементы программного обеспечения, такие как программные модули или объекты.

Архитектура системы

Фиг.1 схематически изображает систему 100, содержащую устройства-источники 110, 120 и устройства-приемники 130, 140. В этом тексте понятие «устройство-источик» или просто «источник» для краткости, указывает устройство, которое имеет данные, передаваемые в другое устройство, «устройство-приемник» или просто «приемник» для краткости. Устройство-источник обычно начинает с установления сеанса связи с устройством-приемником.

Иллюстративные варианты осуществления устройств-источников и устройств-приемников включают в себя аудио/видео приемники и плееры, телеприставки, компьютеры общего назначения, мобильные телефоны, приложения Internet и т. д. Когда устройство-источник или устройство-приемник работает в соответствии с изобретением, как описано в настоящем описании, говорят, что оно «поддерживает SCOP». SCOP означает «масштабируемая защита контента», и это то, что обеспечивает изобретение.

Данные, которые передаются, могут быть любого типа. В предпочтительном варианте осуществления данные представляют элементы контента, такие как музыка, видео, изображение, текст или другие потенциально ценные материалы. Такие данные должны передаваться секретным образом, чтобы предотвратить несанкционированный доступ. Например, данные могли бы иметь ассоциированные правила управления цифровыми правами (DRM), которые ограничивают воспроизведение и/или копирование данных. Такие данные должны передаваться только между устройствами, которые придерживаются правил DRM, и которые обеспечивают соблюдение ограничений в правилах.

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

На фиг.1 устройства 110 и 130 являются сильно защищенными устройствами, в то время как устройства 120 и 140 являются слабо защищенными устройствами.

Все устройства 110, 120, 130, 140:

- безопасно хранят (невозможно читать/модифицировать/заменить) уникальный секретный ключ (USK);

- безопасно хранят (невозможно модифицировать/заменить) соответствующий уникальный открытый ключ (UPK);

- безопасно хранят (невозможно читать/модифицировать/заменить) совместно используемый секретный ключ (SSK);

- безопасно хранят (невозможно модифицировать/заменить) соответствующий совместно используемый открытый ключ (SPK).

Сильно защищенные устройства 110, 130 также:

- безопасно хранят (невозможно модифицировать/заменить) сертификат, подписанный центром сертификации, содержащим уникальный открытый ключ UPK (CUPK);

- безопасно хранят (невозможно модифицировать/заменить) открытый ключ центра сертификации (CAPK).

Устройства, которые поддерживают депонирование ключей, также будут безопасно хранить (невозможно читать/модифицировать/заменить) секретный ключ (ESK) Для того чтобы безопасно хранить ключи, устройства 110, 120, 130, 140 обеспечены соответствующими защищенными запоминающими устройствами 111, 121, 131, 141. Заметим, что «чтение» в этом контексте означает чтение с помощью объекта, внешнего по отношению к устройству. Конечно, само устройство должно читать секретный ключ для того, чтобы расшифровывать сообщения или генерировать подписи.

Защищенное запоминающее устройство может быть обеспечено, например, на смарт-карте. В этом случае смарт-карта также может содержать защищенный центральный процессор (CPU), который может выполнять необходимые операции шифрования, расшифровывания, генерирования подписи и проверки. Тогда секретные ключи являются нечитаемыми даже с помощью устройств, в которые вставляется смарт-карта.Устройства содержат соответствующие модули 112, 122, 132, 142 передачи и модули 113, 123, 133, 143 приема для передачи и приема сообщений от других устройств. Устройства-источники и устройства-приемники соединены друг с другом некоторым образом. На фиг.1 имеется сеть 150, соединяющая устройства 110, 120, 130, 140. Эта сеть может быть, например, локальной сетью (LAN), кабельной сетью или глобальной сетью, такой как Internet. Соединение между устройствами может быть проводным или беспроводным, например, с использованием соединения стандарта IEEE 1394, 802.11, HIPERLAN или Bluetooth.

Взаимная аутентификация

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

Способы аутентификации используют шифрование с открытым ключом. Предпочтительно используется шифрование на основе эллиптической кривой как для подписи, так и для шифрования. Конечно, также могут использоваться другие системы с открытым ключом, такие как RSA (Ривеста-Шамира-Эдльмана) или Диффи-Хелмана (Diffe-Hellman). Такие шифровальные системы широко известны в данной области техники.

Фиг.2 - блок-схема алгоритма, иллюстрирующая способ аутентификации в устройстве-источнике. Поскольку сильно защищенный приемник должен быть способным взаимодействовать со слабо защищенным источником, именно источник будет инициировать взаимную аутентификацию, чтобы приемник мог идентифицировать, какой уровень защиты использовать. Для того чтобы выполнить аутентификацию, устройства-источники имеют соответствующие модули 114, 124 аутентификации.

На этапе 200 устройство источника начинает выполнять способ аутентификации. Сначала на этапе 210 модули 114, 124 аутентификации определяют, имеется ли сертификат CUPK для уникального открытого ключа UPK. Если это так, тогда устройство-источник является сильно защищенным. Таким образом, модуль 114 аутентификации обнаружит, что сертификат CUPK имеется, но модуль 124 аутентификации не обнаружит этого. Модуль 114 аутентификации затем активирует (этап 240) модуль 112 передачи, чтобы послать сертификат CUPK в устройство приемника.

Модуль 124 аутентификации вместо этого генерирует на этапе 230 сертификат для своего уникального открытого ключа UPK и подписывает его, используя совместно используемый секретный ключ SSK. Затем он активирует (этап 240) модуль 122 передачи, чтобы послать сгенерированный сертификат в устройство-приемник. Устройство-источник 120 также может иметь сертификат для своего уникального открытого ключа UPK, подписанный с использованием совместно используемого секретного ключа SSK, имеющегося в защищенном запоминающем устройстве 121. Таким образом, необходимо, чтобы этот сертификат был сгенерирован только один раз.

Модули 113, 123 приема затем ждут на этапе 250, чтобы устройство приемника ответило сертификатом для открытого ключа устройства приемника. Операции, выполняемые в устройстве приемника для ответа таким сертификатом, обсуждены ниже со ссылкой на фиг.3.

Приняв сертификат для открытого ключа устройства-приемника, модули 113, 123 приема подают его в модули 114, 124 аутентификации. Модули 114, 124 аутентификации затем определяют (этап 260), имеется ли открытый ключ CAPK для центра сертификации (СА). Этот СА может быть, но не обязательно, тем же, что и СА, который выпустил сертификат CUPK. Модуль 114 аутентификации обнаружит, что открытый ключ CAPK имеется, а модуль 124 аутентификации этого не обнаружит. Обычно открытый ключ CAPK является частью сертификата для СА, выпущенного самим СА или другим СА.

Модуль 114 аутентификации пытается проверить (этап 270) принятый сертификат, используя открытый ключ CAPK. Затем он определяет (этап 280), успешна ли проверка. Если это так, то приемник аутентифицируется (этап 290) как сильно защищенный приемник. Если же нет, тогда аутентификация приемника завершается неуспешно (этап 291), поскольку сильно аутентифицированному источнику не разрешено сообщаться со слабо защищенным приемником.

Модуль 124 аутентификации пытается проверить (этап 275) принятый сертификат, используя совместно используемый открытый ключ SPK. Затем он определяет (этап 285), успешна ли проверка. Если это так, то приемник аутентифицируется 292 как слабо защищенный приемник. Если же нет, тогда аутентификация приемника завершается неуспешно 291.

Фиг.3 - блок-схема алгоритма, изображающая способ аутентификации в устройстве-приемнике. Поскольку сильно защищенный приемник должен быть способным взаимодействовать со слабо защищенным источником, именно источник будет инициировать взаимную аутентификацию, чтобы приемник мог идентифицировать, какой уровень защиты использовать. Для того чтобы выполнить аутентификацию, устройства-приемники имеют соответствующие модули 134, 144 аутентификации.

На этапе 300 устройство приемника начинает выполнять способ аутентификации. Сначала на этапе 310 модули 133, 143 приема принимают из устройства-источника сертификат для открытого ключа для устройства-источника. Напоминаем читателю, что этот сертификат был послан устройством-источником на этапе 240 в блок-схеме алгоритма по фиг.2.

Приняв сертификат для открытого ключа устройства-источника, модули 133, 143 приема подают его в модули 134, 144 аутентификации, которые затем определяют (этап 320), имеется ли открытый ключ САРК для центра сертификации (СА). Этот СА может быть, но не обязательно, тем же, что и СА, который выпустил сертификат CUPK. Модуль 134 аутентификации обнаружит, что открытый ключ CUPK имеется, но модуль 144 аутентификации этого не обнаружит.

Модуль 134 аутентификации затем пытается проверить (этап 330) принятый сертификат, используя открытый ключ САРК. Затем он определяет (этап 340), успешна ли проверка. Если это так, то источник аутентифицируется как сильно защищенный источник. Если же нет, то модуль 134 аутентификации переходит к этапу 350.

На этапе 350 модули 134, 144 аутентификации пытаются проверить принятый сертификат, используя совместно используемый открытый ключ SPK. Затем они определяют (этап 360), успешна ли проверка. Если это так, то источник аутентифицируется как слабо защищенный источник. Если же нет, тогда аутентификация источника завершается неуспешно (этап 375).

Успешно аутентифицировав источник как слабо защищенный источник, модули 134, 144 аутентификации генерируют (этап 370) сертификат для своих уникальных открытых ключей UPK и подписывают его, используя совместно используемый секретный ключ SSK.

На этапе 380 модули 134, 144 аутентификации активируют соответствующие модули 132, 142 передачи, чтобы послать сгенерированный сертификат в устройство-источник. Устройства-приемники 130, 140 также могут иметь сертификат для своих уникальных открытых ключей UPK, подписанный с использованием совместно используемого секретного ключа SSK, имеющегося в защищенном запоминающем устройстве 131, 141. Таким образом, необходимо, чтобы этот сертификат был сгенерирован только один раз.

Чтобы объяснить взаимодействия между способами аутентификации, выполняемыми в устройствах-источниках и устройствах-приемниках, ниже представлены четыре возможных комбинации сильно и слабо защищенных источников и приемников и процессы в каждом из них.

Сильно защищенный источник и сильно защищенный приемник

Сильно защищенный источник посылает сертификат, подписанный центром сертификации (CUPK). Сильно защищенный приемник примет это сертификат и проверит его, используя открытый ключ центра сертификации (САРК). Если подпись не совпадает, то сильно защищенный приемник проверит сертификат, используя свой совместно используемый открытый ключ (SPK). Если по-прежнему нет совпадения (что может произойти), то сильно защищенный приемник преждевременно завершит протокол.

Однако если подпись совпадает во время первой проверки, то сильно защищенный приемник знает, что источник использует сильную защиту и, в свою очередь, пошлет свой сертификат, подписанный центром сертификации (CUPK). Сильно защищенный источник примет этот сертификат и проверит его, используя открытый ключ центра сертификации (САРК). Если подпись не совпадает, то протокол преждевременно завершается. После совпадения оба устройства будут аутентифицированы для сильной защиты, и оба устройства будут иметь уникальный открытый ключ (UPK) другого устройства.

Слабо защищенный источник и сильно защищенный приемник

Слабо защищенный источник начнет с создания сертификата для своего уникального открытого ключа (UPK) и подпишет его, используя совместно используемый секретный ключ (SSK). Этот этап создания может быть выполнен заранее, чтобы сэкономить ресурсы. Сертификат будет послан в сильно защищенный приемник. Сильно защищенный приемник примет подписанный сертификат и проверит его, используя открытый ключ центра сертификации (САРК). Если подпись не совпадает (что может произойти), то сильно защищенный приемник проверит сертификат, используя свой совместно используемый открытый ключ (SPK). Если по-прежнему нет совпадения, то сильно защищенный приемник преждевременно завершит протокол.

Однако если совпадение обнаружено, то сильно защищенный приемник знает, что источник поддерживает только слабую защиту и, в свою очередь, создаст сертификат (это могло бы быть сделано заранее, чтобы сэкономить ресурсы) для своего уникального открытого ключа (UPK) и подпишет его, используя совместно используемый секретный ключ (SSK). Этот сертификат будет послан в источник. Когда источник примет сертификат из приемника, он проверит его, используя свой совместно используемый открытый ключ (SPK). Если подпись не совпадает, то источник преждевременно завершит протокол. При наличии совпадения оба устройства будут аутентифицированы для слабой защиты, и оба устройства будут иметь уникальный открытый ключ (UPK) другого устройства.

Слабо защищенный источник и слабо защищенный приемник

Слабо защищенный источник начнет с создания сертификата для своего уникального открытого ключа (UPK) и подпишет его, используя совместно используемый секретный ключ (SSK). Этот этап создания может быть выполнен заранее, чтобы сэкономить ресурсы. Сертификат будет послан в слабо защищенный приемник. Слабо защищенный приемник примет подписанный сертификат и проверит его, используя свой совместно используемый открытый ключ (SPK). Если нет совпадения, то слабо защищенный приемник преждевременно завершит протокол.

Однако если совпадение обнаружено, то слабо защищенный приемник, в свою очередь, создаст сертификат для своего уникального открытого ключа (UPK) и подпишет его, используя совместно используемый секретный ключ (SSK). Этот этап создания может быть выполнен заранее, чтобы сэкономить ресурсы. Этот сертификат будет послан в источник. Когда источник примет сертификат из приемника, он проверит его, используя свой совместно используемый открытый ключ (SPK). Если нет совпадения, то слабо защищенный источник преждевременно завершит протокол. При наличии совпадения оба устройства будут аутентифицированы для слабой защиты, и оба устройства будут иметь уникальный открытый ключ (UPK) другого устройства.

Сильно защищенный источник и слабо защищенный приемник

Сильно защищенный источник непосредственно пошлет свой сертификат, подписанный центром сертификации (CUPK). Слабо защищенный приемник примет этот сертификат и проверит его, используя свой совместно используемый ключ (СОК). Если нет совпадения (что может произойти), то слабо защищенный приемник преждевременно завершит протокол. Таким образом, аутентификация будет всегда завершаться неуспешно. Иными словами, сильно защищенный источник никогда не аутентифицирует слабо защищенный приемник и, следовательно, никакие данные не будут передаваться из источника в приемник.

Установление сеанса

Когда источник и приемник взаимно аутентифицированы, необходимо установить сеанс. Обычно аутентификация должна быть выполнена, когда источник и приемник соединяются друг с другом в первый раз, в то время как сеанс должен устанавливаться каждый раз, когда источник желает послать контент в приемник. Таким образом, сеанс может быть загрузкой музыкальной записи из источника в приемник, копированием всего компакт-диска, записью футбольного матча и т. д.

В начале каждого сеанса контейнер должен быть безопасным образом передан из источника в приемник. Этот контейнер будет содержать ключ сеанса SK, случайно выбранный источником, и в зависимости от того, является ли приложение системой управления цифровыми правами (DRM) или нет, он также будет содержать описание цифровых прав, ассоциированных с контентом, который будет передаваться во время сеанса.

Эти цифровые права должны быть проинспектированы обоими взаимно аутентифицированными устройствами, чтобы проверить, что передача контента разрешена. Как это выполняется, будет описано ниже. Защищенная посылка описания цифровых прав в контейнере позволяет устройствам сопряжения или «неинтеллектуальным» запоминающим устройствам, которые, вероятно, не понимают формат контента, правильно оперировать этим контентом без необходимости обрабатывать сам контент. Если приложению потребуется, то дополнительная информация также может быть сохранена в контейнере.

Фиг.4 - блок-схема алгоритма, изображающая способ установления сеанса связи с устройством-приемником, выполняющийся в устройстве-источнике. Установлением сеанса управляют модули 115, 125 установления сеанса.

Способ начинается на этапе 400. Сначала на этапе 410 модули 115, 125 установления сеанса проверяют, должны ли данные, подлежащие обмену в этом сеансе, поддерживать правила DRM. Если это так, то на этапе 411 получают описание прав для данных и выполняют проверку в отношении того, действительно ли данные могут передаваться в приемник. Если эта проверка неуспешна, то модули 115, 125 установления сеанса преждевременно завершают сеанс на этапе 413.

На этапе 420 выбирают случайное число SK, которое будет служить в качестве ключа сеанса для этого конкретного сеанса. Как широко известно, в области шифрования, важно выбрать в высокой степени непредсказуемое число в качестве ключа сеанса. В идеальном случае это число является совершенно случайным, но это является очень дорогостоящим и трудно выполнимым, таким образом, обычно число SK генерируют псевдослучайным способом. Размер ключа SK сеанса будет изменяться в зависимости от выбранного уровня схемы защиты в соответствии с хорошо определенными таблицами.

Затем на этапе 430 выполняют определение, должно ли быть использовано депонирование ключа для этого сеанса. Один способ депонирования ключа описан в международной патентной заявке РСТ/ЕР/01/11722 (индекс патентного поверенного PHNL000558), того же самого заявителя, что и заявитель настоящей заявки.

С помощью смешивания относительно небольшого ключа SK сеанса с более длинным секретным ключом (ESK) и использования результирующего ключа RK в качестве ключа сеанса взламывание схемы защиты станет более трудным для злоумышленных пользователей (которые не знают ESK), но более легким для органов власти или владельцев контента (которые знают ESK).

Однако следует заметить, что это вносит возможную угрозу безопасности в схему защиты. Было бы наивно думать, что злоумышленные пользователи, в конце концов, не обнаружат секретный ключ ESK с помощью кражи его у плохо защищенных органов власти/владельцев контента или с помощью подкупа одного из многочисленных участников, имеющих доступ к нему. Если должно быть использовано депонирование, тогда ключ ESK депонирования смешивают (этап 440) со случайным числом SK и результат используют как ключ сеанса.

На этапе 450 модули 115, 125 установления сеанса генерируют контейнер. Этот контейнер будет содержать ключ SK сеанса и, в зависимости от того, является ли приложение системой управления цифровыми правами (DRM) или нет, он также будет содержать описание цифровых прав, ассоциированных с контентом, который будет передаваться во время сеанса.

Затем модули 115, 125 установления сеанса подписывают (этап 460) контейнер, используя свои собственные соответствующие уникальные секретные ключи USK, и шифруют (этап 470) результат с помощью уникального открытого ключа UPK для приемника, этот ключ принимают и аутентифицируют, как описано выше со ссылкой на фиг.2. Подписанный и зашифрованный контейнер затем посылают (этап 480) в приемник. На этапе 490 способ завершается.

Фиг.5 - блок-схема алгоритма, изображающая способ установления сеанса связи с устройством-источником, выполняемый в устройстве-приемнике. Установлением сеанса в устройствах-приемниках 130, 140 управляют модули 135, 140 установления сеанса. На этапе 500 способ начинается. Модули 135, 140 установления сеанса принимают подписанный и зашифрованный контейнер на этапе 510.

После приема подписанного и зашифрованного контейнера модули 135, 140 установления сеанса сначала расшифровывают его на этапе 520, используя свои собственные уникальные секретные ключи USK. Затем на этапе 530 они проверяют подпись, используя уникальный открытый ключ UPK, который был принят и аутентифицирован, как описано выше со ссылкой на фиг.3.

Затем контейнер анализируют 540 для того, чтобы извлечь ключ SK сеанса и, если он имеется, описание цифровых прав, ассоциированных с контентом, который будет принят во время сеанса.

Затем на этапе 550 модули 135, 140 установления сеанса определяют, имеются ли какие-либо цифровые права. Если это так, то на этапе 551 модули 135, 140 установления сеанса извлекают эти права из контейнера и проверяют (этап 552), имеется ли право на передачу данных во время сеанса. Если нет, то сеанс не разрешен (этап 553).

Если цифровые права не были обнаружены, или обнаруженные права содержат право на передачу данных во время сеанса, тогда на этапе 560 извлекают случайное число SK, которое доступно для использования в качестве ключа сеанса. На этапе 570 способ завершается.

Шифрование передаваемых данных

Данные, подлежащие передаче из источника в приемник,