Область техники
Изобретение относится к устройству и способу шифрования, устройству и способу дешифрования и устройству и способу обработки информации, и более конкретно - к устройству и способу шифрования, устройству и способу дешифрования и устройству и способу обработки информации, благодаря которым обеспечивается высокая степень защищенности информации.
Предшествующий уровень техники
В последнее время создана сеть, которая состоит из множества электронных устройств, в том числе аудио,- видеоустройств, компьютеров и так далее, которые соединены друг с другом посредством шины таким образом, что между ними могут передаваться различные данные.
В том случае, когда, например, используется сеть вышеупомянутого типа, данные видеофильма, воспроизводимые с ЦВД (цифрового видеодиска) или ЦГД (цифрового гибкого диска) посредством устройства воспроизведения ЦВД, подсоединенного к сети, можно передавать по шине на дисплей типа телевизионного приемника или монитора и отображать на нем. Обычно на это имеется разрешение от владельцев авторских прав, получаемое в момент приобретения ЦВД для воспроизведения и просмотра от видеофильма, воспроизводимого с ЦВД на дисплее.
Однако обычно владелец авторских прав не разрешает снимать копии данных, воспроизводимых с ЦВД на другой носитель записи, и использовать их. Таким образом, чтобы предотвратить передачу данных через шину (сеть) с несанкционированно снятой копии, можно шифровать данные на стороне передачи и дешифровать данные на стороне приема.
Однако электронное устройство потребителя, типа устройств воспроизведения ЦВД и телевизионных приемников, обычно проектируют и производят для заранее определенных целей таким образом, чтобы пользователь не мог его модифицировать или вводить в него отличающуюся часть, чтобы получить или изменить внутренние данные (изменить функции) устройства. С другой стороны, что касается, например, персональных компьютеров, то архитектура или электронные схемы являются открытыми для пользователей, и в них можно добавлять плату и устанавливать различные прикладные программы для добавления или изменения различных функций. В соответствии с этим, что касается персонального компьютера, то можно сравнительно легко осуществлять прямой доступ или изменить данные во внутренней шине персонального компьютера посредством добавления заранее определенного аппаратного средства или применения программы системы программного обеспечения. Это показывает что посредством создания и применения прикладного программного обеспечения легко можно выполнять, например, прием данных, передаваемых в виде шифрованных данных из устройства воспроизведения ЦВД, на телевизионный приемник, и дешифрование или копирование принимаемых данных персональным компьютером.
Другими словами, персональный компьютер имеет слабую связь между частью канала связи, оказывающей влияние на связь посредством шины, и частью прикладной программы, осуществляющей подготовку передаваемых данных, и использование принимаемых данных, и включает в себя множество узлов, которые могут физически и логически модифицироваться пользователем. В противоположность этому, потребительские электронные устройства имеют сильную связь между указанными элементами и лишь в небольшой степени допускают вмешательство пользователя.
Сущность изобретения
Задачей настоящего изобретения является создание устройства и способа шифрования, устройства и способа дешифрования и устройства и способа обработки информации, благодаря которым можно с более высокой степенью надежности предотвращать несанкционированное копирование данных.
Для достижения указанного результата, в соответствии с одним из аспектов настоящего изобретения, предложено устройство шифрования, содержащее средство шифрования для шифрования данных, с использованием криптографического ключа, первое средство генерирования для генерирования первого ключа, второе средство генерирования для генерирования второго ключа, который изменяется с предварительно определенным тактированием при шифровании данных, и средство формирования для формирования криптографического ключа с использованием первого ключа и второго ключа.
В соответствии со вторым аспектом настоящего изобретения предложен способ шифрования, включающий операции шифрования данных с использованием криптографического ключа, генерирования первого ключа, генерирования второго ключа, который изменяется с предварительно определенным тактированием при шифровании данных, и формирования криптографического ключа с использованием первого ключа и второго ключа.
В устройстве шифрования и способе шифрования за счет формирования криптографического ключа с использованием первого ключа и второго ключа, изменяемого с предварительно определенным тактированием при шифровании данных, обеспечивается возможность шифрования с высокой степенью надежности.
В соответствии со следующим аспектом настоящего изобретения заявлено устройство дешифрования, содержащее средство приема для приема шифрованных данных, средство дешифрования для дешифрования принимаемых данных с использованием криптографического ключа, первое средство генерирования для генерирования первого ключа, второе средство генерирования для генерирования второго ключа, который изменяется с предварительно определенным тактированием при дешифровании, и средство формирования для формирования криптографического ключа с использованием первого ключа и второго ключа.
В соответствии еще с одним аспектом настоящего изобретения способ дешифрования, включающий операции приема шифрованных данных, дешифрования принимаемых данных с использованием криптографического ключа, генерирования первого ключа, генерирования второго ключа, который изменяется с предварительно определенным тактированием при дешифровании данных, и формирования криптографического ключа с использованием первого ключа и второго ключа.
В устройстве дешифрования и способе дешифрования, за счет формирования криптографического ключа с использованием первого ключа и второго ключа, изменяемого с предварительно определенным тактированием при дешифровании данных, обеспечивается возможность дешифрования шифрованных данных с высокой степенью надежности.
В соответствии еще с одним аспектом настоящего изобретения предложена система обработки информации, содержащая множество устройств обработки информации, соединенных друг с другом посредством шины, причем устройства обработки информации включают первые устройства обработки информации, каждое из которых имеет функцию, изменение которой не является открытым для пользователя, и вторые устройства обработки информации, каждое из которых имеет функцию, изменение которой является открытым для пользователя, причем каждое из первых устройств обработки информации включает в себя первое средство приема для приема шифрованных данных, первое средство дешифрования для дешифрования данных, принимаемых первым средством приема, с использованием криптографического ключа, первое средство генерирования для генерирования первого ключа, второе средство генерирования для генерирования второго ключа, который изменяется с предварительно определенным тактированием при дешифровании данных, и первое средство формирования для формирования криптографического ключа с использованием первого ключа, сформированного первым средством генерирования, и второго ключа, сформированного вторым средством генерирования, каждое из вторых устройств обработки информации включает в себя второе средство приема для приема шифрованных данных, третье средство генерирования для генерирования первого ключа, четвертое средство генерирования для генерирования второго ключа, который изменяется с предварительно определенным тактированием при дешифровании данных, второе средство формирования для формирования первого криптографического ключа с использованием одного из упомянутых первого ключа, сформированного третьим средством генерирования, и второго ключа, сформированного четвертым средством генерирования, третье средство формирования для формирования второго криптографического ключа, с использованием другого из упомянутых первого ключа, сформированного третьим средством генерирования, и второго ключа, сформированного четвертым средством генерирования, второе средство дешифрования для дешифрования шифрованных данных, принимаемых средством приема, с использованием первого криптографического ключа, и третье средство дешифрования для дополнительного дешифрования данных, дешифрованных вторым средством дешифрования, с использованием второго криптографического ключа.
В соответствии еще с одним аспектом настоящего изобретения предложен способ обработки информации для системы обработки информации, состоящей из множества устройств обработки информации, соединенных друг с другом шиной, при этом устройства обработки информации включают в себя первые устройства обработки информации, каждое из которых имеет функцию, изменение которой не является открытым для пользователя, и вторые устройства обработки информации, каждое из которых имеет функцию, изменение которой является открытым для пользователя, включающий операции, выполняемые каждым из первых устройств обработки информации, приема шифрованных данных, дешифрования принятых данных с использованием криптографического ключа, генерирования первого ключа, генерирования второго ключа, который изменяется с предварительно определенным тактированием при дешифровании данных, и формирования криптографического ключа с использованием первого ключа, сформированного на первом этапе генерирования, и второго ключа, сформированного на втором этапе генерирования, и операции, выполняемые каждым из вторых устройств обработки информации, приема шифрованных данных, генерирования первого ключа, генерирования второго ключа, который изменяется с предварительно определенным тактированием при дешифровании данных, формирования первого криптографического ключа с использованием одного из упомянутых первого ключа и второго ключа, формирования второго криптографического ключа, с использованием другого из упомянутых первого ключа и второго ключа, дешифрования данных, принимаемых на этапе приема, с использованием первого криптографического ключа и дополнительного дешифрования данных с использованием второго криптографического ключа.
В заявленных системе обработки информации и способе обработки информации, поскольку в первых устройствах обработки информации, имеющих функции, изменение которых не раскрыто пользователю, криптографический ключ формируется с использованием первого ключа и второго ключа, изменяющегося с предварительно определенным тактированием при шифровании данных, а во вторых устройствах обработки информации, имеющих функции, изменение которых раскрыто для пользователя, формируется первый криптографический ключ с использованием одного из упомянутых первого ключа и второго ключа, изменяющегося с предварительно определенным тактированием при дешифровании данных, а затем формируется второй криптографический ключ с использованием другого из упомянутых ключей, после чего шифрованные данные дешифруются с использованием первого криптографического ключа, и дешифрованные данные дополнительно дешифруются с использованием второго криптографического ключа, заявленные устройство и способ обработки информации имеют более высокую степень надежности, чем известные из предшествующего уровня техники.
В соответствии еще с одним аспектом настоящего изобретения, заявлено устройство обработки информации, содержащее средство приема для приема данных, передаваемых на него посредством шины, средство формирования, включающее программу системы программного обеспечения, для формирования первого криптографического ключа и второго криптографического ключа, который изменяется с предварительно определенным тактированием при дешифровании данных, из данных, принимаемых средством приема, первое средство дешифрования для дешифрования шифрованных данных, принимаемых средством приема, с использованием одного из упомянутых первого криптографического ключа и второго криптографического ключа, сформированных средством формирования, и второе средство дешифрования для дополнительного дешифрования и обработки данных, дешифрованных первым средством дешифрования, с использованием другого из упомянутых первого криптографического ключа и второго криптографического ключа, сформированных средством формирования.
В соответствии еще с одним аспектом настоящего изобретения заявлен способ обработки информации, включающий операции приема данных, передаваемых по шине, формирования из принимаемых данных первого криптографического ключа и второго криптографического ключа, изменяющегося с предварительно определенным тактированием при дешифровании данных, дешифрования принимаемых шифрованных данных с использованием одного из упомянутых первого криптографического ключа и второго криптографического ключа, и дополнительного дешифрования дешифрованных данных с использованием другого из упомянутых первого криптографического ключа и второго криптографического ключа.
В указанных устройстве обработки информации и способе обработки информации, поскольку первый криптографический ключ и второй криптографический ключ, изменяющийся с предварительно определенным тактированием при дешифровании данных, формируются на основе программы системы программного обеспечения, дешифрование можно выполнять для каждой прикладной программы, и несанкционированное копирование можно предотвращать с высокой степенью надежности.
Вышеперечисленные и другие задачи, особенности и преимущества настоящего изобретения станут очевидными из последующего описания и формулы изобретения, совместно с прилагаемыми чертежами, на которых аналогичные детали или элементы обозначены одинаковыми ссылочными позициями.
Краткое описание чертежей
Фиг.1 - блок-схема, иллюстрирующая пример построения системы обработки информации, в которой может быть использовано настоящее изобретение.
Фиг.2 - блок-схема, иллюстрирующая пример выполнения устройства воспроизведения цифрового видеодиска (ЦВД), персонального компьютера (ПК) и устройства на магнитооптических дисках, показанных на фиг.1.
Фиг.3 - блок-схема, иллюстрирующая процедуру идентификации, выполняемую в показанной на фиг.1 системе обработки информации.
Фиг.4 - временная диаграмма, иллюстрирующая показанную на фиг.3 процедуру идентификации.
Фиг.5 - схематичное представление формата уникального ИД (идентификатора) узла.
Фиг.6 - временная диаграмма, иллюстрирующая другую процедуру идентификации.
Фиг.7 - аналогичная диаграмма, иллюстрирующая еще одну процедуру идентификации.
Фиг.8 - аналогичная диаграмма, иллюстрирующая еще одну процедуру идентификации.
Фиг.9 - аналогичная диаграмма, иллюстрирующая еще одну процедуру идентификации.
Фиг.10 - блок-схема, иллюстрирующая процедуру шифрования.
Фиг.11 - блок-схема, иллюстрирующая пример построения интерфейса 1394, используемого в показанной на фиг.10 процедуре шифрования.
Фиг.12 - блок-схема, иллюстрирующая пример более подробного построения показанного на фиг.11 интерфейса 1394.
Фиг.13 - блок-схема, иллюстрирующая пример более подробного построения показанного на фиг.12 сдвигового регистра с линейной обратной связью.
Фиг.14 - блок-схема, иллюстрирующая пример более подробного построения показанного на фиг.12 сдвигового регистра с линейной обратной связью.
Фиг.15 - блок-схема, иллюстрирующая пример построения интерфейса 1394, используемого в показанной на фиг.10 процедуре шифрования.
Фиг.16 - блок-схема, иллюстрирующая более детальное построение показанного на фиг.15 интерфейса 1394.
Фиг.17 - блок-схема, иллюстрирующая пример построения интерфейса 1394, используемого в показанной на фиг.10 процедуре шифрования.
Фиг.18 - блок-схема, иллюстрирующая более детальное построение показанного на фиг.17 интерфейса 1394.
Фиг.19 представляет блок-схему, иллюстрирующую пример построения части системы, используемой в показанной на фиг.10 процедуре шифрования.
Фиг.20 представляет блок-схему, иллюстрирующую более детальное построение показанной на фиг.19 части системы.
Фиг.21 - блок-схема, иллюстрирующая другой пример построения интерфейса, используемого в показанной на фиг.10 процедуре шифрования.
Фиг.22 - блок-схема, иллюстрирующая другой пример построения интерфейса 1394, используемого в показанной на фиг.10 процедуре шифрования.
Фиг.23 - блок-схема, иллюстрирующая другой пример построения интерфейса 1394, используемого в показанной на фиг.10 процедуре шифрования.
Фиг.24 - блок-схема, иллюстрирующая другой пример построения части системы, используемой в показанной на фиг.10 процедуре шифрования.
Описание предпочтительных вариантов осуществления изобретения
На фиг.1 представлен пример системы обработки информации, в которой может быть использовано настоящее изобретение. Показанная система обработки информации включает в себя устройство 1 воспроизведения с цифрового видеодиска или цифрового гибкого диска (ЦВД), персональный компьютер (ПК) 2, устройство 3 на магнитооптических дисках, приемник 4 передаваемых данных, монитор 5 и телевизионный приемник 6, которые все соединены друг с другом посредством последовательной шины 11 1394 ИИРЭ (Института инженеров по электронике и радиоэлектронике).
На фиг.2 более подробно показано внутреннее построение устройства 1 воспроизведения с ЦВД, персонального компьютера 2 и устройства 3 на магнитооптических дисках показанной на фиг.1 системы обработки информации. Устройство 1 воспроизведения с ЦВД подсоединено к шине 11 1394 посредством интерфейса 26 1394. Устройство 1 воспроизведения с ЦВД включает в себя центральный процессор (ЦП) 21, который выполняет различные виды обработки в соответствии с программами, хранящимися в ПЗУ (постоянном запоминающем устройстве) 22. ЗУПВ (запоминающее устройство с произвольной выборкой) 23 используется для запоминания данных, программ и т.д., необходимых для ЦП 21 для выполнения различных процессов обработки. Операционный блок 24 содержит кнопки, переключатели, пульт дистанционного управления и т.д., и при его приведении в действие пользователем он выдает сигнал, соответствующий операции. Дисковод 25 приводит в действие ЦВД (не показан) для воспроизведения записанных на ЦВД данных. ЭСППЗУ (электрически стираемое программируемое постоянное запоминающее устройство) 27 запоминает информацию, типа информации о ключе, которая сохраняется и при выключении источника питания устройства. Внутренняя шина 28 соединяет компоненты друг с другом.
Устройство 3 на магнитооптических дисках включает в себя ЦП 31, ПЗУ 32, ЗУПВ 33, операционный блок 34, дисковод 35, интерфейс 36 1394, ЭСППЗУ 37 и внутреннюю шину 38, которые имеют функции, аналогичные функциям описанного выше устройства 1 воспроизведения с ЦВД. Во избежание избыточности описание аналогичных компонентов опускается. Дисковод 35 приводит в действие магнитооптический диск (не показан) для записи данных на магнитооптический диск или воспроизведения с такого диска.
Персональный компьютер 2 соединен с шиной 1394 через интерфейс 49 1394. Персональный компьютер 2 включает в себя ЦП 41, который выполняет различные виды обработки в соответствии с программами, хранящимися в ПЗУ 42 и ЗУПВ 43, в которые соответствующим образом запоминаются данные, программы и т.д., необходимые для выполнения ЦП 41 различных операций. К интерфейсу 44 ввода-вывода подсоединены клавишная панель 45 и мышь 46, и интерфейс 44 ввода-вывода выводит поступающие на него сигналы с клавишной панели 45 и мыши 46 на ЦП 41. С интерфейсом 44 ввода-вывода соединен дисковод 47 для жестких дисков (ДЖД), так что данные, программы и так далее можно записывать на жесткий диск (не показан) и воспроизводить с жесткого диска посредством драйвера 47 жесткого диска. На интерфейс 44 ввода-вывода можно соответствующим образом устанавливать плату расширения 48, так что можно дополнительно обеспечивать необходимую функцию для персонального компьютера 2. ЭСППЗУ 50 используется для запоминания информации, которая сохраняется и при выключении питания персонального компьютера 2, типа информации о различных ключах. Внутренняя шина 51 выполнена, например, в виде шины СПУ (соединения периферийных устройств), локальной шины или подобных им, и соединяет друг с другом упомянутые выше устройства.
Следует отметить, что внутренняя шина 51 открыта для пользователя, так что пользователь может, соответственно, принимать данные, передаваемые по внутренней шине 51 посредством соответствующего подсоединения определенной платы к плате расширения 48 или посредством создания и установки определенной программы системы программного обеспечения.
В противоположность этому, в любом из устройств электронной бытовой аппаратуры (ЭБА), типа устройства 1 воспроизведения с ЦВД и устройства 3 на магнитооптических дисках, внутренняя шина 28 или внутренняя шина 38 не открыты для пользователя и пользователь не может принимать передаваемые по ней данные, если для этого не выполнены специальные изменения.
Ниже описана процедура идентификации, выполняемая между источником и приемником. Здесь процедура идентификации выполняется, например, как показано на фиг.3, между программно-аппаратным средством 20 в виде одной из программ системы программного обеспечения, запомненных заранее в ПЗУ 22 устройства 1 воспроизведения с ЦВД, служащего в качестве источника, и лицензионным администратором 62 в виде одной из программ системы программного обеспечения, запомненных в ПЗУ 42 персонального компьютера 2, служащего в качестве приемника, и обрабатывается в ЦП 41.
На фиг.4 показана процедура идентификации, выполняемая между источником (устройством 1 воспроизведения с ЦВД) и приемником (персональным компьютером 2). Ключ обслуживания (ключ обслуживания) и функция (хеширование) запоминаются заранее в ЭСППЗУ 27 устройства 1 воспроизведения с ЦВД. Они оба представляются пользователю устройства 1 воспроизведения с ЦВД от владельца авторских прав и пользователь хранит их защищенным образом в ЭСППЗУ.
Ключ обслуживания предусмотрен для каждой информации, предоставляемой владельцем авторских прав, и является общим для систем, которые создаются с использованием шины 11 1394. Следует отметить, что система в настоящем описании означает обобщенное устройство, образованное множеством устройств.
Функция хеширования представляет собой функцию для вывода данных фиксированной длины, например 64 или 128 битов в ответ на ввод данных произвольной длины, и является функцией, с помощью которой трудно определить параметр х, если задается у (=хеш (х)), а также трудно определить набор х1 и х2, с которым удовлетворяется равенство хеш-функция (х1)=хеш-функция (х2). В качестве известных примеров однонаправленных хеш-функций могут быть указаны MD5, SHA и т.д. Подробное описание однонаправленной хеш-функции приведено в работе Bruce Schneier, "Applied Cryptography (Second Edition), Wiley".
Персональный компьютер 2 в качестве приемника хранит защищенным образом в ЭСППЗУ 50 идентификационный номер (ИД) и лицензионный ключ (ключ_лицензии), предоставляемые владельцем авторских прав и специальные для самого персонального компьютера 2. Лицензионный ключ представляет собой значение, получаемое посредством применения хеш-функции к данным (ИД | | ключ _обслуживания) из n + m битов, получаемых посредством соединения ИД из n битов и ключа обслуживания из m битов. В частности, лицензионный ключ представляется следующим выражением
ключ_лицензии=хеш (ИД | | ключ_обслуживания)
В качестве ИД можно, например, использовать уникальный_ИД узла, предписанный стандартами для шины 1394. Уникальный _ИД узла состоит, как показано на фиг.5, из 8 байтов (64 бита), в которых первые 3 байта выдаются институтом ИИЭР конкретному изготовителю электронных устройств. Последние 5 байтов может определять каждый изготовитель для каждого устройства, предоставляемого любому пользователю самим изготовителем. Каждый изготовитель применяет, например, числа низших 5 байтов последовательно для отдельных устройств с применением единственного числа для одного устройства, и при использовании всех имеющихся чисел для 5 байтов изготовителю выдается другой уникальный_ИД узла, высшие 3 байта которого отличаются, тогда как к одному устройству с низшими 5 байтами применяется единственное число. В соответствии с этим уникальный_ИД узла отличается в различных блоках, независимо от его изготовителя и является уникальным для каждого блока.
На этапе S1 программно-аппаратное средство 20 устройства 1 воспроизведения с ЦВД управляет интерфейсом 26 1394 с целью запроса персонального компьютера 2 об ИД посредством шины 11 1394. Лицензионный администратор 62 персонального компьютера 2 принимает на этапе S2 запрос об ИД. В частности, интерфейс 49 1394 при приеме сигнала запроса об ИД, передаваемого с устройства 1 воспроизведения с ЦВД по шине 11 1394, выдает сигнал на ЦП 41. Лицензионный администратор 62 процессора ЦП 41 при приеме запроса об ИД считывает запомненный в ЭСППЗУ ИД и передает на этапе S3 ИД посредством шины 11 1394 в устройство 1 воспроизведения с ЦВД через интерфейс 49 1394.
На этапе S4, в устройстве 1 воспроизведения с ЦВД ИД принимается интерфейсом 26 1394 и передается в программно-аппаратное средство 20, которое приводится в действие ЦП 21.
На этапе S5 программно-аппаратное средство 20 передает ИД, переданный на него из персонального компьютера 2, и ключ обслуживания, хранящийся в ЭСППЗУ 27, для формирования данных (ИД | | ключ_обслуживания), и применяет хеш-функцию, определяемую нижеприведенным выражением, к данным для формирования лицензионного ключа (лк).
лк=хеш (ИД | | ключ_обслуживания).
Затем на этапе S6, программно-аппаратное средство 20 формирует криптографический ключ кк, который подробно описывается ниже. Криптографический ключ кк используется в качестве ключа сеанса в устройстве 1 воспроизведения с ЦВД и в персональном компьютере 2.
Далее на этапе S7 программно-аппаратное средство 20 шифрует криптографический ключ кк, сформированный на этапе S6. с использованием ключа лк, сформированного на этапе S5, в качестве ключа для получения зашифрованных данных (шифрованного ключа) ш. Другими словами, программно-аппаратное средство вычисляет следующее выражение:
ш=Шифр. (лк, кк),
где Шифр. (А, В) представляет шифрование данных В с использованием ключа А в обычной ключевой криптографии.
Затем на этапе S8 программно-аппаратное средство 20 передает зашифрованные данные ш, сформированные на этапе S7. в персональный компьютер 2. В частности, зашифрованные данные ш передаются из интерфейса 26 1394 устройства 1 воспроизведения с ЦВД в персональный компьютер 2 через шину 11 1394. В персональном компьютере 2 зашифрованные данные ш на этапе 39 принимаются интерфейсом 49 1394. Лицензионный администратор 62 дешифрует принимаемые таким образом зашифрованные данные ш, используя лицензионный ключ, хранящийся в ЭСППЗУ 50, в соответствии с нижеприведенным выражением, для создания ключа дешифрования кк'.
кк'=Дешифр. (ключ_лицензирования, ш),
где Дешифр. (А, В) представляет дешифрование данных В с использованием ключа А в обычной ключевой криптографии.
Следует отметить, что в качестве алгоритма для шифрования в обычной ключевой криптографии известен СШД (стандарт шифрования данных). Кроме того, обычная ключевая криптография подробно описана в вышеупомянутой работе "Applied Cryptography".
Ключ лк, создаваемый на этапе S5 устройством 1 воспроизведения с ЦВД, имеет значение, равное значению (ключа _лицензирования), запомненному в ЭСППЗУ 50 персонального компьютера 2. Другими словами, удовлетворяется следующее выражение:
лк=ключ_лицензирования.
В соответствии с этим, ключ кк', полученный посредством дешифрования на этапе S10 персональным компьютером 2, имеет значение, равное значению криптографического ключа кк, созданного на этапе 36 устройством 1 воспроизведения с ЦВД. Другими словами, удовлетворяется следующее выражение:
кк'=кк.
Таким образом, ключами кк и кк', которые равны друг другу, могут обычно обладать и устройство воспроизведения с ЦВД (источник) и персональный компьютер 2 (приемник). Следовательно, либо ключ кк можно фактически использовать в качестве криптографического ключа, либо можно создавать псевдослучайное число на основании ключа кк и использовать его в качестве криптографического ключа и источником и приемником.
Поскольку лицензионный ключ создается на основании специфического для устройства ИД и ключа обслуживания, соответствующего обеспечиваемой информации, как описано выше, другое устройство не может создать ключ кк или кк'. Никакое устройство, которое не санкционировано владельцем авторских прав, также не может создавать кк или кк', поскольку оно не имеет лицензионного ключа. В соответствии с этим, когда устройство 1 воспроизведения с ЦВД после этого шифрует данные воспроизведения, используя криптографический ключ кк, и передает получающиеся данные на персональный компьютер 2, причем если персональный компьютер 2 имеет полученный законным путем лицензионный ключ, то поскольку он имеет криптографический ключ кк', он может дешифровать зашифрованные данные воспроизведения, передаваемые на него с устройства 1 воспроизведения с ЦВД. Однако, если персональный компьютер 2 не является законным, то, поскольку не имеет криптографического ключа кк', он не может дешифровать передаваемые на него шифрованные данные воспроизведения. Другими словами, поскольку только допустимое устройство может создавать криптографические ключи кк и кк', в результате выполняется идентификация.
Даже в случае кражи лицензионного ключа одного персонального компьютера 2, поскольку ИД в различных блоках различный, другое устройство не может дешифровать зашифрованные данные, передаваемые на него с устройства 1 воспроизведения с ЦВД, с использованием лицензионного ключа. В соответствии с этим обеспечивается улучшенная защищенность.
На фиг.6 показана примерная процедура, когда в качестве приемника по отношению к источнику (устройству 1 воспроизведения с ЦВД) действует не только персональный компьютер 2, но и устройство 3 на магнитооптических дисках.
В этом случае в качестве ИД запоминается ИД1, а в качестве лицензионного ключа запоминается ключ 1_лицензии в ЭСППЗУ 50 персонального компьютера 2, служащего в качестве приемника 1, а в ЭСППЗУ 37 в устройстве 3 на магнитооптических дисках, служащего приемником 2, запоминается ИД2 в качестве ИД, а в качестве лицензионного запоминается ключ 2_лицензии.
Процедуры на этапах S11-S20, выполняемые между устройством 1 воспроизведения с ЦВД (источник) и персональным компьютером 2 (приемник 1) по существу аналогичны показанным на фиг.4 процедурам на этапах S1-S10. Следовательно, во избежание избыточности описание процедур S11-S20 опускается.
После осуществления взаимодействия устройства 1 воспроизведения с ЦВД с персональным компьютером 2 для выполнения процедуры идентификации таким образом, как описано выше, оно запрашивает на этапе S21 устройство 3 на магнитооптических дисках об ИД. При приеме на этапе S22 сигнала запроса об ИД посредством интерфейса 36 1394 устройством 3 на магнитооптических дисках программно-аппаратное средство 30 (фиг.10) в устройстве 3 на магнитооптических дисках считывает ИД (ИД2), запомненный в ЭСППЗУ на этапе S23, и передает ИД с интерфейса 36 1394 на устройство 1 воспроизведения с ЦВД по шине 11 1394. Программно-аппаратное средство 20 принимает на этапе 324 ИД2 через интерфейс 26 1394 и создает на этапе S25 ключ лк2 на основании следующего выражения:
лк2=хеш (ИД2 | | ключ_обслуживания).
Далее программно-аппаратное средство 20 вычисляет на этапе S26 нижеприведенное выражение для шифрования ключа кк, сформированного на этапе S16, с использованием ключа лк2, сформированного на этапе S25, для формирования зашифрованных данных ш2.
ш2=Шифр. (лк2, кк).
Затем на этапе S27 программно-аппаратное средство 20 передает зашифрованные данные ш2 интерфейса 26 1394 на устройство 3 на магнитооптических дисках по шине 11 1394.
Устройство 3 на магнитооптических дисках принимает на этапе S28 зашифрованные данные ш2 через интерфейс 36 1394 и вычисляет на этапе S29 нижеприведенное выражение для формирования криптографического ключа кк2':
кк2'=Дешифр. (ключ 2_лицензии, ш2).
Криптографические ключи кк1' и кк2' получаются персональным компьютером 2 и устройством 3 на магнитооптических дисках, соответственно, таким образом, как описано выше. Их значения равны значению криптографического ключа кк устройства 1 воспроизведения с ЦВД.
Хотя в показанной на фиг.6 процедуре устройство 1 воспроизведения с ЦВД отдельно запрашивает персональный компьютер 2 и устройство 3 на магнитооптических дисках об их ИД и обрабатывает принятые ИД там, причем запрос об ИД может быть доставлен посредством широковещательной передачи данных, однако можно выполнить такую процедуру, как показано на фиг.7.
В частности, в показанной на фиг.7 процедуре устройство 1 воспроизведения с ЦВД в качестве источника запрашивает все приемники, которыми в настоящей процедуре являются персональный компьютер 2 и устройство 3 на магнитооптических дисках, об ИД путем широковещательной передачи данных. После приема персональным компьютером 2 и устройством 3 на магнитооптических дисках сигнала запроса о передаче ИД на этапах S42 и S43, соответственно, каждый из них считывает ИД1 или ИД2, запомненные в ЭСППЗУ 50 или ЭСППЗУ 37. и на этапе S44 или этапе S45 передает его на устройство 1 воспроизведения с ЦВД. Устройство 1 воспроизведения с ЦВД принимает на этапах S46 и S47 идентификаторы ИД.
Устройство 1 воспроизведения с ЦВД создает на этапе S48 криптографический ключ лк1 на основании следующего выражения:
лк1=хеш (ИД1 | | ключ_обслуживания).
Далее на этапе S49 создается криптографический ключ лк2 на основании следующего выражения:
лк2=хеш (ИД2 | | ключ обслуживания).
Далее на этапе S50 в устройстве 1 воспроизведения с ЦВД создается криптографический ключ кк, а на этапе S51 криптографический ключ шифруется в соответствии со следующим выражением с использованием ключа лк1:
ш1=Шифр. (лк1, кк).
Далее на этапе S52 криптографический ключ кк шифруется в соответствии со следующим выражением с использованием ключа лк2:
ш2=Шифр. (лк2, кк).
Затем на этапе S53 полученные таким образом ИД1, ш1, ИД2 и ш2 связываются в соответствии со следующими выражениями для формирования зашифрованных данных ш:
ш=ИД1 | | ш1 | | ИД2 | | ш2.
Зашифрованные данные ш, создаваемые в устройстве 1 воспроизведения с ЦВД таким образом, как описано выше, далее на этапе S54 передаются в персональный компьютер и устройство 3 на магнитооптических дисках посредством широковещательной передачи данных.
Персональный компьютер 2 и устройство 3 на магнитооптических дисках принимает зашифрованные данные ш на этапах S55 и S56, соответственно. Затем на этапах S57 и S58 в персональном компьютере 2 и устройстве 3 на магнитооптических дисках выполняются вычисления в соответствии с нижеприведенными выражениями, для создания криптографических ключей кк1' и кк2', соответственно:
кк1'=Дешифр. (ключ 1_лицензии, ш1).
кк2'=Дешифр. (ключ 2_лицензии, ш2).
Фиг.8 иллюстрирует пример процедуры, где один приемник может пользоваться множеством услуг (дешифрование множества типов информации). Как показано на фиг.8, при настоящей процедуре, например, в ЭСППЗУ 50 персонального компьютера 2, служащего в качестве приемника, запомнено множество лицензионных ключей (ключ 1_лицензии, ключ 2_лицензии, ключ 3_лицензии и так далее). В ЭСППЗУ 27 устройства 1 воспроизведения с ЦВД, служащего в качестве источника, запомнено множество обслуживающих ключей (ключ 1_обслуживания, ключ 2_обслуживания, ключ 3_обслуживания и так далее). В этом случае, когда на этапе S81 устройство 1 воспроизведения с ЦВД запрашивает персональный компьютер 2, в качестве приемника, об ИД, оно передает ИД_обслуживания для идентификации информации (обслуживание), подлежащей впоследствии передаче из устройства 1 воспроизведения с ЦВД. Когда на этапе S82 персональный компьютер 2 принимает ИД_обслуживания, он выбирает один из множества лицензионных ключей, хранящихся в ЭСППЗУ 50, который соответствует ИД_обслуживания и выполняет на этапе S90 дешифрацию, используя выбранный лицензионный ключ. Другие операции аналогичны операциям, показанным на фиг.4.
Фиг.9 иллюстрирует следующий пример процедуры. В представленной процедуре в ЭСППЗУ 27 устройства 1 воспроизведения с ЦВД, служащего в качестве источника, запомнены ключ_обслуживания, хеш-функция и функция генерирования псевдослучайного числа (ГпСЧ). Они заданы владельцем авторских прав и хранятся в защищенном виде. В ЭСППЗУ 50 персонального компьютера 2, служащего в качестве приемника, запомнены ИД, ЛК, ЛК' функция G (смешения) и функция генерирования псевдослучайного числа (ГпСЧ), предоставленные ему владельцем авторских прав.
ЛК является уникальным случайным числом, создаваемым владельцем авторских прав, а ЛК' создается таким образом, чтобы оно могло удовлетворять следующему выражению:
ЛК'=G^ - 1 (R)
R=ГпСЧ(Н) + ГпСЧ(ЛК)
Н=хеш (ИД | | ключ_обслуживания).
Следует отметить, что G^ - 1 означает функцию, обратную функции G. G^ - 1 имеет характеристику, которую просто вычислить, если известно заранее установленное правило, но если правило не известно, то вычислить ее затруднительно. В качестве такой функции можно использовать функцию, которая используется для криптографии с открытым ключом.
Функция генерирования псевдослучайной функции может быть предусмотрена в виде аппаратного средства.
Программно-аппаратное средство 20 устройства 1 воспроизведения с ЦВД вначале запрашивает на этапе S101 лицензионный администратор 62 персонального компьютера 2 в отношении ИД. Лицензионный администратор 62 персонального компьютера 2, когда на этапе S102 принимается сигнал запроса ИД, считывает ИД, хранящийся в ЭСППЗУ 50 и передает его на этапе S103 на устройство 1 воспроизведения с ЦВД. Программно-аппаратное средство 20 устройства 1 воспроизведения с ЦВД на этапе S104 принимает этот ИД и на этапе S105 расчитывает следующее выражение:
Н=хеш (ИД | | ключ_обслуживания).
Далее, программно-аппаратное средство 20 создает на этапе S106 ключ кк и на этапе S107 расчитывает следующее выражение:
ш=кк (+) ГпСЧ.
Следует отметить, что А (+) В представляет операцию "исключающее ИЛИ" с величинами А и В.
Другими словами, ключ кк шифруется посредством осуществлении операции "исключающее ИЛИ" для каждого бита результирующего ГпСЧ (Н), получаемого посредством ввода Н, вычисленного на этапе S105, в ключ генерирования псевдослучайного числа ГпСЧ, и на этапе S106 создается ключ кк.
Затем на этапе S108 программно-аппаратное средство 20 передает ш на персональный компьютер 2.
На этапе S109 персональный компьютер 2 принимает ш и на этапе S110 расчитывает следующее выражение:
кк'=ш (+) С(ЛК') + ГпСЧ(ЛК).
В частности, для получения кк' расчитываются осуществление операции "исключающее ИЛИ" для ш, передаваемых из устройства 1 воспроизведения с ЦВД, значения С(ЛК'), полученного посредством применения ЛК', записанного в ЭСППЗУ 50, к функции G, также хранящейся в ЭСППЗУ 50, и результирующего ГпСЧ(ЛК), получаемого посредством применения ЛК', хранящегося в ЭСППЗУ 50, к функции генерирования псевдослучайных чисел ГпСЧ, также хранящейся в ЭСППЗУ 50.
Здесь, как видно из нижеприведенного выражения, кк=кк':
кк'= ш (+) С(ЛК') + ГпСЧ(ЛК)=
= кк (+) ГпСЧ(Н) + R + ГпСЧ(ЛК)=
= кк (+) ГпСЧ(Н) + ГпСЧ(ЛК) + ГпСЧ (ЛК) + ГпСЧ (ЛК)
= кк.
Таким образом, устройство 1 воспроизведения с ЦВД в качестве источника и персональный компьютер 2 в качестве приемника обладают криптографическими ключами кк и кк', которые обычно равны друг другу. Поскольку ЛК и ЛК' может создавать только владелец авторских прав, то в случае если даже источник попытается незаконно создать ЛК и ЛК' он не сможет их создать и, следовательно, защита может быть дополнительно улучшена.
Хотя в вышеприведенном описании идентификация выполняется, например, между источником и приемником, персональный компьютер 2 может обычно использовать в качестве загрузки произвольную прикладную программу. В качестве такой прикладной программы может быть использована создаваемая незаконно прикладная программа. Соответственно, для каждой прикладной программы следует определять, лицензирована ли она владельцем авторских прав или нет. Следовательно, как показано на фиг.3, между каждым участком 61 прикладной программы и лицензионным администратором 62 может выполняться также процедура идентификации таким образом, как описано выше. В этом случае лицензионный администратор 62 служит в качестве источника, а участок 61 прикладной программы служит в качестве приемника.
Далее описывается операция, когда после выполнения идентификации (после обычного получения криптографического ключа) шифрованные данные передаются от источника с использованием криптографического ключа на приемник и приемник дешифрует шифрованные данные.
В устройствах, внутренние функции которых не раскрыты обычному пользователю, типа устройства 1 воспроизведения с ЦВД или устройства 3 на магнитооптических дисках, выполнение шифрования и дешифрования данных, передаваемых по шине 11 1394, осуществляется интерфейсом 26 1394 или интерфейсом 36 1394. Хотя для шифрования и дешифрования используется ключ S сеанса и ключ i временной переменной, ключ S сеанса и ключ i временной переменной (точнее, ключ i', подлежащий использованию для создания ключа i временной переменной), поступают из программно-аппаратного средства 20 или из программно-аппаратного средства 30 на интерфейс 26 1394 или интерфейс 36 1394, соответственно. Ключ S сеанса состоит из ключа Ss начального значения (первая информация), подлежащего использованию в качестве начального значения, и ключа Si разрушения, подлежащего использованию для разрушения ключа i временной переменной (вторая информация). Ключ Ss начального значения и ключ Si разрушения могут состоять из старших битов и младших битов предварительно определенного числа битов криптографического кк (=кк'), создаваемого при описанной выше идентификации, соответственно. Ключ S сеанса соответственным образом корректируется для каждого сеанса, например для информации каждого кинофильма или для каждого воспроизведения. В противоположность этому, ключ i временной переменной, создаваемый из ключа Si разрушения и ключа i', часто обновляется в одном сеансе, и, например, можно использовать временную информацию с предварительно определенным тактированием или т.п.
Теперь предположим, что в качестве источника служат видеоданные, воспроизводимые устройством 1 воспроизведения с ЦВД и выводимые из него, передаются на устройство 3 на магнитооптических дисках и персональный компьютер 2 по шине 11 1394, так что они дешифруются устройством 3 на магнитооптических дисках и персональном компьютере 2. В этом случае в устройстве 1 воспроизведения с ЦВД выполнение шифрования осуществляется с использованием ключа S сеанса и ключа i временной переменной, посредством интерфейса 26 1394. В устройстве 3 на магнитооптических дисках выполнение дешифрования осуществляется с использованием ключа S сеанса и ключа i временной переменной посредством интерфейса 36 1394.
В противоположность этому в персональном компьютере 2 лицензионный администратор 62 выдает ключ Ss начального значения ключа S сеанса на участок 61 прикладной программы и выдает ключ Si разрушения и ключ i временной переменной (точнее ключ i' для формирования ключа i временной переменной) на интерфейс 49 1394 (участок связи). Затем с помощью интерфейса 49 1394 формируется ключ i временной переменной из ключа Si разрушения и ключа i' и выполняется дешифрование с использованием ключа i временной переменной, а дешифрованные данные дополнительно дешифруются с использованием ключа S сеанса (точнее ключа Ss начального значения) посредством участка 61 прикладной программы.
Таким образом, поскольку в персональном компьютере 2 внутренняя шина 51 раскрыта для пользователя, интерфейсом 49 1394 выполняется только первый этап дешифрования, так что получающиеся данные все еще остаются в зашифрованном состоянии. Затем выполняется второй этап дополнительного дешифрования посредством участка 61 прикладной программы для формирования незашифрованных данных. При этом персональному компьютеру 2 запрещается добавлять функцию, пригодную для копирования данных (незашифрованных), передаваемых внутренней шиной 51 на жесткий диск 47 или любое другое устройство.
Таким образом, в настоящей системе, хотя в устройстве БЭА, внутренняя шина которого не является открытой для пользователя, выполняется процедура шифрования или дешифрования после использования ключа S сеанса и ключа i временной переменной, в другом устройстве (персональном компьютере 2 или подобном ему устройстве), внутренняя шина которого является открытой, отдельно выполняется процедура дешифрования с использованием ключа i временной переменной, и другая процедура дешифрования с использованием ключа S сеанса. Чтобы обеспечить возможность осуществления этим способом процедуры дешифрования одним этапом и процедуры дешифрования двумя отдельными этапами, должно удовлетворяться следующее выражение:
Дешифр.(S, Дешифр. (i, Шифр. (алг (S+i), данные)))=Данные,
где алг (S+i) представляет результат, получаемый посредством ввода ключа S и ключа i временной переменной в предварительно определенный алгоритм.
На фиг.11 показан пример построения интерфейса 26 1394, который удовлетворяет вышеприведенному выражению. Как показано на фиг.11, в интерфейсе 26 1394 данные из m битов, создаваемые аддитивным генератором 71, подаются на генератор 73 сжатия. Сдвиговый регистр 72 с линейной обратной связью (СРЛОС) выводит данные из 1 бита и подает их на генератор 73 сжатия. Генератор 73 сжатия выбирает выходной сигнал аддитивного генератора 71 в ответ на выходные сигналы сдвигового регистра 72 с линейной обратной связью и выводит выбранные данные в качестве криптографического ключа на сумматор 74. Сумматор 74 суммирует вводимую некриптограмму (данные из m битов, подлежащие подаче на шину 11 1394) и данные из m битов (криптографический ключ), поступающие с генератора 73 сжатия, и выводит результат суммирования в виде криптограммы (шифрованные данные) на шину 11 1394.
Выполнение суммирования сумматором 74 представляет собой суммирование выходного сигнала генератора 73 сжатия и некриптограммы по модулю 2^ m (где ^ означает показатель степени). Другими словами, данные из m битов суммируются друг с другом и выводится сумма без переноса.
На фиг.12 показан пример более подробного построения, показанного на фиг.11 интерфейса 26 1394. Из ключа S сеанса, выводимого из программно-аппаратного средства 20, ключ Ss начального значения передается через сумматор 81 на регистр 82 и запоминается в нем. Ключ Ss начального значения состоит, например, из 55 слов (одно слово имеет длину от 8 до 32 битов). Далее ключ S сеанса, поступающий из программно-аппаратного средства 20, ключ Si разрушения, состоящий, например, из 32 битов со стороны МДР (младших битов), запоминается в другом регистре 85.
Ключ i' запоминается в следующем регистре 84. Здесь, например, каждый раз, когда по шине 11 1394 передается один пакет, на регистр 84 поступает ключ 1' из двух битов, а когда в регистре 84 запоминается ключ 1' для 16 пакетов (32 бита), он складывается с ключом Si из 32 битов, запомненных в регистре 85, посредством сумматора 86 и поступает в качестве окончательного ключа i временной переменной на сумматор 81. Сумматор 81 суммирует значение, хранящееся в данный момент в регистре 82, и ключ i временной переменной, поступающий с сумматора 86, и результат суммирования поступает на регистр 82 для запоминания.
Если число битов слова в регистре 82 составляет, например, 8, то, поскольку ключ i временной переменной, выводимый из сумматора 86, равен 32 битам, то ключ i временной переменной делится на четыре части по 8 битов, и каждые 8 битов добавляются к слову заранее определенного адреса (0-54) регистра 82.
После первого запоминания таким способом ключа Ss начального значения в регистре 82, он обновляется ключом i временной переменной каждый раз, когда передается некриптограмма для 16 пакетов.
Сумматор 83 выбирает заранее определенные 2 слова (в показанном на фиг.12 случае тактирования слова с адресом 23 и адресом 54) из 55 слов, запомненных в регистре 82, суммирует два выбранных слова и выводит полученное слово на регистр 73 сжатия. Далее, выходной сигнал сумматора 83 передается с показанным на фиг.12 тактированием по адресу 0 регистра 82, для запоминания вместо предыдущего запомненного значения по адресу 0.
Затем, при следующем тактировании, адреса двух подлежащих передаче на сумматор 83 слов сдвигаются вверх на одно слово, на фиг.12 от адреса 54 и адреса 23 к адресу 53 и адресу 22, соответственно, а также адрес, подлежащий обновлению выходным сигналом сумматора 83, сдвигается к более высокому адресу. Однако поскольку адреса, более высокого, чем адрес 0, нет, в этом случае адрес сдвигается к адресу 54.
Следует отметить, что сумматоры 81, 83 и 86 в другом отношении могут осуществлять операцию "исключающее ИЛИ".
Сдвиговый регистр 72 с линейной обратной связью состоит, например, как показано на фиг.13, из сдвигового регистра 101 на n битов и сумматора 102 для сложения значений заранее определенных битов (регистров) из n битов сдвигового регистра 101. Сдвиговый регистр 101 запоминает бит, поступающий с сумматора 102, в самом левом на фиг.13 регистре Вn и сдвигает данные, которые были запомнены здесь до этого, на следующий регистр Bn-1 на правой стороне. Аналогичное выполнение осуществляют также регистры Bn-1, Bn-2, ... Затем, при следующем тактировании, значение, полученное посредством сложения значений битов сумматором 102, запоминается соответственно самому левому на фиг.13 биту Вn. Описанные выше операции последовательно повторяются, пока выходной сигнал последовательно не выведет по одному биту из самого правого на фиг.13 регистра в1.
Хотя на фиг.13 показан пример обычного построения, более конкретно сдвиговый регистр 72 с линейной обратной связью может быть выполнен таким образом, как показано, например, на фиг.14. В показанном на фиг.14 сдвиговом регистре 72 с линейной обратной связью сдвиговый регистр 101 состоит из 31 бита, а значение регистра в1 на правом конце на фиг.14 и регистра в31 на левом конце на фиг.14 суммируются сумматором 102 и результат суммирования подается обратно на регистр в31.
Когда данные бита 1, выводимого из сдвигового регистра 72 с линейной обратной связью, имеют логическое значение 1, участок 91 различения состояния передает данные из m битов, поступающие с сумматора 83 аддитивного генератора 71, в память 92 обратного магазинного типа (ПОМТ) для запоминания. С другой стороны, когда данные бита 1, поступающие со сдвигового регистра 72 с линейной обратной связью, имеют логическое значение 0, участок 91 различения состояния не принимает данные из m битов, поступающие из ЦП 31, а прерывает выполнение шифрования. Таким образом, выбираются и запоминаются в памяти 92 обратного магазинного типа генератора 73 сжатия только те данные из m битов, создаваемые аддитивным генератором 71, которые выводятся при тактированиях, при которых сдвиговый регистр 72 с линейной обратной связью выводит логическое значение 1.
Запомненные в памяти 92 обратного магазинного типа данные из m битов подаются в качестве криптографического ключа на сумматор 74, посредством которого они складываются с данными некриптограммы (данными воспроизведения с ЦВД), подлежащими передаче для создания криптограммы.
Шифрованные данные подаются из устройства 1 воспроизведения с ЦВД на устройство 3 на магнитооптических дисках и персональный компьютер 2 по шине 11 1394.
Интерфейс 36 1394 устройства 3 на магнитооптических дисках выполнен, как показано на фиг.15, для дешифрования данных, принимаемых с шины 11 1394. В интерфейсе 36 1394 данные из m битов, выводимые с аддитивного генератора 171, и данные бита 1, выводимые из сдвигового регистра 172 с линейной обратной связью (СРЛОС), подаются на генератор 173 сжатия. Затем ключ из m битов, выводимый с генератора 173 сжатия, подается на вычитающее устройство 174. Вычитающее устройство 174 вычитает ключ, поступающий с генератора 173 сжатия, из криптограммы для дешифрования криптограммы в некриптограмму.
Показанный на фиг.15 интерфейс 36 1394 выполнен, в основном, аналогично показанному на фиг.11 интерфейсу 11 1394, но отличается только тем, что показанный на фиг.11 сумматор 74 заменен устройством вычитания 174.
На фиг.16 показано более детальное выполнение интерфейса 36 1394 по фиг.15. Как показано на фиг.16, хотя интерфейс 36 1394 выполнен, в основном, аналогично показанному на фиг.12 интерфейсу 26 1394, сумматор 74 (фиг.12) заменен устройством вычитания 174. Другие компоненты аддитивного генератора 171, сдвигового регистра 172 с линейной обратной связью, генератора 173 сжатия, сумматора 181, регистра 182, сумматора 183, регистров 184 и 185, дополнительного сумматора 186, участка 191 распознавания состояния и ПОМТ 192 соответствуют аддитивному генератору 71, сдвиговому регистру 72 с линейной обратной связью, генератору 73 сжатия, сумматору 81, регистру 82, сумматору 83, регистрам 84 и 85, сумматору 86, участку 91 распознавания состояния и ПОМТ 92, показанным на фиг.12, соответственно.
В соответствии с этим, поскольку функционирование интерфейса 36 1394 в основном соответствует функционированию интерфейса 26 1394 по фиг.12, то в целях исключения избыточности его описание опускается. Однако в показанном на фиг.16 интерфейсе 36 1394 ключ из m битов, поступающий из ПОМТ 192 генератора 173 сжатия, вычитается из криптограммы посредством устройства вычитания 174 для дешифрования криптограммы.
Как описано выше, в интерфейсе 36 1394 шифрованные данные одновременно дешифруются с использованием ключа S сеанса (ключа Ss первоначального значения и ключа Si разрушения) и ключа временной переменной.
В противоположность этому, как описано выше, в персональном компьютере 2 дешифрование выполняется в два этапа по отдельности интерфейсом 49 1394 и участком 61 прикладной программы.
На фиг.17 показан пример построения интерфейса 49 1394, где дешифрование выполняется аппаратным средством. Показанный на фиг.17 интерфейс 49 1394 выполнен в основном аналогично интерфейсу 36 1394, показанному на фиг.15. В частности, интерфейс 49 1394 состоит также из аддитивного генератора 271, сдвигового регистра 172 с линейной обратной связью, генератора 273 сжатия и устройства 274 вычитания, и эти компоненты в основном аналогичны аддитивному генератору 171, сдвиговому регистру 172 с линейной обратной связью, генератору 173 сжатия и устройству 174 вычитания, показанным на фиг.15, соответственно. Однако хотя в показанном на фиг.17 интерфейсе 1394 ключи, аналогичные ключам показанного на фиг.15 интерфейса 36 1394, подаются из лицензионного администратора 62 на аддитивный генератор 271 в виде ключа i', предназначенного для формирования ключа i временной переменной, и ключа Si разрушения ключа S сеанса для разрушения ключа i временной переменной в виде ключа Ss начального значения подается нейтральный элемент, в котором все биты представляют 0.
В частности, как показано на фиг.18, поскольку все биты ключа Ss начального значения представляют 0, по существу аналогично альтернативному случаю, в котором отсутствует ключ Ss начального значения, криптографический ключ создается на основании только ключа i временной переменной. В результате устройство 274 вычитания выполняет дешифрование только на основании ключа i временной переменной криптограммы. Кроме того, поскольку дешифрование на основании ключа Ss начального значения не выполняется, то данные, полученные в результате дешифрования, сохраняются в зашифрованном состоянии. В соответствии с этим, даже если данные снимаются с внутренней шины 51 и записываются на жесткий диск 47 или некоторый другой носитель записи, их фактически нельзя использовать.
Участок 61 прикладной программы, который дополнительно дешифрует ранее дешифрованные данные на основании ключа i временной переменной посредством аппаратного средства в интерфейсе 49 1394, как описано выше, посредством программного обеспечения, состоит, как показано на фиг.19, из аддитивного генератора 371, сдвигового регистра 372 с линейной обратной связью, генератора 373 сжатия и устройства 374 вычитания. Базовые конструкции компонентов аналогичны показанным на фиг.15 конструкциям аддитивного генератора 171, сдвигового регистра 172 с линейной обратной связью, генератора 173 сжатия и устройства 174 вычитания, соответственно.
Однако хотя в качестве ключа Ss начального значения ключа S сеанса, обычный ключ начального значения подается таким же образом, как в случае по фиг.15, каждый из указанных ключей - ключа Si разрушения и ключа i', используемого для создания ключа i временной переменной, представляет собой данные нейтрального элемента, в котором все биты представляют собой 0.
В результате, как в частности показано на фиг.20 (элементы 371-392 соответствуют элементам 171-192, показанным на фиг.16, соответственно), поскольку все биты ключа i', запомненного в регистре 384, и ключа Si разрушения, запомненного в регистре 385, соответствуют 0, все биты ключа i временной переменной, выводимого из сумматора 386, также соответствуют 0, и действие выполняется по существу аналогично действию альтернативного случая, в котором отсутствует ключ i временной переменной. Другими словами, создается криптографический ключ только на основании ключа Ss начального значения. Затем посредством устройства 374 вычитания криптограмма дешифруется в некриптограмму на основании криптографического ключа, создаваемого таким способом, как описано выше. Поскольку эта криптограмма получена посредством дешифрования на первом этапе на основании ключа i временной переменной посредством интерфейса 49 1394, как описано выше, полную некриптограмму здесь можно получить посредством выполнения дешифрования на втором этапе на основании ключа Ss начального значения.
В устройстве 3 на магнитооптических дисках, когда криптограмма дешифруется таким способом, как описано выше, ЦП 31 подает дешифрованные данные на дисковод 35 таким образом, чтобы их можно было записать на магнитооптический диск.
В персональном компьютере 2 ЦП 41 (участок 61 прикладной программы) передает данные, дешифрованные таким способом, как описано выше, например на накопитель 47 на жестких магнитных дисках для записи. В персональном компьютере 2, хотя в качестве платы расширения 48 контроля данных может быть подсоединена предварительно определенная плата для контроля данных, передаваемых по внутренней шине 51, поскольку элементом, который может окончательно дешифровать данные, передаваемые на внутреннюю шину 51, является участок 61 прикладной программы, даже если плата расширения 48 может контролировать данные, для которых выполняется дешифрование на основании ключа i временной переменной интерфейсом 49 1394 (данные, для которых еще не выполнено дешифрование на основании ключа S сеанса), однако невозможно контролировать данные, полностью дешифрованные в некриптограмму. Следовательно, можно предотвратить незаконное копирование.
Следует отметить, что обычную обработку ключа сеанса можно выполнять, используя, например, способ Диффие-Хеллмана или т.п.
Следует заметить, что в некотором другом случае, например, когда интерфейс 49 1394 или участок 61 прикладной программы персонального компьютера 2 имеет такие сравнительно невысокие возможности обработки, что он не может осуществлять дешифрование, если один или оба из ключей сеанса и временной переменной формируются из нейтрального элемента на стороне источника, хотя они используются с нейтральным элементом также на стороне приемника, то передача данных возможна по существу без использования ключа сеанса и ключа временной переменной. Однако при использовании этого способа повышается вероятность незаконного копирования данных.
Если сам участок 61 прикладной программы является результатом несанкционированного копирования, то имеется вероятность того, что дешифрованные данные могут быть скопированы незаконно. Однако это можно предотвратить, если участок 61 прикладной программы идентифицируется лицензионным администратором 62 таким способом, который описан выше.
В качестве способа идентификации в этом случае дополнительно к обычной криптографии ключа можно использовать цифровой алгоритм, для которого используется криптография открытого ключа.
Показанные на фиг.11, 12 и 15-20 описанные выше интерфейсы 1394 удовлетворяют соотношению гомоморфизма. В частности, если ключи K1 и К2 являются элементами поля Галуа G, результат Кг· Кг их групповой операции обеспечивает элемент поля Галуа G. Кроме того, удовлетворяется следующее выражение для заранее определенной функции Н:
Н(К1·К2)=H(K1)· Н(К2)
На фиг.21 показан пример построения интерфейса 26 1394. В интерфейсе 26 1394 ключ S сеанса подается на сдвиговые регистры 501-503 с линейной обратной связью для выполнения инициализации. Размеры n1-n3 сдвиговых регистров 501-503 с линейной обратной связью составляют по отдельности примерно 20 битов, причем отдельные размеры n1-n3 создаются сравнительно простыми. В соответствии с этим, например, для ключа S сеанса вначале устанавливают старшие n1 битов для сдвигового регистра 501 с линейной обратной связью, следующие по старшинству n2 битов вначале устанавливают для сдвигового регистра 502 с линейной обратной связью и следующие по старшинству n3 битов вначале устанавливают для сдвигового регистра 503 с линейной обратной связью.
Каждый из сдвиговых регистров 501-503 с линейной обратной связью выполняет сдвигающую операцию на m битов, когда функция тактирования выдает разрешающий сигнал, например логическое значение 1, и выводит данные из m битов. Значение m может быть, например, 8, 16, 32, 40 и так далее.
Выходные сигналы сдвигового регистра 501 с линейной обратной связью и сдвигового регистра 502 с линейной обратной связью вводятся в сумматор 504, посредством которого они суммируются. Из суммарного значения сумматора 504 компонент переноса подается на функцию 506 тактирования, тогда как компонент суммы подается на сумматор 505, посредством которого он суммируется с выходным сигналом сдвигового регистра 503 с линейной обратной связью. Компонент переноса сумматора 505 подается на функцию 506 тактирования, тогда как компонент суммы подается на схему 508 "исключающее ИЛИ".
Поскольку сочетание данных, подаваемых из сумматора 504 и сумматора 505, представляет собой одно из чисел 00, 01, 10 и 11, фрункция 506 тактирования выдает данные одного из чисел 000-111 в соответствии с сочетанием данных, подаваемых на сдвиговые регистры 501-503 с линейной обратной связью. Каждый из сдвиговых регистров 501-503 с линейной обратной связью выполняет сдвиговую операцию с m битами и, при вводе логического значения 1 выводит новые данные из m битов, а когда вводится логическое значение 0, он выводит те же данные из m битов, что и выведенные в предыдущем цикле.
Схема 508 "исключающее ИЛИ" осуществляет операцию "исключающее ИЛИ" для компонента суммы, выводимого из сумматора 505 и ключа i временной переменной, хранящегося в регистре 507, и выводит результат вычисления в схему 509 "исключающее ИЛИ". Схема 509 "исключающее ИЛИ" осуществляет операцию "исключающее ИЛИ" для вводимой некриптограммы и вводимого криптографического ключа из схемы 508 "исключающее ИЛИ", и выводит результат вычисления в виде криптограммы.
На фиг.22 показан другой пример интерфейса 36 1394 устройства 3 на магнитооптических дисках. Как показано на фиг.22, интерфейс 36 1394 включает в себя элементы 601-609, которые аналогичны элементам 501-509, описанным выше со ссылками на фиг.21, соответственно. Следовательно, во избежание избыточности, описание аналогичных элементов опускается. Однако показанный на фиг.22 интерфейс 36 1394 отличается от показанного на фиг.21 интерфейса 26 1394 тем, что в то время как в интерфейсе 26 1394 осуществляется выполнение шифрования, в интерфейсе 36 1394 осуществляется выполнение дешифрования.
На фиг.23 показан пример построения интерфейса 49 1394 устройства 3 на магнитооптических дисках. Как показано на фиг.23, интерфейс 36 1394 включает в себя элементы 701-709, аналогичные элементам 601-609, описанным выше со ссылками на фиг.22, соответственно. Однако ключ S сеанса, первоначально установленный в сдвиговых регистрах 701-703 с линейной обратной связью, представляет собой нейтральный элемент, в котором все биты соответствуют 0. В соответствии с этим в данном случае дешифрование осуществляется по существу только ключом i временной переменной, хранящимся в регистре 707.
На фиг.24 показан пример построения участка 61 прикладной программы персонального компьютера 2. Как показано на фиг.24, участок 61 прикладной программы включает в себя элементы 801-809, в основном аналогичные элементам 601-609, описанным выше со ссылками на фиг.22, соответственно. Участок 61 прикладной программы отличается от показанного на фиг.22 интерфейса 36 1394 только тем, что подлежащий вводу в регистр 807 ключ i временной переменной представляет собой нейтральный элемент, в котором все биты представляют 0. В соответствии с этим в участке 61 прикладной программы создается криптографический ключ, а выполнение дешифрования осуществляется только на основании ключа S сеанса.
Следует отметить, что поскольку показанная на фиг.19, 20 и 24 обработка осуществляется участком 61 прикладной программы, она выполняется программным обеспечением.
Хотя в вышеприведенном описании устройство 1 воспроизведения с ЦВД служит в качестве источника, а персональный компьютер 2 и устройство 3 на магнитооптических дисках служат в качестве приемников, однако источником и приемником могут служить любые устройства.
Кроме того, внешняя шина для взаимосвязи различных устройств также не ограничивается шиной 1394, и вместо нее можно использовать различные шины. Подсоединяемые к внешней шине электронные устройства не ограничиваются описанными выше, и вместо них можно подсоединять любые другие устройства.
На основе представленного описания изобретения, специалистам в данной области техники должно быть ясно, что можно осуществлять множество его изменений и модификаций без изменения сущности и объема изобретения как изложено в настоящем описании.
Изобретение относится к радиосвязи, в частности, для шифрования, дешифрования и обработки информации. Технический результат - повышение степени защищенности информации. Для этого данные, шифрованные интерфейсом средством воспроизведения с цифрового видеодиска (ЦВД), передаются на персональный компьютер и устройство на магнитооптических дисках через шину. В устройстве на магнитооптических дисках, в котором изменение функции не является открытым для пользователя, принимаемые данные дешифруются интерфейсом. В противоположность этому в персональном компьютере, в котором изменение функции является открытым для пользователя, зашифрованные данные дешифруются с использованием ключа с временной переменной, посредством интерфейса, а результат дешифрования дополнительно дешифруется с использованием ключа сеанса посредством участка прикладной программы. 12 н. и 25 з.п. ф-лы, 24 ил.
US 5416841 А, 16.05.1995 | |||
RU 94037301 A1, 20.07.1996 | |||
US 5515438 A1, 07.05.1995 | |||
US 5412721 A1, 02.05.1995 | |||
Каркас сейсмостойкого многоэтажного здания | 1974 |
|
SU511420A1 |
Электролит для бороцирконирования | 1975 |
|
SU529261A1 |
Авторы
Даты
2004-11-10—Публикация
1998-04-22—Подача