Способы создания, системы и архитектуры защищенных медиаканалов
Иллюстрации
Показать всеИзобретение относится к способам и системам обработки визуализируемой цифровой информации. Техническим результатом является защита от несанкционированного доступа или дублирования незащищенной информации сразу же после того, как эта информация достигает визуализирующего устройства, такого как компьютер пользователя. Система защиты визуализируемых цифровых данных содержит множество вычислительных устройств, при этом, по меньшей мере, одно из них является главным устройством, а, по меньшей мере, другое - удаленным вычислительным устройством, причем каждое из указанных устройств содержит один или более компонентов обработки, конфигурированных для использования в цепочке обработки данных, состоящей из компонентов обработки защищенной информации, подлежащей визуализации для пользователя, отдельные компоненты обработки, поддерживающие один или более из таких интерфейсов, как аутентифицируемый интерфейс и интерфейс-посредник аутентификации, причем интерфейс-посредник аутентификации обеспечивает считывание аутентификаторов и запись аутентификаторов, а аутентификатор использует каждый из упомянутых один или более списков для проверки каждого компонента в каждом из одного или более списков, чтобы установить полномочные компоненты, при этом полномочный компонент может принимать незашифрованные данные. Способы описывают работу этой системы. 20 н. и 50 з.п. ф-лы, 8 ил.
Реферат
Область техники
Изобретение относится к способам и системам защиты визуализируемых цифровых данных, таких как аудио- и видеоданные и т.п. В частности, изобретение относится к способам и системам защиты цифровых данных.
Известный уровень техники
Защита собственности в виде цифровой информации, такой как мультимедийная информация и т.п., и прав использования такой информации уполномоченными пользователями приобрела в последние годы очень большое значение. Важность защиты такой информации неизбежно продолжит расти в той степени, в какой облегчается распространение информации, в частности, в среде вычислительных сетей, такой как Интернет.
Существуют многочисленные сценарии, при реализации которых можно получить прибыль и преуспеть за счет использования способов защиты информации. Например, поставщикам информации в виде кинофильмов будет легче продавать свою информацию непосредственно отдельным потребителям, если эти поставщики будут уверены, что их информация защищена. Кроме того, потребителям будет легче и удобнее получать информацию в виде услуг по подписке (например, от поставщиков информации кабельного телевидения, с цифрового спутника, вещающего на основе оплаты за каждый сеанс просмотра, и т.п.). Помимо этого, пользователи смогут хранить и воспроизводить информацию позже или делать копии для себя, одновременно сохраняя гарантию охраны прав владельцев информации. Кроме того, пользователи смогут создавать свою собственную информацию, зная, как им можно ограничить права тех, кто захочет ее просмотреть. Например, пользователь может посылать частные домашние видеофильмы на Web-сайт и позволять просматривать их только другим членам своей семьи в течение ограниченного периода времени.
Когда содержательные материалы передаются в некоторое устройство и воспроизводятся для пользователя, как правило, требуется хорошо организованная архитектура (компонентов как программного, так и аппаратного обеспечения), чтобы координировать воспроизведение и гарантировать, что права на цифровую информацию защищены и поддерживаются. Зачастую защищенная информация передается в устройство пользователя (например, вычислительное устройство, компьютерную приставку к телевизору и т.п.) из источника информации, такого как видео-Web-сервер, или даже с локального жесткого диска. Как правило, информацию можно закодировать или сжать и зашифровать в источнике информации. После этого устройство пользователя расшифровывает информацию, осуществляет декомпрессию и отображает или иным образом визуализирует эту информацию для пользователя, например, на мониторе и/или с помощью динамиков.
Информацию обычно защищают, пользуясь способами управления правами на цифровую информацию (DRM), разработка и развитие которых продолжаются. При осуществлении способов DRM, как правило, используют программное обеспечение, которое гарантирует распространение и - что, вероятно, важнее - предотвращает незаконное распространение платной информации через сеть, такую как Web. В настоящее время усилия в области DRM сосредоточены на защите аудиоинформации. Тем не менее, с увеличением широкополосности сетей, технически эффективной и осуществимой станет прямая поставка видеоинформации конечным пользователям. В настоящее время также постоянно расширяется поставка ценной цифровой информации с помощью других источников, таких как средства цифрового телевидения, цифрового кабельного телевидения или цифровые носители информации.
В будущем придется создать архитектуры, разрешающие пользователю пользоваться цифровой информацией и защищающие от пренебрежения правами и осуществления несанкционированного доступа как физическими лицами, так и конкурирующими юридическими лицами. В то же время, эти архитектуры должны быть достаточно гибкими, чтобы гарантировать законный доступ любому правомочному компоненту, должны обеспечивать возможность новых приложений, использование компонентов программного обеспечения и устройств аппаратного обеспечения с защищенной информацией, работу с множеством различных типов носителей информации, обеспечение некоторого механизма, помогающего аутентифицировать и воспроизводить информацию на удаленных устройствах аппаратного обеспечения, таких как портативные персональные цифровые секретари (PDA), воспроизводить на удаленные цифровые динамики и т.п.
Рассматриваемые архитектуры также должны быть гибкими и достаточно обобщенными, чтобы речь о правомочности шла лишь на более низких уровнях инфраструктуры, что позволяет приложениям, не являющимся доверительными, воспроизводить защищенное содержание, не зная о том, что оно защищено.
С учетом вышеизложенного, следует отметить, что это изобретение возникло в результате осмысления вопросов, связанных с разработкой усовершенствованных способов и систем обработки визуализируемых цифровых данных таким образом, чтобы обеспечивать желательную степень гибкой защиты.
Сущность изобретения
Ниже описаны способы, системы и архитектуры для обработки визуализируемой цифровой информации. Различные конкретные варианты осуществления могут защитить от несанкционированного доступа или копирования незащищенной информации (т.е. дешифрированной информации) сразу же после того, как эта информация достигает визуализирующего устройства, такого как компьютер пользователя. Гибкая структура включает в себя архитектуру, которая позволяет обычным медиа-источникам доставлять мультимедийную информацию, по существу, любого типа в любое надлежащим образом конфигурированное визуализирующее устройство. Информацию можно защищать и визуализировать локально и/или посредством таких сетей, как Интернет.
Предлагаемая архитектура может обеспечить третьим сторонам возможность записи в компоненты и последующее надежное и гибкое введение этих компонентов в цепочку обработки. Такие компоненты могут быть проверены одним или более аутентификаторами, которые создаются, а затем используются для «прохождения» по цепочке компонентов, чтобы проверить, правомочны ли такие компоненты. Таким образом, различные конкретные варианты осуществления могут обеспечить некоторый стандартный инструментальный комплекс, которым можно воспользоваться для защиты информации с использованием самых различных сред визуализации, типов информации и способов DRM.
Краткое описание чертежей
Фиг.1 - блок-схема высокого уровня системы, в которой можно применять различные принципы, предлагаемые согласно изобретению.
Фиг.2 - блок-схема возможной вычислительной среды, в которой можно реализовать принципы согласно описываемому варианту осуществления.
Фиг.3 - блок-схема, иллюстрирующая возможную систему, которую можно использовать для реализации одного или более вариантов осуществления.
Фиг.3а - схема последовательности операций, иллюстрирующая этапы способа в соответствии с одним вариантом осуществления.
Фиг.4 - блок-схема, иллюстрирующая возможную систему, которую можно использовать для реализации одного или более вариантов осуществления.
Фиг.5 - блок-схема, иллюстрирующая аспекты конструкторской проработки аутентификации в соответствии с одним вариантом осуществления.
Фиг.6 - блок-схема, иллюстрирующая возможную систему, которую можно использовать для реализации одного или более вариантов осуществления в связи с сетевой средой.
Фиг.7 - блок-схема, иллюстрирующая возможную систему, которую можно использовать для реализации одного или более вариантов осуществления в связи с сетевой средой.
Подробное описание
Обзор
Способы, системы и архитектуры, описанные ниже, предназначены для установления защищенного медиаканала от некоторого источника защищенной информации (например, сервера DRM, сервера универсальных цифровых дисков (DVD) (обычно - дисковода для DVD), сервера телевидения высокой четкости (HDTV) (обычно - телевизионной станции, транслирующей передачи на плату тюнера в персональном компьютере (PC) или сервера информации любого конкретного типа) в и через устройство (включающее в себя средства программного и аппаратного обеспечения устройства), которое может визуализировать или иным образом воспроизводить защищенную информацию для пользователя.
В качестве примера рассмотрим фиг.1. Показанная здесь система 100 включает в себя некоторое количество различных типов источников или поставщиков защищенной информации, таких как сервер DVD, обозначенный позицией 102, сервер 104 информации (например, сервер, который может выдавать аудиоинформацию, видеоинформацию и т.п.), сервер HDTV, обозначенный позицией 106, и локальный жесткий диск 116, причем перечислены лишь некоторые из возможных источников или поставщиков. Конфигурация поставщиков информации обеспечивает передачу их информации через различные среды, которые могут включать в себя сети, такие как сети 108, 110, 112, 118, шины (такие как шина для передачи данных со скоростью до 33 Мбайт/с (шина PCI) и шина быстродействующего графического порта (шина AGP)) и т.п. Информацию, как правило, подают в устройство некоторого типа, которое может предоставить информацию пользователю. Возможные устройства включают в себя, но не в ограничительном смысле, персональный компьютер 114, карманный персональный компьютер 120, телевизор 122, например, с компьютерной приставкой 124 к телевизору и т.п.
В нижеследующем тексте целевым аппаратным обеспечением для такой информации в одном конкретном варианте осуществления является локальный персональный компьютер с установленной на нем защищенной видеоплатой, а в других конкретных вариантах осуществления - удаленное портативное устройство, такое как карманный компьютер. Следует иметь в виду, что подобные примеры предназначены для иллюстрации лишь некоторых сред, в которых можно использовать принципы предлагаемого изобретения, описываемые ниже. Следовательно, без отклонения от сущности и объекта изобретения, можно также использовать устройства других типов.
Способы, системы и архитектуры, описываемые ниже, могут быть предназначены для обеспечения возможности обработки форматов информации различных типов, многие из которых могут иметь конкретные характеристики управления правами на цифровую информацию (DRM), которые во многих случаях могут включать в себя управление своими собственными правами и их шифрование. Это может значительно увеличить гибкость и робастность, с которой можно защитить информацию. Следовательно, имея гибкую архитектуру, можно избежать ситуации, в которой всю информацию обязательно надо связывать с форматом DRM одного конкретного типа. Поэтому в одном или более конкретных вариантах осуществления, описываемых ниже, один предпочтительный признак архитектуры заключается в том, что третьи стороны могут записывать и предоставлять трансляционные модули, которые могут быть импортированы в архитектуру, а потом использоваться для отображения на общую систему управления правами и шифрования, которая может гарантировать правомочность компонентов архитектуры и возможность их проверки.
Кроме того, в вариантах осуществления, описываемых ниже, можно использовать один (одно) или более следующих признаков и/или преимуществ. Предусматривается механизм аутентификатора, который может быть обобщен с получением рекурсивного алгоритма, который отслеживает поток данных. В некоторых вариантах осуществления, предусматривается начальный аутентификатор, начинающий аутентификацию цепочки компонентов, которые будут обрабатывать защищенные данные. Можно создавать дополнительные аутентификаторы вдоль такой цепочки, а также можно установить защищенный канал, по которому они могут осуществлять связь. Эти аутентификаторы не обязательно должны изначально иметь представление о структуре графа данных, чтобы выполнить свои обязанности по аутентификации. В различных вариантах осуществления можно предусмотреть использование списков аннулирования, которые могут предотвратить использование известных компонентов, которые скомпрометированы (в результате несанкционированного раскрытия или утраты информации). Кроме того, в некоторых вариантах осуществления возможно проведение прямой аутентификации аппаратного обеспечения и шифрование информации для устройств аппаратного обеспечения. Различные варианты осуществления могут быть конфигурированы для работы с приложениями, не являющимися доверительными. В этом случае, данные могут быть защищены от приложения, не являющегося доверительным, однако могут по-прежнему обрабатываться цепочкой компонентов, в которой используются правомочные и проверенные компоненты. Авторизованным приложениям, например правомочным, может быть предоставлен доступ к таким данным. Это полезно для предоставления приложениям возможности манипулировать данными, например, при осуществлении визуализаций или вынесении изменений в эти данные.
Можно реализовать различные варианты осуществления в связи с удаленными устройствами, которые могут визуализировать данные по различным шинам, сетям и т.п., с полной поддержкой аутентификации и шифрования. Это может обеспечить главному компьютеру (хосту) возможность осуществления большинства операций предварительной обработки и управления интерфейсом так, что удаленное устройство (например, персональный цифровой секретарь) сможет просто отображать эти данные. Кроме того, различные варианты осуществления могут предусматривать обработку защищенной информации, поступающей из множества источников. То есть защищенная информация (содержание) может вырабатываться как локальными устройствами (т.е. дисководом DVD, видеокамерами, тюнерами телевизоров, цифровыми кабельными устройствами), так и удаленными устройствами (такими как Web-сервер или сервер видеоинформации). Кроме того, одни цепочки обработки данных можно повторно использовать в других цепочках обработки данных. Например, почти все компоненты, используемые для воспроизведения защищенной аудиоинформации, можно повторно использовать для защиты аудиодорожки из видеоклипа.
Эти и другие преимущества станут очевидными в свете рассмотрения нижеследующего описания.
Варианты осуществления могут обеспечить обработку любого потока данных, а не привязаны конкретно лишь к обработке видео- или аудиоданных. Таким образом, варианты осуществления можно использовать для защиты данных и в других форматах.
Возможная вычислительная система
На фиг.2 изображен пример подходящей вычислительной среды 200, в которой можно реализовать систему и связанные с ней способы, описываемые ниже.
Следует иметь в виду, что вычислительная среда 200 является лишь примером подходящей вычислительной среды и не обуславливает какое-либо ограничение объема использования или функциональных свойств системы обработки медийной информации. Не следует также считать вычислительную среду 200 связанной какой-либо зависимостью (требованием), относящейся (относящимся) к любому компоненту или сочетанию компонентов, приведенных на изображении этой возможной вычислительной среды 200.
Различные описанные конкретные варианты осуществления могут быть использованы с многочисленными другими средами или конфигурациями вычислительных систем общего назначения или специального назначения. Примеры хорошо известных вычислительных систем, сред и конфигураций, могущих оказаться подходящими для использования с системой обработки медийной информации, включают в себя, но не в ограничительном смысле, персональные компьютеры, серверные компьютеры, «тонких» клиентов, «толстых» клиентов, карманные устройства или портативные устройства, многопроцессорные системы, системы на основе микропроцессоров, компьютерные приставки к телевизорам, программируемые потребительские электронные устройства, сетевые персональные компьютеры, миникомпьютеры, большие (универсальные) главные компьютеры вычислительных центров («мэйнфреймы»), распределенные вычислительные среды, которые могут включать в себя любые из вышеупомянутых вычислительных систем или устройств, и т.п.
В некоторых реализациях, систему и связанные с ней способы можно надлежащим образом описать в общем контексте команд, выполняемых компьютером, например программных модулей, выполняемых компьютером. В общем случае, программные модули включают в себя стандартные подпрограммы, программы, объекты, компоненты, структуры данных и т.д., которые решают частные задачи или реализуют некоторые частные абстрактные типы данных. Можно также реализовать конкретные варианты осуществления в распределенных вычислительных средах, где задачи решаются удаленными устройствами обработки, которые осуществляют связь друг с другом через сеть связи. В распределенной вычислительной среде программные модули могут быть размещены на носителях информации как локальных, так и удаленных компьютеров, включая запоминающие устройства для хранения информации.
В соответствии с изображенным на фиг.2 возможным вариантом осуществления, вычислительная система 200 показана содержащей один или более процессоров или блоков 200 обработки, память 204 системы и шину 206, которая соединяет различные компоненты системы, включая память 204 системы, с процессором 202.
Шина 206 представлена на чертеже для отображения одного или более из любых нескольких типов структур шин, включая шину памяти или контроллер памяти, шину периферийных устройств, шину быстродействующего графического порта, а также шину процессора или локальную шину, использующую любую из множества архитектур шин. В качестве примера, не носящего ограничительный характер, можно отметить, что такие архитектуры включают в себя шину стандартной промышленной архитектуры (ISA), шину микроканальной архитектуры (МСА), локальную шину, соответствующую техническим нормам американской Ассоциации по стандартизации в области видеоэлектроники (VESA), и шину соединения периферийных компонентов (PCI), известную также под названием «шина Mezzanine».
Компьютер 200, как правило, включает в себя совокупность считываемых компьютером носителей. Такие носители могут быть любыми промышленно поставляемыми носителями, к которым компьютер 200 может осуществлять локальный и/или удаленный доступ, и включают в себя как энергозависимые, так и энергонезависимые носители, как съемные, так и стационарные носители.
На фиг.2 показано, что память 204 системы включает в себя считываемые компьютером носители в энергозависимой форме, например оперативное запоминающее устройство (ОЗУ) 210 и/или энергонезависимое запоминающее устройство, например постоянное запоминающее устройство (ПЗУ) 208. В ПЗУ 208 хранится базовая система ввода-вывода (BIOS), обозначенная позицией 212 и содержащая базовые стандартные подпрограммы, которые способствуют обмену информацией между элементами внутри компьютера 200, например, во время запуска. ОЗУ 210 обычно содержит данные и/или программные модули, к которым возможен немедленный доступ и/или которые в данный момент используются блоком (блоками) 202 обработки.
Компьютер 200 может также включать в себя другие съемные и/или стационарные, энергозависимые и/или энергонезависимые компьютерные носители информации. Лишь в качестве примера, на фиг.2 изображен дисковод 228 для жестких дисков, предназначенный для считывания со стационарного энергонезависимого магнитного носителя и записи на этот носитель (который не показан и обычно называется «жестким диском»), дисковод 230 для магнитных дисков, предназначенный для считывания со стационарного энергонезависимого магнитного диска 232 (например, «флоппи-диска») или записи на него, и дисковод 234 для оптических дисков, предназначенный для считывания со съемного, энергонезависимого оптического диска 236 или записи на него, причем таким диском может быть неперезаписываемый компакт-диск - CD-ROM, неперезаписываемый цифровой многоцелевой компакт-диск - DVD-ROM или другие оптические носители. Каждый из дисковода 228 для жестких дисков, дисковода 230 для магнитных дисков и дисковода 234 для оптических дисков соединен с шиной 206 с помощью одного или более интерфейсов 226.
Дисководы и связанные с ними считываемые компьютером носители обеспечивают энергонезависимое хранение считываемых компьютером команд, структур данных, программных модулей и других данных для компьютера 200. Хотя в возможной среде, описываемой здесь, используется жесткий диск 228, съемный магнитный диск 232 и съемный оптический диск 236, специалисты в данной области техники поймут, что в этой возможной операционной среде можно использовать другие типы считываемых компьютером носителей, которые могут хранить данные, доступные для компьютера, и к которым относятся магнитные кассеты, платы флэш-памяти, цифровые видеодиски, оперативные запоминающие устройства (ОЗУ), постоянные запоминающие устройства (ПЗУ) и т.п.
На жестком диске 228, магнитном диске 232, оптическом диске 236 и в ПЗУ 208 или ОЗУ 210 может храниться некоторое количество программных модулей, включая - в качестве примера, не носящего ограничительный характер, - операционную систему 214, одну или более прикладных программ 216 (например, мультимедийную прикладную программу 224), другие программные модули 218 и данные 220 программ. Пользователь может вводить команды и информацию в компьютер 220 через устройства ввода, такие как клавиатура 238 и указательное устройство 240 (такое как «мышь»). К числу других устройств ввода можно отнести устройство (устройства) 253 ввода аудио- и/или видеоинформации, микрофон, джойстик, игровой пульт, спутниковую антенну, последовательный порт, сканер, и т.п. (не показаны). Эти и другие устройства ввода соединены с блоком (блоками) 202 обработки через посредство интерфейса (интерфейсов) 242, который подключен (которые подключены) к шине 206, но возможно и соединение посредством других структур интерфейсов и шин, таких как параллельный порт, игровой порт или универсальная последовательная шина (USB).
С шиной 206 через средство сопряжения, такое как видеоадаптер или видеоплата и/или плата графики, обозначенная позицией 244, соединен также монитор 256 или отображающее устройство другого типа. Кроме монитора, персональные компьютеры, как правило, включают в себя другие периферийные устройства вывода (не показаны), такие как динамики и принтеры, которые могут быть подсоединены с помощью интерфейса 246 периферийных устройств вывода.
Компьютер 200 может работать в сетевой среде, используя логические соединения с одним или более удаленных компьютеров, таких как удаленный компьютер 250. Удаленный компьютер 250 может включать в себя многие или все элементы и признаки, описываемые здесь применительно к компьютеру.
Как показано на фиг.2, вычислительная система 200 соединена с возможностью связи с удаленными устройствами (например, с удаленным компьютером 250) посредством локальной сети (LAN) 251 и глобальной сети (WAN) 252. Такие сетевые среды обычно имеют место в офисах, компьютерных сетях предприятий, внутрикорпоративных сетях и сети Интернет.
При использовании в сетевой среде LAN компьютер 200 подключают к LAN 251 через подходящий сетевой интерфейс или адаптер 248. При использовании с сетевой средой WAN компьютер 200, как правило, включает в себя модем 254 или иное средство для установления связи через WAN 252. Модем 254, который может быть внутренним или внешним, может быть подключен к системной шине 206 либо через интерфейс 242 ввода пользователем, либо с помощью другого подходящего механизма.
В сетевом окружении программные модули, имеющие отношение к персональному компьютеру 200, или их части могут храниться в удаленном запоминающем устройстве. В качестве примера, не носящего ограничительный характер, на фиг.2 изображены удаленные приложения 216, хранящиеся в запоминающем устройстве удаленного компьютера 250. Следует иметь в виду, что изображенные и описанные сетевые соединения приведены лишь в качестве примера, и что можно использовать другие средства установления канала связи между компьютерами.
Возможные конкретные варианты осуществления
На фиг.3 изображена возможная цепочка компонентов, поясняющая принципы изобретения, раскрываемые в данном описании. Общая цель, преследуемая системой, изображенной на фиг.3, заключается в том, чтобы обеспечить возможность приема зашифрованных данных или информации, а также данных DRM из какого-либо источника или источников отображения данных на общую систему, а также последующего получения лицензии, определяющей, что данные или информация требует защищенного медиаканала. Следовательно, система должна быть выполнена с возможностью проверки правомочности системных компонентов, которые образуют медиаканал. Один аспект описываемых конкретных вариантов осуществления заключается в том, что предлагаемая архитектура может облегчить обработку форматов данных многих различных типов и может быть применена в контексте многих различных типов информации. То есть для того чтобы предлагаемая архитектура оказалась способной обрабатывать и визуализировать защищенную информацию, такой архитектуре не нужны какие-либо сложные привязки к каким бы то ни было специальным компонентам.
Ниже приведен обзор на высоком уровне функциональных возможностей системы, воплощающей различные принципы изобретения в соответствии с одним вариантом его осуществления. Более подробно аспекты возможной системы описаны ниже в разделе под названием «Пример реализации - вариант осуществления локальных устройств».
В целях облегчения понимания различных принципов изобретения, изображенную систему, в сущности, можно разделить на шесть каскадов, более подробное рассмотрение каждого из которых проводится ниже и которыми являются:
компонент источника информации (например, источник 300 информации) и его соединение с лицензирующим сервером;
клиентский компонент (например, клиент 304) и связанные с ним компоненты, предназначенные для дешифрирования данных и обработки ведомостей информации, которые содержат информацию DRM;
демультипрексор, декодеры и блоки повторного шифрования данных (например, демультиплексор 306, декодер 308 и шифратор 310);
приложение для обработки и смешения потоков данных (например, приложение 312);
один или более модулей визуализации (например, модуль 314 визуализации), которые устанавливают порядок дешифрирования аппаратными средствами и планируют отображение данных; и
аппаратные средства для дешифрирования и визуализации данных (например, аппаратные средства 316 визуализации).
В дополнение к указанию вышеперечисленных каскадов, можно отметить, что изображенная система также обеспечивает возможность использования нескольких различных аутентификаторов, которые создаются в процессе проверки, по существу, предназначенном для того, чтобы подтвердить, что компоненты, образующие систему, правомочны. Это можно осуществить путем проверки цифровых подписей, которые выполнены на компонентах. В этом примере имеются три аутентификатора - первичный аутентификатор 318 и два вторичных аутентификатора 320, 322. Отметим, что аутентификаторы 318 и 320 являются аутентификаторами режима пользователя и поэтому используются для проверки компонентов, работающих в режиме пользователя. С другой стороны, аутентификатор 322 является аутентификатором режима ядра и используется для поверки компонентов, работающих в режиме ядра.
Кроме того, система может использовать транслятор (преобразователь), такой как транслятор 302. Транслятор 302 можно использовать для преобразования информации и данных лицензии из одного формата DRM в другой, «понятный» системе. То есть одно из преимуществ описываемой здесь системы заключается в том, что этой системе можно придать конфигурацию, обеспечивающую работу в связи с различными, так называемыми «инородными» форматами DRM, которые система сама по себе «не понимает». В частности, компоненты транслятора, обеспечивающие использование различных отличающихся друг от друга форматов DRM в общей архитектуре, могут быть записаны, например, третьими сторонами. Таким образом, можно внедрить предлагаемую систему с некоторой степенью гибкости, обуславливающей использование огромного множества форматов DRM, которые уже известны или будут разработаны впоследствии.
Источник информации
В этом конкретном примере, компоненты источника информации, например источника 300 информации, ответственны за считывание любых собственных источников DRM (т.е. источников, которые система «понимает») или преобразование «инородных» форматов DRM в тот формат DRM, который система «понимает». Последнюю задачу можно решить с помощью транслятора 302, который может представлять или не представлять собой часть источника информации. Транслятор 302 можно использовать для того, чтобы преобразовать информацию и лицензию в «понятный» (системе) формат DRM.
Локальные устройства, которые обеспечивают формат DRM (такие как цифровой телевизионный приемник), могут преобразовывать систему шифрования и лицензионные ограничения в «понятный» формат DRM. Для создания подписи, которая в свою очередь обеспечивает создание информации DRM, можно использовать связанный с упомянутыми устройствами драйвер. В соответствующей лицензии может быть указана зависимость от удаленного лицензирующего сервера, вследствие чего можно обновлять списки аннулирования. В типичном случае можно предусмотреть списки аннулирования, которые обеспечат системе возможность установить, какие компоненты скомпрометированы (в результате несанкционированного раскрытия или утраты информации). Например, лицензия может потребовать еженедельного предоставления списка аннулирования, который может быть локально кэширован.
Клиент и аутентификаторы
Клиент 304 в типичном случае получает зашифрованную информацию и лицензию, в которую - в качестве части ее содержания - может быть включена ведомость того, что получает клиент. В этой ведомости, как правило, могут быть описаны компоненты конвейера визуализации, которые необходимы для визуализации информации. Лицензия также может включать в себя дополнительную информацию, например, об уровне защиты, которого требует информация. Эти аспекты подробнее рассмотрены ниже.
Ведомость также может включать в себя тип аутентификаторов, которые нужно использовать для проверки компонентов конвейера визуализации. В альтернативном варианте, ведомость может потребовать наличия некоторых типов аутентификаторов, и в таком случае ее требования могут касаться других компонентов конвейера, таких как модули визуализации, в контексте создания соответствующих аутентификаторов, таких как аутентификатор ядра аудио- и видеоинформации.
После установления сетевого соединения или источника собираемой информации источник информации может предписать клиенту 304 принятие на себя обязательств по лицензии. Источник информации может также задать любую информацию, относящуюся к этому источнику и предназначенную для использования клиентом или другими компонентами с целью облегчения процесса принятия упомянутых обязательств. Когда обязательства по лицензии приняты, клиент может создать один или более аутентификаторов (например, аутентификаторов видео- и аудиоинформации), таких как аутентификатор 318. При реализации такого аутентификатора клиент может перенести в него требования лицензии.
После этого аутентификатор может (аутентификаторы могут) «пройтись» по компонентам, имеющимся в конвейере, для проверки подписей компонентов, которые имеют дело с незашифрованными данными. Например, в изображенной системе некоторый сервер со средствами защиты может аутентифицировать клиента 304, после чего этот клиент может создать аутентификатор 318. Сразу же после создания аутентификатор 318 может подтвердить, что демультиплексор 306, декодер 308 и шифратор - все эти компоненты правомочны.
Кроме того, в этом примере всякий раз, когда данные проходят по шине или между не аутентифицированными компонентами (например, за счет использования зашифрованных линий связи) или в пространство ядра, можно создавать вторичный аутентификатор для проверки остальной части конвейера обработки потока данных. Следовательно, в этом примере модуль 314 визуализации может создать вторичный аутентификатор 320, который затем подтвердит, что этот модуль визуализации правомочен. Тогда аутентификаторы 318 320 могут устанавливать между собой аутентифицированный зашифрованный канал 319.
Аутентифицированный зашифрованный канал 319 можно использовать для достижения ряда разных целей. Например, этот канал может обеспечить связь между соседними аутентификаторами. А возможность такой связи может, например, обеспечить обратную передачу информации о проверке и подтверждении действительности прав или о других запросах от вторичных аутентификаторов в первоначальный аутентификатор. Кроме того, аутентификаторы должны обеспечивать возможность контроля списков аннулирования, описывающих компоненты, которые скомпрометированы и более не правомочны. Далее аутентифицированный зашифрованный канал можно использовать для запуска сеансов шифрования, проводимых с целью шифрования видео- и аудиоданных, обмен которыми происходит между правомочными компонентами.
В удаленном визуализирующем устройстве (таком как устройство, подробнее описываемое ниже), обеспеченном аппаратной поддержкой дешифрирования, можно создать вторичный аутентификатор для предоставления полномочий шифрования и аутентификации удаленному устройству. В таком удаленном устройстве нужно предусмотреть лишь небольшой компонент-посредник, возможно, не являющийся доверительным. Тогда должна быть предусмотрена идентификация удаленного аппаратного средства как такового, в результате которой первичный аутентификатор получит возможность аннулировать право доступа, предоставленное упомянутому аппаратному средству.
В случае видеоинформации, обобщенный аутентификатор аудиовидеоинформации (AV-аутентификатор) может проверить компоненты, работающие в режиме пользователя, а модуль визуализации может создавать медийно-специализированные аутентификаторы.
Демультиплексор, декодеры и блоки повторного шифрования
Демультиплексор 306 в типичном случае получает незашифрованные данные от клиента 304 и разделяет данные на различные потоки, такие как поток аудиоинформации и видеоинформации. В типичном случае, демультиплексор 306 затем пропускает эти потоки в один или более декодеров, таких как декодер 308, для дальнейшей обработки. Декодер аудиоданных (вместе с шифратором, таким как шифратор 310) может проводить повторное шифрование данных и выдавать их в прикладную систему 312 для обработки. Декодером видеоданных можно проводить повторное шифрование данных таким образом, что будет обеспечена защищенная передача по шине PCI/AGP в оперативное запоминающее устройство видеоплаты (VRAM). Декодер видеоданных в типичном случае может пропускать частично сжатые (и зашифрованные) данные в видеоплату и может проводить изменения меток времени, осуществлять перекомпоновку данных и синтаксический анализ заголовков. Например, при воспроизведении DVD декодер может выделить данные уровня вектора и остатки и пропустить их аппаратные средства обработки видеоданных. Декодер также может вносить любые изменения для моделирования обратного воспроизведения или эффектов переменной скорости.
Приложение и смешение
Приложение 312 может смешивать потоки аудио- и видеоинформации, подавая их в смешивающие буферы, при этом подачу информации осуществляет модуль (модули) визуализации. В этом случае аппаратные средства обеспечивают эффективное прохождение зашифрованной информации из декодера вместе со списками команд смешения. Возможно осуществление огромного количества операций обработки изображений, а также нелинейных видеоэффектов, например, путем использования программ-ретушеров элементов изображения, а также полигональных отображений. Если прикладной системе требуется доступ к незашифрованным данным, она может создать отдельный, выверенный (т.е. недоступный для посторонних средств) рабочий процесс. Тогда эта прикладная система, по существу, становится еще одним аутентифицированным декодером и должна дешифрировать данные, обрабатывать их и повторно шифровать для вывода в аппаратные средства о