RU2332703C2 - Защита объекта заголовка потока данных - Google Patents

Защита объекта заголовка потока данных Download PDF

Info

Publication number
RU2332703C2
RU2332703C2 RU2003126950/09A RU2003126950A RU2332703C2 RU 2332703 C2 RU2332703 C2 RU 2332703C2 RU 2003126950/09 A RU2003126950/09 A RU 2003126950/09A RU 2003126950 A RU2003126950 A RU 2003126950A RU 2332703 C2 RU2332703 C2 RU 2332703C2
Authority
RU
Russia
Prior art keywords
subobject
area
digital
signature
region
Prior art date
Application number
RU2003126950/09A
Other languages
English (en)
Other versions
RU2003126950A (ru
Inventor
Дэниэль ЭДЕНТ (US)
Дэниэль ЭДЕНТ
Кори ВЕСТ (US)
Кори ВЕСТ
Пратул ДУБЛИШ (US)
Пратул ДУБЛИШ
Клиффорд П. СТРОМ (US)
Клиффорд П. СТРОМ
Брайан Д. КРАЙТС (US)
Брайан Д. КРАЙТС
Original Assignee
Майкрософт Корпорейшн
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Майкрософт Корпорейшн filed Critical Майкрософт Корпорейшн
Publication of RU2003126950A publication Critical patent/RU2003126950A/ru
Application granted granted Critical
Publication of RU2332703C2 publication Critical patent/RU2332703C2/ru

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Circuits Of Receivers In General (AREA)
  • Small-Scale Networks (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

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

Description

Область применения изобретения
Настоящее изобретение в целом имеет отношение к проверке данных, а более конкретно к объекту заголовка для файла данных.
Предпосылки к созданию изобретения
Обычно некоторые форматы файлов данных и потоков данных содержат объекты заголовка. Объект заголовка содержит используемую для идентификации информацию "мета-содержимого" и использует эти данные содержимого, которые содержатся в файле данных или в потоке данных.
Например, одним из форматов потока данных является Усовершенствованный Потоковый Формат (ASF), который представляет собой формат расширяемого файла, предназначенный для хранения согласованных мультимедийных данных. Действующая в настоящее время спецификация для этого формата может быть получена по адресу www.microsoft.com. ASF поддерживает передачу данных по самым различным сетям и протоколам, а также позволяет производить локальное считывание.
Каждый ASF файл образован из одного или нескольких медиапотоков. Объект заголовка задает (точно определяет) свойства всего файла, в том числе и специфические свойства потока. В ASF каждый файл должен иметь один объект заголовка. Объект заголовка обеспечивает широко известную байтовую последовательность в начале ASF файлов (GUID - глобально уникальный идентификатор - объекта заголовка) и должен содержать всю информацию, необходимую для надлежащей интерпретации мультимедийных данных. Объект заголовка можно рассматривать в виде контейнера, который содержит информацию относительно объекта заголовка и комбинацию подобъектов заголовка. Информация относительно объекта заголовка включает в себя идентификатор GUID для объекта заголовка ("ASF_Header_Object"), размер объекта заголовка и число подобъектов заголовка, которое содержится в объекте заголовка. Каждый объект заголовка начинается с GUID.
Подобъекты заголовка включают в себя:
Подобъект свойств файла, который определяет глобальные характеристики мультимедийных данных в файле.
Подобъект свойств потока, который определяет специфические свойства и характеристики медиа потока.
Подобъект расширения заголовка, который позволяет добавлять дополнительные функциональные возможности в ASF файл, при одновременном поддержании обратной совместимости, и который представляет собой контейнер, который содержит подобъект расширенного заголовка.
Подобъект списка кодеков (кодеров-декодеров), который содержит дружественную к пользователю информацию относительно кодеков, а также форматы, которые используют для кодирования содержимого в ASF файле.
Подобъект команд сценария, который содержит список пар «тип/параметр» последовательностей Уникода, которые синхронизованы с временной последовательностью ASF файла.
Подобъект маркера, который содержит небольшой специализированный индекс, который используют для создания поименованных точек перехода в файле, для того, чтобы позволить автору содержимого разделить содержимое на логические секции, такие как границы песен на всем CD (компакт-диске) или изменения тем в ходе длительной презентации, и присвоить считываемое человеком имя каждой секции файла, используемой пользователем.
Битовую скорость подобъекта взаимоисключения скорости передачи в битах, который идентифицирует видеопотоки, которые имеют зависимость взаимоисключения друг с другом (другими словами, только один из потоков при такой зависимости может передаваться, при этом все остальные игнорируют).
Подобъект коррекции ошибок, который определяет способ коррекции ошибок и сообщает информацию, необходимую для восстановления при помощи процессора исправления ошибок.
Подобъект описания содержимого, который позволяет авторам записывать хорошо известные данные, описывающие файл и его содержимое, в том числе название, автор, авторские права, вид и информацию о рейтинге.
Подобъект расширенного описания содержимого, который позволяет авторам записывать данные, описывающие файл и его содержимое, которые выходят за рамки стандартной библиографической информации, такой как название, автор, авторские права, вид и информация о рейтинге.
Подобъект шифрования содержимого, который идентифицирует, является ли содержимое защищенным при помощи системы управления правами на цифровые данные (DRM). Этот подобъект содержит систему DRM приобретения лицензии на URL, DRM на Key ID и другие связанные с DRM метаданные.
Подобъект свойств скорости передачи потока в битах, который определяет среднюю скорость передачи в битах каждого медиапотока в мультимедийных данных.
Подобъект дополнения пробелами, который представляет собой фиктивный подобъект, используемый для обеспечения соответствия размера объекта заголовка.
Компонент (объект), который первым создает файл потока данных, а также любые другие воздействующие на него компоненты, могут добавлять или изменять элементы файла заголовка. Например, создающий содержимое компонент может создавать файл потока данных и включать информацию в объект описания содержимого, касающийся содержимого. Второй компонент может создавать маркеры в данных и добавлять в объект маркера информацию отслеживания. Третий компонент, который распределяет файл потока данных, может добавлять объект команд сценария, содержащий действия или данные для сценария. Например, объект команд сценария может содержать информацию, которая открывает окно веб браузера для заданного URL (унифицированного указателя информационного ресурса).
Так как на ASF файл могут воздействовать различные компоненты, нет возможности определить, какой компонент создал ту или иную часть объекта заголовка. Кроме того, изменение информации хакером не может быть идентифицировано.
Краткое изложение изобретения
Настоящее изобретение посвящено созданию системы, способа и структуры данных для проверки подобъектов в объекте заголовка. Настоящее изобретение позволяет производить проверку по одному компоненту одновременно, для одного или нескольких подобъектов в объекте заголовка, в то же время позволяет изменять порядок подобъектов. Новые подобъекты также могут быть последовательно созданы и проверены при помощи другого компонента. Проверка двух или нескольких подобъектов при помощи надежного (доверительного) компонента может быть объединена, так что хакер не может удалить или изменить данные, оставив один подобъект поддающимся проверке, как это записано при помощи надежного компонента, в то время как другой подобъект не является поддающимся проверке.
Дополнительные признаки и преимущества настоящего изобретения изложены в приведенном далее описании.
Краткое описание чертежей
На фиг. 1 показана блок-схема, дающая общее представление о компьютерной системе.
На фиг. 2 показана блок-схема файла в соответствии с настоящим изобретением.
На фиг. 3 показан процесс создания цифровой сигнатуры подобъекта в соответствии с настоящим изобретением.
На фиг. 4 показан процесс проверки подобъект цифровой сигнатуры в соответствии с настоящим изобретением.
На фиг. 5 показан подобъект цифровой сигнатуры в соответствии с настоящим изобретением.
Подробное описание предпочтительных вариантов изобретения
Обзор
Один или несколько подобъектов цифровых сигнатур могут быть созданы и размещены в объекте заголовка файла данных для того, чтобы иметь информацию о сигнатуре для подобъектов и областей подобъектов в объекте заголовка. Если подобъект цифровой сигнатуры присутствует и является достоверным, то может быть обнаружено любое редактирование или любая фальсификация "подписанного" подобъекта. Отметим, что при этом нет необходимости сохранять порядок (упорядоченное расположение) подобъектов.
Подобъект цифровой сигнатуры содержит матрицу (массив) спецификаторов областей. Каждый спецификатор области идентифицирует специфическую область в подобъекте. Спецификатор области может также идентифицировать весь подобъект.
Подобъект цифровой сигнатуры также содержит сигнатуру. Сигнатура представляет собой цифровую сигнатуру областей, перечисленных в массиве спецификаторов областей. Сигнатура может быть использована для проверки отсутствия фальсификации областей, перечисленных в массиве спецификаторов областей.
Примерная вычислительная среда
На фиг. 1 показан пример подходящей вычислительной среды в виде вычислительной системы (компьютера) 100, в которой может быть осуществлено настоящее изобретение. Вычислительная система 100 является только одним из примеров подходящей вычислительной среды, поэтому она не вносит никаких ограничений как в объем, так и в функциональные возможности настоящего изобретения. Кроме того, не следует понимать, что вычислительная среда 100 имеет какую-либо зависимость от одного компонента или комбинации компонентов, показанных в примерной вычислительной среде 100.
Специалисты легко поймут, что компьютер или другие устройства клиента или сервера могут быть использованы как часть вычислительной сети или распределенной вычислительной среды. В этом отношении следует иметь в виду, что настоящее изобретение имеет отношение к любой вычислительной системе, имеющей любое число блоков памяти или запоминающих устройств, и любое число приложений и процессов, имеющихся в любом числе запоминающих устройств или объемов, которые могут быть использованы в связи с настоящим изобретением. Настоящее изобретение может быть применено в среде с компьютерами-серверами и компьютерами клиента, развернутыми в виде сети, или в распределенной вычислительной среде, имеющей удаленные или локальные средства хранения информации. Настоящее изобретение может быть также применено для автономных вычислительных устройств, которые могут быть запрограммированы на языке программирования, а также возможности интерпретации и выполнения, необходимые для создания, приема и передачи информации, связанной с удаленным или локальным обслуживанием.
Настоящее изобретение может быть использовано с рядом других сред или конфигураций вычислительных систем как общего, так и специального применения. В качестве примера хорошо известных вычислительных систем, сред и/или конфигураций, в которых может быть использовано настоящее изобретение, можно указать без ограничения персональные компьютеры, служебные компьютеры (серверы), карманные или портативные компьютеры, мультипроцессорные системы, системы на базе микропроцессоров, телевизионные приставки, программируемые пользователем электронные устройства, сети персональных компьютеров, миникомпьютеры, универсальные компьютеры, а также распределенные вычислительные среды, которые включают в себя любые из указанных выше систем или устройств, и т.п.
Настоящее изобретение может быть описано в общем контексте выполняемых компьютером команд, таких как программные модули. Обычно программные модули содержат стандартные программы (подпрограммы), программы, объекты, компоненты, структуры данных и т.п., которые осуществляют специфические задачи или реализуют особые типы абстрактных данных. Настоящее изобретение может быть также осуществлено в распределенных вычислительных средах, в которых определенные задачи выполняются при помощи удаленных обрабатывающих устройств, которые соединены при помощи сети связи или другого средства передачи данных. В распределенной вычислительной среде, программные модули и другие данные могут быть размещены как в локальной, так и в удаленной компьютерной памяти, в том числе и в запоминающих устройствах. Распределенные вычислительные возможности совместно используют компьютерные ресурсы и услуги за счет прямого обмена между компьютерными устройствами и системами. Эти ресурсы и услуги включают в себя обмен информацией, кэш-память и память на дисках для файлов. Распределенные вычислительные возможности имеют преимущество по сравнению с сетевым соединением, так как пользователи могут использовать коллективную вычислительную мощность для решения определенной задачи. В этом отношении следует иметь в виду, что различные устройства могут иметь приложения, объекты или ресурсы, в которых могут быть использованы технологии в соответствии с настоящим изобретением.
Показанная на фиг. 1 примерная система для реализации настоящего изобретения включает в себя вычислительное устройство общего назначения в виде компьютера 110. Компонентами компьютера 110 могут быть, но без ограничения, процессор 120, системная память 130 и системная шина 121, которая соединяет различные компоненты системы, в том числе и системную память, с процессором 120. В качестве системной шины 121 может быть использован любой из множества типов структур шин, в том числе шина памяти или контроллер памяти, шина периферийных устройств, а также локальная (местная) шина, с использованием любой из множества архитектур шины. В качестве примера, но без ограничения, можно указать, что такими архитектурами шин могут быть шины Industry Standard Architecture (ISA), Micro Channel Architecture (MCA), Enhanced ISA (EISA), локальная шина Video Electronics Standards Association (VESA) и шина Peripheral Component Interconnect (PCI) (также известная как шина Mezzanine).
Компьютер 110 обычно содержит несколько считываемых компьютером сред (носителей). Считываемая компьютером среда может представлять собой любую среду, к которой имеется доступ при помощи компьютера 110, и которая содержит как энергозависимую, так и энергонезависимую память, а также как сменный блок памяти, так и не сменяемый (постоянный) блок памяти. В качестве примера, но без ограничения, можно указать, что считываемая компьютером среда может содержать запоминающую среду компьютера и среду для связи. Запоминающая среда компьютера содержит как энергозависимую, так и энергонезависимую память, а также как сменную, так и не сменяемую память, которые могут быть реализованы при помощи любого способа или технологии хранения информации, например, при помощи считываемых компьютером команд, структур данных, программных модулей или других данных. Запоминающая среда компьютера содержит (но без ограничения) RAM (ЗУ с произвольной выборкой), ROM (постоянное запоминающее устройство, ПЗУ), EEPROM (электрически стираемое программируемое постоянное запоминающее устройство), флэш-память или другие технологии хранения информации, CD ROM (постоянное запоминающее устройство на компакт-диске), цифровые универсальные диски (DVD) или другие оптические диски для хранения информации, магнитные кассеты, накопители на магнитной ленте, накопители на магнитных дисках или другие магнитные накопители, а также любые другие носители, которые могут быть использованы для хранения требуемой информации и к которым имеется доступ при помощи компьютера 110. Среда связи обычно охватывает считываемые компьютером команды, структуры данных, программные модули или другие данные в модулированном сигнале данных, при использовании несущей или другого механизма транспортирования информации, и включают в себя любое средство доставки информации. Термин "модулированный сигнал данных" относится к сигналу, который имеет один или несколько характеристических наборов или изменяется таким образом, чтобы кодировать информацию в сигнале. В качестве примера можно указать без ограничения, что средой связи может быть проводное средство связи, такое как проводная сеть или прямое проводное соединение, а также беспроводное средство связи, такое как акустическое, радиочастотное, инфракрасное и другие беспроводные средства связи. Следует иметь в виду, что комбинации указанных выше средств не выходят за рамки считываемой компьютером среды.Системная память 130 представляет собой запоминающую среду компьютера в виде энергозависимой и/или энергонезависимой памяти, такой как постоянное запоминающее устройство (ROM) 131 и запоминающее устройство с произвольной выборкой (RAM) 132. Базовая система ввода-вывода 133 (BIOS), которая содержит основные стандартные программы, помогающие при обмене информацией между элементами в компьютере 110, например, при запуске, обычно хранится в ROM 131. RAM 132 обычно содержит модули данных и/или программные модули, которые имеют прямой доступ и/или включаются в работу при помощи процессора 120. В качестве примера (но без ограничения), на фиг. 1 показана операционная система 134, прикладные программы 135, другие программные модули 136 и программные данные 137.
Компьютер 110 может также содержать другие сменные и/или не сменяемые, энергозависимые и/или энергонезависимые компьютерные запоминающие среды. Только в качестве примера на фиг. 1 показан дисковод 140 жесткого диска, который производит считывание/запись не сменяемой энергонезависимой магнитной среды хранения информации, дисковод 151 магнитного диска, который производит считывание/запись сменного энергонезависимого магнитного диска 152, и дисковод 155 оптического диска, который производит считывание/запись сменного энергонезависимого оптического диска 156, такого как CD ROM или другое оптическое устройство. Среди других сменных и/или не сменяемых, энергозависимых и/или энергонезависимых компьютерных запоминающих сред, которые могут быть использованы в примерной операционной среде, можно указать (но без ограничения) кассеты магнитной ленты, платы флэш-памяти, универсальные цифровые диски (DVD), цифровые видеоленты, твердотельные RAM, твердотельные ROM, и т.д. Накопитель 141 на жестком диске обычно соединен с системной шиной 121 через интерфейс не сменяемого запоминающего устройства, такой как интерфейс 140, а дисковод 151 магнитного диска и дисковод 155 оптического диска обычно соединены с системной шиной 121 при помощи интерфейса сменного запоминающего устройства, такого как интерфейс 150.
Описанные выше и показанные на фиг. 1 дисководы и объединенные с ними компьютерные запоминающие среды (образующие накопители на дисках) обеспечивают хранение в компьютере считываемых команд, структур данных, программных модулей и других данных для компьютера 110. На фиг. 1 показан, например, дисковод 141 жесткого диска, который хранит операционную систему 144, прикладные программы 145, другие программные модули 146 и программные данные 147. Следует иметь в виду, что эти компоненты могут быть теми же самыми (или другими), что и операционная система 134, прикладные программы 135, другие программные модули 136 и программные данные 137. Операционная система 144, прикладные программы 145, другие программные модули 146 и программные данные 147 имеют здесь другие позиционные обозначения для того, чтобы показать, что они, как минимум, являются другими копиями. Пользователь может вводить команды и информацию в компьютер 20 при помощи входных устройств, таких как клавиатура 162 и координатно-указательное устройство 161, обычно называемое мышью, шаровым указателем (трекболом) или сенсорной панелью. Среди других входных устройств (не показаны) можно назвать микрофон, джойстик, игровую клавиатуру, спутниковую тарелку, сканер и т.п. Эти и другие входные устройства часто подсоединяют к процессору 120 при помощи входного интерфейса 160 пользователя, который подключен к системной шине, но могут быть соединены также при помощи другого интерфейса и шинных структур, таких как параллельный порт, игровой порт или универсальная последовательная шина (USB). Монитор 191 или дисплей другого типа также подключают к системной шине 121 при помощи интерфейса, такого как видеоинтерфейс 190. Кроме монитора, компьютеры могут также иметь и другие периферийные выходные устройства, такие как динамики 197 и принтер 196, которые могут быть подключены через интерфейс 190 периферийных устройств вывода.
Компьютер 110 может работать в образующей сеть среде с использованием логических связей с одним или несколькими удаленными компьютерами, такими как удаленный компьютер 180. Удаленным компьютером 180 может быть персональный компьютер (PC), сервер, маршрутизатор, сеть PC, одноранговое устройство или другой общий узел сети, причем такой компьютер 180 обычно содержит многие или все элементы, описанные выше для компьютера 110, несмотря на то, что на фиг. 1 показано только его запоминающее устройство 181. Логические соединения, показанные на фиг. 1, включают в себя локальную вычислительную сеть (LAN) 171 и глобальную вычислительную сеть (WAN) 173, однако они могут также содержать и другие сети. Такие объединенные в сеть среды широко используют в офисах, в корпоративных сетях, в других внутренних сетях и в Интернете.
В случае использования в среде, объединенной в сеть LAN, компьютер 110 подключают к сети LAN 171 через интерфейс сети или адаптер 170. В случае использования в среде, объединенной в сеть WAN, компьютер 110 обычно содержит модем 172 или другое средство обмена информацией с сетью WAN 173, такой как Интернет. Модем 172, который может быть внутренним или внешним, может быть подключен системой к шине 121 через входной интерфейс 160 пользователя или через другое подходящее устройство. В объединенной в сеть среде, программные модули, описанные в связи с компьютером 110, или их части, могут храниться в удаленном запоминающем устройстве. В качестве примера, но без ограничения, на фиг. 1 показаны удаленные прикладные программы 185, которые постоянно хранятся в запоминающем устройстве 181. Однако следует иметь в виду, что показанные сетевые соединения даны только в качестве примера, причем могут быть использованы и другие средства создания канала связи между компьютерами.
Подобъекты с цифровой сигнатурой
В том случае, когда объект заголовка содержит подобъекты и области подобъектов, которые должны быть защищены, то в соответствии с настоящим изобретением подобъект с цифровой сигнатурой может быть добавлен в заголовок для того, чтобы обеспечить возможность проверки отсутствия вмешательства (фальсификации) в подписанные подобъекты и области подобъектов. Этот подобъект с цифровой сигнатурой может быть основан на любом алгоритме цифровой подписи, на вход которого подают некоторые данные и который создает сигнатуру (подпись), которая позднее может быть проверена. В соответствии с одним из вариантов использованным алгоритмом является RSA алгоритм (криптосистема, предложенная R.L.Rivest, A.Shamir и L.M.Adleman). В соответствии с другим вариантом используют алгоритм эллиптической кривой. В других вариантах используют другие алгоритмы сигнатуры.
Обратимся теперь к рассмотрению фиг. 2, на которой показан файл 200, который содержит объект 210 заголовка. В дополнение к информации 215 заголовка объект 210 заголовка содержит подобъект 220 свойств файла, подобъект 230 свойств потока, подобъект 240 команд сценария и подобъект 250 описания содержимого. Подобъект 250 описания содержимого включает в себя информацию относительно названия 252, автора 254 и авторских прав 256, а также собственно описание 258 содержимого. Подобъект 240 команд сценария содержит унифицированный указатель информационного ресурса (URL) 245. Файл 200 также содержит объект 290 данных. Следует иметь в виду, что данный чертеж является примерным, причем в объекте заголовка могут существовать комбинации подобъектов, отличающиеся от показанных.
Можно предотвратить фальсификацию частей объекта 210 заголовка за счет добавления подобъекта 260 с цифровой сигнатурой. Подобъект 260 с цифровой сигнатурой содержит массив 264 спецификатора области и сигнатуру 266. В соответствии с одним из вариантов подобъект 260 с цифровой сигнатурой также содержит информацию 268 о подписавшейся стороне. В соответствии с одним из вариантов информация 268 о подписавшейся стороне содержит один или несколько сертификатов, которые могут быть использованы для надежной проверки сигнатуры 266.
Процесс создания подобъекта 260 с цифровой сигнатурой показан на фиг. 3. На этапе 310 принимают решение о том, какие одну или несколько областей подобъектов заголовка следует подписать, и определяют спецификаторы областей для этих областей. Например, со ссылкой на фиг. 2, подписываемыми областями могут быть подобъект 230 команд сценария, а также секции названия, автора и авторского права подобъекта 250 описания содержимого. Вновь обратимся к рассмотрению фиг. 3, где на этапе 320 создают массив 264 спецификатора областей (фиг. 2). На этапе 330 области, указанные в массиве 264 спецификатора областей, конкатенируют (в том порядке, в котором они заданы в массиве 264 спецификатора областей) с массивом 264 спецификатора областей. Затем эту область подписывают на этапе 340 для получения сигнатуры 266 (фиг. 2).
В том случае, когда изменяют файл, который содержит объект заголовка, имеющий подобъект с цифровой сигнатурой, порядок подобъектов может быть изменен, и могут быть введены дополнительные подобъекты. Если необходимо проверять дополнительные области или подобъекты, то может быть добавлен новый подобъект с цифровой сигнатурой.
Со ссылкой на фиг. 2, для проверки объекта 210 заголовка, используют подобъект 260 с цифровой сигнатурой и области, заданные при помощи массива 264 спецификатора областей. Как показано на фиг. 4, на этапе 410 идентифицируют области подобъекта заголовка, заданные в массиве 264 спецификатора областей (фиг. 2). На этапе 420 эти области конкатенируют (в том порядке, в котором они заданы в массиве 264 спецификатора областей) вместе с массивом 264 спецификатора областей. На этапе 430 проверяют сигнатуру 266 (фиг. 2) для того, чтобы определить ее правомерность для конкатенации.
В соответствии с одним из вариантов осуществления настоящего изобретения могут быть подписаны как области подобъектов, так и подобъекты целиком с использованием подобъекта цифровой сигнатуры. В соответствии с другим вариантом могут быть подписаны только полные подобъекты. В соответствии с одним из вариантов осуществления настоящего изобретения более одной областей единственного подобъекта могут быть подписаны при помощи одного подобъекта цифровой сигнатуры. В соответствии с одним из вариантов осуществления настоящего изобретения подписываемые области одного и того же подобъекта могут перекрываться.
В соответствии с одним из вариантов осуществления настоящего изобретения каждый объект заголовка может содержать по меньшей мере один подобъект с цифровой сигнатурой. Если объект заголовка не содержит ожидаемого подобъекта с цифровой сигнатурой, то тогда можно предположить, что была произведена фальсификация объекта заголовка. Если объект заголовка содержит подобъект с цифровой сигнатурой, который не дает правильного результата при проверке или поступил из не достоверного источника, то лицо, получившее файл с таким объектом заголовка, может действовать по своему усмотрению, например, не использовать этот файл. В соответствии с этим вариантом проверку проводят для того, чтобы убедиться в том, существует ли какой-либо подобъект с цифровой сигнатурой. Если его нет, то проверка дает отрицательный результат. Если подобъекты с цифровой сигнатурой имеются, то каждый их них проверяют на достоверность.
В соответствии с одним из вариантов любой файл F, который является набором объектов O1, O2, On, может быть подписан в соответствии с настоящим изобретением. В этом случае создают новый объект ODS, который содержит массив спецификатора областей, задающий подписанные объекты или области объектов, и сигнатуру для этих объектов и массива.
Реализация примерного ASF
В соответствии с одним из вариантов файлом является ASFфайл. Компоненты подобъекта с цифровой сигнатурой для ASFфайла в соответствии с одним из вариантов показаны на фиг. 5. Подобъект 500 с цифровой сигнатурой содержит GUID (глобально уникальный идентификатор) 510. Каждый объект и подобъект в ASFфайле начинается с GUID. Идентификаторы GUID используют для того, чтобы единственным образом идентифицировать все типы объектов в ASFфайлах. Каждый тип объекта в ASFфайле имеет собственный уникальный идентификатор GUID. Однако, вообще говоря, идентификаторы GUID не могут быть использованы для идентификации единственным образом подобъектов в объекте заголовка ASF, так как многие подобъекты в объекте заголовка ASF могут иметь одинаковый тип объекта и, следовательно, иметь одинаковый GUID.
Следующим элементом в примерном подобъекте 500 с цифровой сигнатурой в ASF является размер подобъекта 520. И в этом случае все ASFобъекты и подобъекты обычно содержат размер объекта и подобъекта. Массиву 540 спецификатора областей, который описан выше, предшествует число подписанных областей, которые содержатся в массиве 540 спецификатора. Идентификатор 550 алгоритма вычисления контрольной суммы и идентификатор 560 алгоритма вычисления сигнатуры, идентифицирующие алгоритмы вычисления контрольной суммы и цифровой сигнатуры используют в цифровой сигнатуре подобъекта. Сигнатуре 580 областей и массиву спецификатора областей предшествует длина сигнатуры 570. Информация 590 о подписавшейся стороне содержит информацию, которая необходима для проверки или получения информации относительно подписавшейся стороны. Информация 590 о подписавшейся стороне может содержать информацию относительно идентичности подписавшейся стороны. В соответствии с одним из вариантов информация 590 о подписавшейся стороне содержит цепочку сертификата, которая может быть использована для проверки того, что открытый ключ подписавшейся стороны происходит из надежного источника.
В примерной реализации ASF, каждый спецификатор области содержит смещение области подобъекта, размер области подобъекта, длину контрольной суммы и контрольную сумму объекта. Смещение области идентифицирует, где начинается область в подобъекте, а размер области идентифицирует размер области. Контрольная сумма объекта соответствует контрольной сумме заданной области. Алгоритмом контрольной суммы в соответствии с предпочтительным вариантом является алгоритм Secure Hash Algorithm (SHA-1). Этот алгоритм содержится в публикации Federal Information Processing Standards Publication 180-1, которая доступна в Интернете по адресу http://www.itl.nist.gov/fipspubs/fip 180-1htm. В альтернативных вариантах может быть использован любой хэширующий алгоритм с низкой вероятностью конфликтов. В альтернативном варианте контрольная сумма объекта соответствует контрольной сумме подобъекта, содержащего заданные области.
Когда производят проверку сигнатуры, то для того, чтобы определить в каком подобъекте локализована область (на этапе 410 фиг. 4), исследуют подобъекты заголовка. Для каждого исследованного подобъекта вычисляют контрольную сумму в соответствии с алгоритмом, заданным идентификатором 550 алгоритма вычисления контрольной суммы. В том варианте, в котором вычисляют контрольную сумму для области, вычисление контрольной суммы проводят для данных, которые содержатся в том подобъекте, который начинается при заданном смещении области подобъекта и продолжается до заданного размера области подобъекта. В том варианте, в котором контрольную сумму вычисляют для всего подобъекта, вычисление контрольной суммы проводят для указанного подобъекта. Когда вычисленная контрольная сумма совпадает с контрольной суммой в спецификаторе области, считают, что идентифицирован правильный подобъект для спецификатора области. После идентификации подобъектов, соответствующих каждой области спецификатора, можно проводить проверку сигнатуры.
В соответствии с данным вариантом осуществления настоящего изобретения, для того, чтобы указать необходимость подписи всего подобъекта, смещение в спецификаторе области должно быть равно нулю, а размер области должен быть равен длине подобъекта. В соответствии с другим вариантом, контрольную сумму вычисляют для всего подобъекта, а не для заданной области.
В соответствии с этим вариантом несколько подобъектов с цифровой сигнатурой могут быть включены в объект, для того, чтобы обеспечить гибкость при совместной проверке подобъектов с различными областями, а также обеспечить проверку подобъектов различными системами.
В соответствии с другими вариантами для идентификации областей могут быть использованы другие способы. В соответствии с одним из вариантов данные, которые единственным образом могут идентифицировать подобъект, содержатся в спецификаторе области, вместе со смещением области и данными о размере области.
В соответствии с другими вариантами только весь подобъект может быть подписан. В соответствии с одним из вариантов спецификатор области содержит контрольную сумму для всего подобъекта. В соответствии с другим вариантом используют также и длину контрольной суммы. В соответствии с еще одним вариантом в спецификаторе области используют и другие данные, которые могут идентифицировать подобъект.
Заключение
В соответствии с настоящим изобретением предлагается система и способ для защиты объекта заголовка потока данных. Как уже было упомянуто выше, несмотря на то, что были описаны примерные варианты настоящего изобретения с указанием различных вычислительных устройств и архитектур сети, лежащие в основе этих вариантов концепции, могут быть применены к любому вычислительному устройству или системе, в которых требуется обеспечить защиту объекта заголовка потока данных. Таким образом, технологии обеспечения защиты объекта заголовка потока данных в соответствии с настоящим изобретением могут быть использованы в различных устройствах и приложениях. Например, способы в соответствии с настоящим изобретением могут быть использованы в операционной системе вычислительного устройства, в виде отдельного объекта к устройству, части другого объекта, в качестве загружаемого с сервера объекта, в виде "посредника" между устройством или объектом и сетью, а также в виде распределенного объекта, и т.п. Несмотря на то что выбранные здесь примерные названия и примеры являются представительными во многих случаях, эти названия и примеры не носят ограничительного характера.
Различные описанные способы могут быть реализованы при помощи аппаратных или программных средств, а также, при необходимости, за счет их комбинации. Таким образом, способы и устройства в соответствии с настоящим изобретением, или их определенные аспекты и части, могут иметь вид программного кода (то есть команд), реализованного на материальных средствах, таких как гибкие диски, компакт-диски CD-ROM, накопители на жестких дисках или любые другие машиночитаемые запоминающие среды, причем после загрузки программы в машину (такую как компьютер) и ее выполнения, машина становится устройством для осуществления настоящего изобретения. В случае выполнения программного кода на программируемых компьютерах, вычислительное устройство обычно включает в себя процессор, запоминающую среду, считываемую процессором (причем такая среда включает в себя энергозависимую и энергонезависимую память и/или запоминающие элементы), по меньшей мере одно устройство ввода и по меньшей мере одно выходное устройство. Одна или несколько программ могут быть использованы в соответствии с настоящим изобретением, например, за счет использования обработки данных при помощи API (программного интерфейса приложения) или другого аналогичного средства, причем эти программы для обмена информацией с системой компьютера преимущественно используют процедурный язык программирования высокого уровня или объектно-ориентированный язык программирования. Однако указанные программы по желанию могут быть реализованы также на ассемблере или в машинном языке. В любом случае, языком может быть компилированный или интерпретированный язык, объединенный с реализациями аппаратных средств.
Способы и устройства в соответствии с настоящим изобретением могут быть также осуществлены за счет обмена информацией, материализованного в виде программного кода, который передают в некоторой среде передачи информации, такой как электрические провода или кабели, волоконная оптика или другом средстве связи, причем после приема и загрузки программного кода и его выполнения машиной, такой как EPROM, вентильная матрица, программируемое логическое устройство (PLD), компьютер пользователя, видеомагнитофон и т.п., или приемная машина, имеющая возможности обработки сигнала, например, в соответствии с описанными здесь выше примерными вариантами эта машина становится устройством для осуществления настоящего изобретения. В случае реализации на процессоре общего назначения программный код совместно с процессором образует уникальное устройство, которое обладает функциональными возможностями в соответствии с настоящим изобретением. Кроме того, следует иметь в виду, что в соответствии с настоящим изобретением вообще может быть использована любая технология хранения информации, которая является комбинацией аппаратных и программных средств.
Несмотря на то, что были описаны предпочтительные варианты осуществления изобретения со ссылкой на чертежи, совершенно ясно, что могут быть использованы и другие аналогичные варианты, причем в них специалистами в данной области могут быть внесены изменения и дополнения, которые не выходят однако за рамки приведенной ниже формулы изобретения. Например, в то время как примерные сетевые среды в соответствии с настоящим изобретением описаны в виде связанных в общую сеть среды, такой как среда связанных сетью одноранговых пользователей следует иметь в виду, что настоящее изобретение не ограничивается только этим вариантом, причем описанные в настоящем изобретении способы могут быть применены к любому вычислительному устройству или к любой вычислительной среде, например, к игровой стойке, карманному компьютеру, портативному компьютеру и т.п., с проводным или беспроводным соединением, при этом указанные способы могут быть применены к любому числу таких вычислительных устройств, соединенных при помощи сети связи и взаимодействующих в этой сети. Более того, следует подчеркнуть, что могут быть использованы различные компьютерные платформы, в том числе операционные системы портативных устройств и специфические операционные системы другого применения, особенно при возрастании числа объединенных в сеть беспроводных устройств. Более того, настоящее изобретение может быть осуществлено в виде множества вычислительных микросхем или устройств, причем хранение информации может быть осуществлено во множестве различных устройств. Таким образом, настоящее изобретение не ограничено случаем какого-либо единственного варианта, а скорее должно рассматриваться в объеме приложенной формулы изобретения.

Claims (54)

1. Способ создания цифровой сигнатуры в цифровом объекте для использования в комбинации с цифровым объектом, который содержит по меньшей мере один подобъект, причем упомянутый способ обеспечивает цифровую сигнатуру для по меньшей мере одной области, при этом каждая из упомянутых по меньшей мере одной областей состоит из всего или части одного из упомянутых по меньшей мере одного подобъекта, причем упомянутые подобъекты могут быть переупорядочены внутри объекта без нарушения достоверности цифровой сигнатуры, при этом способ предусматривает:
создание массива, содержащего для каждой из упомянутых по меньшей мере одной области спецификатор области, идентифицирующий область;
формирование цифровой сигнатуры на основании данных, которые содержат каждую область и упомянутый массив; и
добавление в цифровой объект подобъект с сигнатурой, содержащий упомянутый массив и упомянутую цифровую сигнатуру.
2. Способ по п.1, в котором каждая из упомянутых по меньшей мере одной областей содержит подобъект из упомянутых по меньшей мере одного подобъектов.
3. Способ по п.1, в котором каждый из упомянутых спецификаторов областей содержит контрольную сумму, вычисленную в соответствии с алгоритмом вычисления контрольной суммы.
4. Способ по п.3, в котором упомянутую контрольную сумму подсчитывают для области.
5. Способ по п.3, в котором упомянутую контрольную сумму подсчитывают для подобъекта, содержащего эту область.
6. Способ по п.3, в котором упомянутый подобъект с сигнатурой содержит идентификатор алгоритма вычисления контрольной суммы, причем идентификатор идентифицирует используемый алгоритм вычисления контрольной суммы.
7. Способ по п.3, в котором каждый из упомянутых спецификаторов областей содержит длину контрольной суммы.
8. Способ по п.1, в котором упомянутый подобъект с сигнатурой содержит идентификатор алгоритма сигнатуры, причем идентификатор идентифицирует алгоритм сигнатуры, используемый для создания цифровой сигнатуры.
9. Способ по п.1, в котором упомянутый подобъект с сигнатурой содержит идентификатор подписавшейся стороны, идентифицирующий подписавшуюся сторону для верификации указанной цифровой сигнатуры.
10. Способ по п.9, в котором упомянутый идентификатор подписавшейся стороны содержит цифровые сертификаты, необходимые для надежной идентификации и верификации открытого ключа упомянутой подписавшейся стороны.
11. Способ по п.1, в котором каждый из упомянутых спецификаторов областей содержит значение смещения области, идентифицирующее начальное местоположение соответствующей области в подобъекте.
12. Способ по п.1, в котором каждый из упомянутых спецификаторов областей содержит размер области, идентифицирующий размер соответствующей области в подобъекте.
13. Способ по п.1, в котором упомянутый объект представляет собой объект заголовка для ASF файла.
14. Способ по п.13, в котором упомянутый новый объект дополнительно содержит идентификатор GUID (глобальный уникальный идентификатор).
15. Способ проверки достоверности цифровой сигнатуры для использования в комбинации с цифровым объектом, содержащим по меньшей мере один подобъект, причем упомянутый способ осуществляет проверку достоверности цифровой сигнатуры для по меньшей мере одной области, при этом каждая из упомянутых по меньшей мере одной областей состоит из всего или части одного из упомянутых по меньшей мере одного подобъекта, причем массив содержит спецификаторы областей для каждой из упомянутых по меньшей мере одной областей, причем способ предусматривает:
идентификацию области, соответствующей каждому из упомянутых спецификаторов области;
создание объекта данных, содержащего упомянутый массив и, для каждого из упомянутых спецификаторов области - упомянутую область, соответствующую упомянутому спецификатору области; и
проверку достоверности упомянутой цифровой сигнатуры, используемой для упомянутого объекта данных.
16. Способ по п.15, в котором упомянутый объект представляет собой объект заголовка для ASF файла.
17. Способ проверки достоверности цифровой сигнатуры для использования в комбинации с цифровым объектом, который содержит по меньшей мере один подобъект, причем упомянутый способ осуществляет проверку достоверности цифровой сигнатуры для по меньшей мере одной области, при этом каждая из упомянутых по меньшей мере одной областей состоит из всего или части одного из упомянутых по меньшей мере одного подобъекта, причем массив содержит спецификаторы областей для каждой из упомянутых по меньшей мере одной областей, при этом способ предусматривает:
определение числа цифровых сигнатур, присутствующих в упомянутом цифровом объекте;
проверку достоверности каждой из упомянутых цифровых сигнатур.
18. Способ по п.17, который дополнительно предусматривает возврат значения ошибки, если число цифровых сигнатур, присутствующих в упомянутом цифровом объекте, равно нулю.
19. Система для создания цифровой сигнатуры в цифровом объекте для использования в комбинации с цифровым объектом, который содержит по меньшей мере один подобъект, причем упомянутая система обеспечивает цифровую сигнатуру для по меньшей мере одной области, при этом каждая из упомянутых по меньшей мере одной областей состоит из всего или части одного из упомянутых по меньшей мере одного подобъекта, причем упомянутые подобъекты могут быть переупорядочены в объекте без нарушения достоверности цифровой сигнатуры, при этом упомянутая система включает в себя:
средство создания массива, позволяющее создать массив, который содержит, для каждой из упомянутых по меньшей мере одной областей, спецификатор области, идентифицирующий область;
средство подписи для создания цифровой сигнатуры на основании данных, содержащих каждую область и упомянутый массив; и
средство добавления подобъекта с сигнатурой, позволяющее добавлять подобъект с сигнатурой, содержащий упомянутый массив и упомянутую цифровую сигнатуру, в цифровой объект.
20. Система по п.19, в которой каждая из упомянутых по меньшей мере одной областей содержит подобъект из упомянутых по меньшей мере одного подобъектов.
21. Система по п.19, в которой каждый из упомянутых спецификаторов областей содержит контрольную сумму, вычисленную в соответствии с алгоритмом вычисления контрольной суммы.
22. Система по п.21, в которой упомянутую контрольную сумму подсчитывают для области.
23. Система по п.21, в которой упомянутую контрольную сумму подсчитывают для подобъекта, содержащего эту область.
24. Система по п.21, в которой упомянутый подобъект с сигнатурой содержит идентификатор алгоритма контрольной суммы, причем идентификатор идентифицирует используемый алгоритм вычисления контрольной суммы.
25. Система по п.21, в которой каждый из упомянутых спецификаторов областей содержит длину контрольной суммы.
26. Система по п.19, в которой упомянутый подобъект с сигнатурой содержит идентификатор алгоритма сигнатуры, идентифицирующий алгоритм сигнатуры, используемый для создания цифровой сигнатуры.
27. Система по п.19, в которой упомянутый подобъект с сигнатурой содержит идентификатор подписавшейся стороны, идентифицирующий подписавшуюся сторону, для верификации упомянутой цифровой сигнатуры.
28. Система по п.27, в которой упомянутый идентификатор подписавшейся стороны содержит цифровые сертификаты, необходимые для надежной идентификации и верификации открытого ключа упомянутой подписавшейся стороны.
29. Система по п.19, в которой каждый из упомянутых спецификаторов областей содержит значение смещения области, идентифицирующее начальное местоположение соответствующей области в подобъекте.
30. Система по п.19, в которой каждый из упомянутых спецификаторов областей содержит размер области, идентифицирующий размер соответствующей области в подобъекте.
31. Система по п.19, в которой упомянутый объект представляет собой объект заголовка для ASF файла.
32. Система по п.31, в которой упомянутый новый объект дополнительно содержит идентификатор GUID.
33. Система для проверки достоверности цифровой сигнатуры для использования в комбинации с цифровым объектом, который содержит по меньшей мере один подобъект, причем упомянутая система производит проверку достоверности цифровой сигнатуры для по меньшей мере одной области, при этом каждая из упомянутых по меньшей мере одной областей состоит из всего или части одного из упомянутых по меньшей мере одного подобъекта, причем массив содержит спецификаторы областей для каждой из упомянутых по меньшей мере одной областей, при этом система включает в себя:
средство идентификации области для идентификации области, соответствующей каждому из упомянутых спецификаторов области;
средство создания объекта данных, для создания объекта данных, содержащего упомянутый массив и, для каждого из упомянутых спецификаторов области, упомянутую область, соответствующую упомянутому спецификатору области; и
средство проверки достоверности для проверки достоверности упомянутой цифровой сигнатуры, используемой в упомянутом объекте данных.
34. Система по п.33, в которой упомянутый объект представляет собой объект заголовка для ASF файла.
35. Система для проверки достоверности цифровой сигнатуры для использования в комбинации с цифровым объектом, который содержит по меньшей мере один подобъект, причем упомянутая система производит проверку достоверности цифровой сигнатуры по меньшей мере для одной области, при этом каждая из упомянутых по меньшей мере одной областей состоит из всего или части одного из упомянутых по меньшей мере одного подобъекта, причем массив содержит спецификаторы областей для каждой из упомянутых по меньшей мере одной областей, при этом упомянутая система включает в себя:
средство подсчета для определения числа цифровых сигнатур, присутствующих в упомянутом цифровом объекте;
средство проверки достоверности для проверки достоверности каждой из упомянутых цифровых сигнатур.
36. Система по п.35, которая дополнительно содержит:
средство возврата значения ошибки, если число цифровых сигнатур, присутствующих в упомянутом цифровом объекте, равно нулю.
37. Считываемый компьютером носитель, содержащий команды для обеспечения цифровой сигнатуры для использования в комбинации с цифровым объектом, который содержит по меньшей мере один подобъект, причем упомянутый считываемый компьютером носитель обеспечивает цифровую сигнатуру для по меньшей мере одной области, при этом каждая из упомянутых по меньшей мере одной областей состоит из всего или части одного из упомянутых по меньшей мере одного подобъекта, причем упомянутые подобъекты могут быть переупорядочены в объекте без нарушения достоверности цифровой сигнатуры, при этом упомянутые команды предусматривают операции:
создание массива, содержащего для каждой из упомянутых по меньшей мере одной областей, спецификатор области, идентифицирующий упомянутую область;
формирование цифровой сигнатуры на основании данных, которые содержат каждую область и упомянутый массив; и
добавление подобъекта с сигнатурой, содержащего упомянутый массив и упомянутую цифровую сигнатуру, в цифровой объект.
38. Считываемый компьютером носитель по п.37, в котором каждая из упомянутых по меньшей мере одной областей содержит подобъект из упомянутых по меньшей мере одного подобъектов.
39. Считываемый компьютером носитель по п.37, в котором каждый из упомянутых спецификаторов области содержит контрольную сумму, вычисленную в соответствии с алгоритмом вычисления контрольной суммы.
40. Считываемый компьютером носитель по п.39, в котором упомянутую контрольную сумму подсчитывают для области.
41. Считываемый компьютером носитель по п.39, в котором упомянутую контрольную сумму подсчитывают для подобъекта, содержащего область.
42. Считываемый компьютером носитель по п.39, в котором упомянутый подобъект с сигнатурой содержит идентификатор алгоритма вычисления контрольной суммы для идентификации используемого алгоритма вычисления контрольной суммы.
43. Считываемый компьютером носитель по п.39, в котором каждый из упомянутых спецификаторов области содержит длину контрольной суммы.
44. Считываемый компьютером носитель по п.37, в котором упомянутый подобъект с сигнатурой содержит идентификатор алгоритма сигнатуры для идентификации алгоритма сигнатуры, используемого для создания цифровой сигнатуры.
45. Считываемый компьютером носитель по п.37, в котором упомянутый подобъект с сигнатурой содержит идентификатор подписавшейся стороны, идентифицирующий подписавшуюся сторону, для верификации упомянутой цифровой сигнатуры.
46. Считываемый компьютером носитель по п.45, в котором упомянутый идентификатор подписавшейся стороны содержит цифровые сертификаты, необходимые для надежной идентификации и верификации открытого ключа упомянутой подписавшейся стороны.
47. Считываемый компьютером носитель по п.37, в котором каждый из упомянутых спецификаторов областей содержит значение смещения области, идентифицирующее начальное местоположение соответствующей области в подобъекте.
48. Считываемый компьютером носитель по п.37, в котором каждый из упомянутых спецификаторов областей содержит размер области, идентифицирующий размер соответствующей области в подобъекте.
49. Считываемый компьютером носитель по п.37, в котором упомянутый объект представляет собой объект заголовка для ASF файла.
50. Считываемый компьютером носитель по п.49, в котором упомянутый новый объект дополнительно содержит идентификатор GUID.
51. Считываемый компьютером носитель, содержащий команды для проверки достоверности цифровой сигнатуры, для использования в комбинации с цифровым объектом, который содержит по меньшей мере один подобъект, причем упомянутые команды производят проверку достоверности цифровой сигнатуры по меньшей мере для одной области, при этом каждая из упомянутых по меньшей мере одной областей состоит из всего или части одного из упомянутых по меньшей мере одного подобъекта, причем массив содержит спецификаторы областей для каждой из упомянутых по меньшей мере одной областей, при этом команды для осуществления действий предусматривают операции:
идентификацию области, соответствующей каждому из упомянутых спецификаторов области;
создание объекта данных, содержащего упомянутый массив и, для каждого из упомянутых спецификаторов области, упомянутую область, соответствующую упомянутому спецификатору области; и
проверку достоверности упомянутой цифровой сигнатуры с использованием в упомянутом объекте данных.
52. Считываемый компьютером носитель по п.51, в котором упомянутый объект представляет собой объект заголовка для ASF файла.
53. Считываемый компьютером носитель, содержащий команды для проверки достоверности цифровой сигнатуры для использования в комбинации с цифровым объектом, который содержит по меньшей мере один подобъект, причем упомянутые команды производят проверку достоверности цифровой сигнатуры для по меньшей мере одной области, при этом каждая из упомянутых по меньшей мере одной областей состоит из всего или части одного из упомянутых по меньшей мере одного подобъекта, причем массив содержит спецификаторы областей для каждой из упомянутых по меньшей мере одной областей, при этом команды для осуществления действий предусматривают:
определение числа цифровых сигнатур, присутствующих в упомянутом цифровом объекте;
проверку достоверности каждой из упомянутых цифровых сигнатур.
54. Считываемый компьютером носитель по п.53, причем упомянутый считываемый компьютером носитель с командами для осуществления действий дополнительно предусматривает возврат значения ошибки, если число цифровых сигнатур, присутствующих в упомянутом цифровом объекте, равно нулю.
RU2003126950/09A 2002-09-04 2003-09-03 Защита объекта заголовка потока данных RU2332703C2 (ru)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/235,587 2002-09-04
US10/235,587 US7401221B2 (en) 2002-09-04 2002-09-04 Advanced stream format (ASF) data stream header object protection

Publications (2)

Publication Number Publication Date
RU2003126950A RU2003126950A (ru) 2005-03-10
RU2332703C2 true RU2332703C2 (ru) 2008-08-27

Family

ID=31715304

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2003126950/09A RU2332703C2 (ru) 2002-09-04 2003-09-03 Защита объекта заголовка потока данных

Country Status (13)

Country Link
US (2) US7401221B2 (ru)
EP (1) EP1396978B1 (ru)
JP (1) JP4864284B2 (ru)
KR (1) KR100970830B1 (ru)
CN (1) CN1490736B (ru)
AT (1) ATE363801T1 (ru)
AU (1) AU2003244037B2 (ru)
BR (1) BR0303460A (ru)
CA (1) CA2441620C (ru)
DE (1) DE60314062T2 (ru)
HK (1) HK1064235A1 (ru)
MX (1) MXPA03007945A (ru)
RU (1) RU2332703C2 (ru)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2494454C2 (ru) * 2008-11-20 2013-09-27 Виаксесс Способ и устройство диагностики первого приема идентификатора, способ детектирования, носитель записи и компьютерная программа для этого способа

Families Citing this family (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7185082B1 (en) * 2000-08-09 2007-02-27 Microsoft Corporation Fast dynamic measurement of connection bandwidth using at least a pair of non-compressible packets having measurable characteristics
US7266613B1 (en) 2000-08-09 2007-09-04 Microsoft Corporation Fast dynamic measurement of bandwidth in a TCP network environment
US6792449B2 (en) * 2001-06-28 2004-09-14 Microsoft Corporation Startup methods and apparatuses for use in streaming content
US7093132B2 (en) * 2001-09-20 2006-08-15 International Business Machines Corporation Method and apparatus for protecting ongoing system integrity of a software product using digital signatures
US20060036447A1 (en) * 2002-05-15 2006-02-16 Stefan Roever Methods of facilitating contact management using a computerized system including a set of titles
US7707121B1 (en) 2002-05-15 2010-04-27 Navio Systems, Inc. Methods and apparatus for title structure and management
US7814025B2 (en) * 2002-05-15 2010-10-12 Navio Systems, Inc. Methods and apparatus for title protocol, authentication, and sharing
US7707066B2 (en) * 2002-05-15 2010-04-27 Navio Systems, Inc. Methods of facilitating merchant transactions using a computerized system including a set of titles
US7725557B2 (en) * 2002-06-24 2010-05-25 Microsoft Corporation Client-side caching of streaming media content
US20050038707A1 (en) * 2002-08-30 2005-02-17 Navio Systems, Inc. Methods and apparatus for enabling transactions in networks
JP3821086B2 (ja) * 2002-11-01 2006-09-13 ソニー株式会社 ストリーミングシステム及びストリーミング方法、クライアント端末及びデータ復号方法、並びにプログラム
US7650421B2 (en) * 2002-12-30 2010-01-19 Microsoft Corporation Adaptable accelerated content streaming
US7581255B2 (en) * 2003-01-21 2009-08-25 Microsoft Corporation Systems and methods for licensing one or more data streams from an encoded digital media file
US7370212B2 (en) 2003-02-25 2008-05-06 Microsoft Corporation Issuing a publisher use license off-line in a digital rights management (DRM) system
KR20040092649A (ko) * 2003-04-24 2004-11-04 엘지전자 주식회사 광디스크의 복사 방지 정보 관리방법
KR100972831B1 (ko) * 2003-04-24 2010-07-28 엘지전자 주식회사 엔크립트된 데이터의 보호방법 및 그 재생장치
KR100974449B1 (ko) * 2003-04-24 2010-08-10 엘지전자 주식회사 광디스크의 복사 방지 정보 관리방법
KR100974448B1 (ko) * 2003-04-24 2010-08-10 엘지전자 주식회사 광디스크의 복사 방지 정보 관리방법
BRPI0410999A (pt) 2003-06-05 2006-07-04 Intertrust Tech Corp sistemas e métodos interoperáveis para orquestração de serviço peer-to-peer
US20050021947A1 (en) * 2003-06-05 2005-01-27 International Business Machines Corporation Method, system and program product for limiting insertion of content between computer programs
US20040268400A1 (en) * 2003-06-26 2004-12-30 Microsoft Corporation Quick starting video content
US7054774B2 (en) * 2003-06-27 2006-05-30 Microsoft Corporation Midstream determination of varying bandwidth availability
JP2005025270A (ja) * 2003-06-30 2005-01-27 Toshiba Corp コンテンツ送信装置及びコンテンツ送信方法、コンテンツ受信装置及びコンテンツ受信方法
US7391717B2 (en) * 2003-06-30 2008-06-24 Microsoft Corporation Streaming of variable bit rate multimedia content
US20050010531A1 (en) * 2003-07-09 2005-01-13 Kushalnagar Nandakishore R. System and method for distributing digital rights management digital content in a controlled network ensuring digital rights
US7480382B2 (en) * 2003-09-30 2009-01-20 Microsoft Corporation Image file container
US7185195B2 (en) * 2003-12-14 2007-02-27 Realnetworks, Inc. Certificate based digital rights management
US7162533B2 (en) * 2004-04-30 2007-01-09 Microsoft Corporation Session description message extensions
US7559080B2 (en) * 2004-05-04 2009-07-07 Microsoft Corporation Automatically generating security policies for web services
US8438645B2 (en) 2005-04-27 2013-05-07 Microsoft Corporation Secure clock with grace periods
US8725646B2 (en) 2005-04-15 2014-05-13 Microsoft Corporation Output protection levels
US8484476B2 (en) * 2005-05-20 2013-07-09 Rovi Technologies Corporation Computer-implemented method and system for embedding and authenticating ancillary information in digitally signed content
WO2009016427A1 (en) * 2007-07-31 2009-02-05 Macrovision Corporation A computer-implemented method and system to enable out of band tracking for digital distribution
US8397072B2 (en) * 2005-05-20 2013-03-12 Rovi Solutions Corporation Computer-implemented method and system for embedding ancillary information into the header of a digitally signed executable
US20060265758A1 (en) 2005-05-20 2006-11-23 Microsoft Corporation Extensible media rights
US8984636B2 (en) 2005-07-29 2015-03-17 Bit9, Inc. Content extractor and analysis system
US20070028211A1 (en) * 2005-07-29 2007-02-01 Microsoft Corporation Interpreter security mechanism
US7895651B2 (en) 2005-07-29 2011-02-22 Bit 9, Inc. Content tracking in a network security system
US8272058B2 (en) 2005-07-29 2012-09-18 Bit 9, Inc. Centralized timed analysis in a network security system
US8560853B2 (en) * 2005-09-09 2013-10-15 Microsoft Corporation Digital signing policy
US9626667B2 (en) * 2005-10-18 2017-04-18 Intertrust Technologies Corporation Digital rights management engine systems and methods
BRPI0617490A2 (pt) 2005-10-18 2010-03-23 Intertrust Tech Corp sistemas e mÉtodos de mÁquina de gerenciamento de direitos digitais
US20070204078A1 (en) * 2006-02-09 2007-08-30 Intertrust Technologies Corporation Digital rights management engine systems and methods
US8055897B2 (en) * 2005-12-06 2011-11-08 Lippershy Celestial Llc Digital object title and transmission information
WO2007078987A2 (en) 2005-12-29 2007-07-12 Navio Systems, Inc. Software, systems, and methods for processing digital bearer instruments
US9177338B2 (en) * 2005-12-29 2015-11-03 Oncircle, Inc. Software, systems, and methods for processing digital bearer instruments
WO2007130502A2 (en) * 2006-04-29 2007-11-15 Navio Systems, Inc. Enhanced title processing arrangement
CN101473622B (zh) * 2006-05-15 2013-11-06 意大利电信股份公司 用于数据网络上的通信的带外鉴别方法和系统
DE602006001859D1 (de) * 2006-05-26 2008-08-28 Sap Ag Verfahren und Vorrichtung zum sicheren Nachrichtenverkehr in einem Netzwerk
US20080005558A1 (en) * 2006-06-29 2008-01-03 Battelle Memorial Institute Methods and apparatuses for authentication and validation of computer-processable communications
US10380621B2 (en) 2006-11-15 2019-08-13 Api Market, Inc. Title-acceptance and processing architecture
JP2010507862A (ja) * 2007-01-19 2010-03-11 エルジー エレクトロニクス インコーポレイティド コンテンツ保護方法及びデバイス並びにプログラム
JP2010507864A (ja) * 2007-02-16 2010-03-11 エルジー エレクトロニクス インコーポレイティド ドメイン管理方法及びドメインデバイス並びにプログラム
DE602007000919D1 (de) * 2007-05-18 2009-05-28 Sap Ag Verfahren und System zum Schutz einer Nachricht vor einem XML-Angriff beim Austausch in einem verteilten und dezentralisierten Netzwerksystem
CN101796837B (zh) * 2007-09-11 2012-12-19 Lg电子株式会社 安全签名方法、安全认证方法和iptv系统
US8325800B2 (en) 2008-05-07 2012-12-04 Microsoft Corporation Encoding streaming media as a high bit rate layer, a low bit rate layer, and one or more intermediate bit rate layers
US8379851B2 (en) 2008-05-12 2013-02-19 Microsoft Corporation Optimized client side rate control and indexed file layout for streaming media
US7860996B2 (en) 2008-05-30 2010-12-28 Microsoft Corporation Media streaming with seamless ad insertion
US8387150B2 (en) * 2008-06-27 2013-02-26 Microsoft Corporation Segmented media content rights management
US20100037062A1 (en) * 2008-08-11 2010-02-11 Mark Carney Signed digital documents
US8265140B2 (en) 2008-09-30 2012-09-11 Microsoft Corporation Fine-grained client-side control of scalable media delivery
KR20100040545A (ko) * 2008-10-10 2010-04-20 삼성전자주식회사 구조화된 리치 미디어 데이터 기반의 사용자 인터페이스를 제공하기 위한 장치 및 방법
US8359370B2 (en) * 2008-10-31 2013-01-22 Disney Enterprises, Inc. System and method for managing digital media content
US20100166383A1 (en) * 2008-12-31 2010-07-01 Nxp B.V. System and method for providing trick modes
US9589110B2 (en) 2011-04-11 2017-03-07 Intertrust Technologies Corporation Information security systems and methods
WO2013019519A1 (en) 2011-08-02 2013-02-07 Rights Over Ip, Llc Rights-based system
US8898244B2 (en) 2011-10-20 2014-11-25 Allen Miglore System and method for transporting files between networked or connected systems and devices
US20170109048A1 (en) * 2014-03-31 2017-04-20 Hewlett Packard Enterprise Development Lp Memory unit with data segment information in header
US9838494B1 (en) * 2014-06-24 2017-12-05 Amazon Technologies, Inc. Reducing retrieval times for compressed objects
US10102218B2 (en) 2014-09-30 2018-10-16 Microsoft Technology Licensing, Llc File system with per-extent checksums

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6135646A (en) * 1993-10-22 2000-10-24 Corporation For National Research Initiatives System for uniquely and persistently identifying, managing, and tracking digital objects
US6367013B1 (en) * 1995-01-17 2002-04-02 Eoriginal Inc. System and method for electronic transmission, storage, and retrieval of authenticated electronic original documents
US6041345A (en) * 1996-03-08 2000-03-21 Microsoft Corporation Active stream format for holding multiple media streams
JP3540511B2 (ja) * 1996-06-18 2004-07-07 株式会社東芝 電子署名検証装置
US6367012B1 (en) * 1996-12-06 2002-04-02 Microsoft Corporation Embedding certifications in executable files for network transmission
US6134243A (en) * 1998-01-15 2000-10-17 Apple Computer, Inc. Method and apparatus for media data transmission
US6751623B1 (en) * 1998-01-26 2004-06-15 At&T Corp. Flexible interchange of coded multimedia facilitating access and streaming
JP2000004256A (ja) * 1998-04-17 2000-01-07 Toshiba Corp ストリ―ムデ―タ処理システムおよびストリ―ムデ―タの制限方法
US6415385B1 (en) * 1998-07-29 2002-07-02 Unisys Corporation Digital signaturing method and system for packaging specialized native files for open network transport and for burning onto CD-ROM
US7228437B2 (en) * 1998-08-13 2007-06-05 International Business Machines Corporation Method and system for securing local database file of local content stored on end-user system
US6085321A (en) * 1998-08-14 2000-07-04 Omnipoint Corporation Unique digital signature
US7051275B2 (en) * 1998-09-15 2006-05-23 Microsoft Corporation Annotations for multiple versions of media content
US6671805B1 (en) * 1999-06-17 2003-12-30 Ilumin Corporation System and method for document-driven processing of digitally-signed electronic documents
KR100653804B1 (ko) * 2000-01-21 2006-12-05 소니 가부시끼 가이샤 데이터 처리 장치 및 방법
US6985966B1 (en) * 2000-03-29 2006-01-10 Microsoft Corporation Resynchronizing globally unsynchronized multimedia streams
JP2001282619A (ja) * 2000-03-30 2001-10-12 Hitachi Ltd コンテンツ改竄検知方法及びその実施装置並びにその処理プログラムを記録した記録媒体
US7302490B1 (en) * 2000-05-03 2007-11-27 Microsoft Corporation Media file format to support switching between multiple timeline-altered media streams
US6796489B2 (en) * 2000-06-06 2004-09-28 Ingeo Systems, Inc. Processing electronic documents with embedded digital signatures
US7006099B2 (en) * 2000-08-15 2006-02-28 Aware, Inc. Cache system and method for generating uncached objects from cached and stored object components
JP2002091299A (ja) * 2000-08-31 2002-03-27 Internatl Business Mach Corp <Ibm> 電子署名システム、電子署名方法、電子署名の仲介方法、電子署名の仲介システム、情報端末および記録媒体
JP3730498B2 (ja) * 2000-09-19 2006-01-05 株式会社東芝 署名用記憶媒体
KR20020032803A (ko) * 2000-10-27 2002-05-04 구자홍 스트리밍 서비스를 위한 파일 구조
US7069491B2 (en) * 2000-11-27 2006-06-27 Macrovision Europe Limited Copy protected DVD and method for producing and validating same
US20020131761A1 (en) * 2001-01-16 2002-09-19 Kojiro Kawasaki Information recording medium, apparatus and method for recording/reproducing information to/from the medium
US20020141568A1 (en) * 2001-04-02 2002-10-03 Acoustic Technologies, Inc. Dual threshold correlator
US7457312B2 (en) * 2002-06-19 2008-11-25 Microsoft Corporation Bandwidth sharing in advanced streaming format
US7451229B2 (en) * 2002-06-24 2008-11-11 Microsoft Corporation System and method for embedding a streaming media format header within a session description message
US7246318B2 (en) * 2002-06-28 2007-07-17 Microsoft Corporation Application programming interface for utilizing multimedia data
FR2848526B1 (fr) * 2002-12-17 2005-12-30 Tech D Etudes Realisations Et Dispositif d'amarrage d'un aeronef

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Eastlake 3rd, D. et al. (Extensible Markup Language) XML-Signature Syntax and Processing, RFC 3275, март 2002 (Найдено в Интернет: http://www.ietf.org/rfc/rfc3275.txt). *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2494454C2 (ru) * 2008-11-20 2013-09-27 Виаксесс Способ и устройство диагностики первого приема идентификатора, способ детектирования, носитель записи и компьютерная программа для этого способа

Also Published As

Publication number Publication date
CA2441620C (en) 2012-03-13
US20040054912A1 (en) 2004-03-18
KR20040021553A (ko) 2004-03-10
JP4864284B2 (ja) 2012-02-01
BR0303460A (pt) 2004-09-08
HK1064235A1 (en) 2005-01-21
DE60314062T2 (de) 2007-11-22
EP1396978A2 (en) 2004-03-10
CN1490736A (zh) 2004-04-21
MXPA03007945A (es) 2004-10-15
KR100970830B1 (ko) 2010-07-16
EP1396978B1 (en) 2007-05-30
US20080189552A1 (en) 2008-08-07
EP1396978A3 (en) 2005-02-02
EP1396978A8 (en) 2004-06-23
AU2003244037A1 (en) 2004-03-18
ATE363801T1 (de) 2007-06-15
CN1490736B (zh) 2010-09-08
US7401221B2 (en) 2008-07-15
JP2004265380A (ja) 2004-09-24
DE60314062D1 (de) 2007-07-12
AU2003244037B2 (en) 2008-12-11
US7747854B2 (en) 2010-06-29
CA2441620A1 (en) 2004-03-04
RU2003126950A (ru) 2005-03-10

Similar Documents

Publication Publication Date Title
RU2332703C2 (ru) Защита объекта заголовка потока данных
US7930764B2 (en) Certificate based digital rights management
KR100338397B1 (ko) 자료파일내자료가진짜임을검증하기위한방법및그장치
US5892904A (en) Code certification for network transmission
US8239954B2 (en) Access control based on program properties
JP2020517200A (ja) Utxo基盤プロトコルを利用したブロックチェーン基盤の文書管理方法及びこれを利用した文書管理サーバ{method for managing document on basis of blockchain by using utxo−based protocol,and document management server using same}
JP5314016B2 (ja) 情報処理装置、暗号鍵の管理方法、コンピュータプログラム及び集積回路
US7155743B2 (en) Method and system for controlling use of a dynamically linked software library
JP4928550B2 (ja) ストリーミングを介した保護ファイルへのリモートアクセス
US7062650B2 (en) System and method for verifying integrity of system with multiple components
JP5480135B2 (ja) 暗号で保護した文書の作成と検証
US10805067B1 (en) Doubly linked blockchain
US8261082B1 (en) Self-signing electronic documents
WO2015101561A1 (en) Method and system for providing transparent trusted computing
JPH10133952A (ja) ファイルアクセスを行うための方法およびその装置ならびに署名データ構造
USRE43934E1 (en) Method and apparatus to assign trust to a key
US20060059350A1 (en) Strong names
US20100223469A1 (en) Method, System and Computer Program Product for Certifying Software Origination
JP2005129045A (ja) 信頼判定エンティティに対する実行可能ファイルの安全な識別
Boyar et al. Quotable signatures for authenticating shared quotes
US20240111884A1 (en) Authenticating a File System Within Untrusted Storage

Legal Events

Date Code Title Description
PC41 Official registration of the transfer of exclusive right

Effective date: 20150526

MM4A The patent is invalid due to non-payment of fees

Effective date: 20190904