Способ обработки данных

Реферат

 

Изобретение относится к технике связи и может быть использовано при проектировании систем передачи информации, в которых предъявляются жесткие требования к секретности и надежности обработки данных. Технический результат - обнаружение и локализация места искажения информации путем криптографического метода контроля каждого вида программного обеспечения как при первоначальной его загрузке, так и в процессе работы, обеспечение повышенной секретности криптографических преобразований. Сущность способа заключается в том, что обработка информации включает два этапа: этап защиты и этап доступа. На этапе защиты осуществляется подготовка данных к хранению или передаче через канал связи путем засекречивания их и выработки имитовставок или контрольных сумм (ХЭМ-функций). На этапе доступа к данным осуществляется рассекречивание и контроль целостности данных. Особенностью способа является то, что хотя ввод и организация данных на этапе доступа осуществляется средствами и программным обеспечением общедоступной ПЭВМ, в которой возможно существование программных закладок, обработка данных происходит в аппаратно-программной среде, со специально разработанным для целей программного обеспечения (ПО), которое засекречивается, рассекречивается и контролируется с использованием ПО криптографической защиты второго уровня, которое в свою очередь засекречивается и рассекречивается с использованием общеизвестного ПО криптографической защиты первого уровня. Способ обеспечивает повышенную секретность криптографических преобразований вследствие того, что используется криптографический алгоритм, который вводится в общедоступную ПЭВМ в засекреченном виде, а его рассекречивание осуществляется в аппаратной среде, в которой невозможно функционирование введенных в нее необнаруживаемых программных закладок. 6 з.п. ф-лы, 3 ил.

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

При проектировании систем обработки данных одной из самых важных задач является выполнение требований к секретности и целостности данных. Эта задача наиболее полно решается криптографическими методами, основанными на засекречивании информации для хранения или передачи ее по каналу связи и рассекречивании ее при необходимости обработки или доступа к ней [1].

Для обнаружения искажений (нарушения целостности) информации используют имитостойкое криптографическое кодирование информации [1,2], при котором передаваемая (защищаемая) информация сопровождается имитозащитной вставкой-эталоном, являющейся функцией открытой информации, криптографического алгоритма, например, DES или ГОСТ 28147-89 [2,3,4,5] и неизвестного посторонним лицам криптографического ключа. Любая попытка введения искажений в информацию будет обнаружена путем повторного вычисления имитовставки и сравнения ее с эталоном. Участие в процессе формирования имитовставки криптографического ключа делает невозможным целенаправленное и необнаруживаемое искажение информации.

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

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

Например, известны устройство для шифрования и дешифрования по пат. США N 5513262 м.кл. H 04 L 9/00 [8], а также отечественная система "Krypton-3" [9,7], которые обеспечивают шифрование данных на накопителе на жестком магнитном диске [НЖМД], при котором каждое обращение к НЖМД приводит к шифрованию и расшифрованию данных. В системе "Krypton-3"разграничение доступа к данным осуществляется путем предъявления дискеты, содержащей ключи данных, которые в свою очередь зашифрованы с использованием пароля пользователя.

Недостатком первых модификаций системы "Krypton-3", как и других систем используемых ПЭВМ общего пользования в качестве основного элемента, является возможность внедрения в нее программных закладок (программ с потенциально опасными последствиями [7, стр. 7]). Система "Krypton-3" подверглась воздействию такого рода закладки, которая подменила собой плату шифрования, при этом алгоритм по ГОСТ 28147-89 был заменен другим, легко читаемым без ключа [7, стр. 5, 38].

Известны также программные закладки, позволяющие нарушить целостность информации. Пример такой закладки, подделывающей электронную цифровую подпись для программы PGP, приведен в [7, стр. 28].

Описанные выше примеры несанкционированного доступа базируются на невозможности разграничения системных ресурсов ПЭВМ между несколькими пользователями, благодаря чему зарегистрированные пользователи могут целенаправленно вводить в ПЭВМ разного рода "закладки".

Наиболее близким к предлагаемому способу и выбранному вследствие этого в качестве прототипа является способ обработки данных, описанный в патенте ЕПВ N 0334503 [10].

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

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

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

Недостаток известного способа заключается в незащищенности информации от преднамеренного искажения. В самом деле, ввиду того, что вычислительная система, реализующая способ, является общедоступной, то в нее может быть введена программная закладка, например, зарегистрированным пользователем, которая предназначена для искажения информации, вводимой другим пользователем. Кроме того, может быть также использована программная закладка, подбирающая пароль [11] или перехватывающая пароль при вводе его с клавиатуры [7, стр. 21], что позволит злоумышленнику получить доступ к информации и внести в нее необнаруживаемые искажения.

Известный способ может быть использован в системах обработки данных, в которых отсутствует возможность внедрения программ-закладок и программ-вирусов, что возможно, если обработка ведется в изолированной аппаратно-программной среде, удовлетворяющей следующим условиям [7, стр. 54]: 1. На ПЭВМ с проверенным BIOS установлена проверенная операционная среда.

2. Достоверно установлена неизменность DOS и BIOS.

3. Кроме проверенных программ в данной аппаратно-программной среде не запускалось никаких иных программ.

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

Реализация перечисленных выше условий в распределенных системах обработки информации, широко использующихся в настоящее время с применением общедоступных ПЭВМ, затруднена.

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

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

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

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

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

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

Признаками, отличающими предлагаемый способ от прототипа являются: выработка на этапе защиты для первичных данных, являющихся ПО КРЗ второго уровня имитовставки, ввод и запоминание вторичных данных, являющихся исходным программным обеспечением (ИПО) и рабочим программным обеспечением (РПО), при этом ИПО состоит из ПО тестирования и ПО первичной загрузки, РПО из ПО вторичной загрузки, прикладного ПО и контролирующего ПО, а каждый вид ИПО и РПО содержит служебную и информационную части, выработка для каждого вида РПО хэш-функции, после чего засекречивание информационных частей и хэш-функций каждого вида РПО и выработка для каждого вида РПО с их хэш-функциями и каждого вида ИПО, а также для ПО КРЗ первого уровня и системного ПО ПЭВМ эталонных имитовставок, запоминание незасекреченных ИПО и ПО КРЗ первого уровня, а также незасекреченных служебных и засекреченных информационных частей ПО КРЗ второго уровня и каждого вида РПО с их хэш-функциями на внешнем носителе, отдельно запоминание имитовставок, соответствующих каждому виду ПО.

Отличительными признаками предлагаемого способа на этапе доступа к данным являются: ввод данных с внешнего носителя в память ПЭВМ, из нее - ввод с помощью ПО первичной загрузки в первую и вторую аппаратно-программные среды ПО тестирования, с помощью последнего - тестирование этих сред на отсутствие неисправностей, после ввода в первую аппаратно-программную среду ПО КРЗ первого уровня исходного ключа, незасекреченной служебной и засекреченной информационной частей ПО КРЗ второго уровня и рассекречивания последней, проверка первичной целостности ПО КРЗ второго уровня, при отсутствии нарушения целостности после формирования рабочего ключа в первой аппаратно-программной среде - ввод в нее ПО вторичной загрузки, формирование и запоминание первой гаммы рассекречивания, рассекречивание на ней информационной части ПО вторичной загрузки, проверка первичной целостности его и при отсутствии нарушения целостности - ввод первой гаммы рассекречивания в ПЭВМ, рассекречивание в ней ПО вторичной загрузки, ввод с помощью последнего в первую и вторую аппаратно-программные среды прикладного ПО, формирование и запоминание в первой аппаратно-программной среде второй гаммы рассекречивания, рассекречивание на ней информационной части прикладного ПО, проверка первичной целостности его и при отсутствии нарушения целостности ввод по отдельной цепи во вторую аппаратно-программную среду второй гаммы рассекречивания, рассекречивание информационной части прикладного ПО, проверка вторичной целостности его и запуск прикладного ПО. После запуска прикладного ПО осуществляют ввод в первую аппаратно-программную среду контролирующего ПО, формирование и запоминание третьей гаммы рассекречивания, рассекречивание на ней информационной части контролирующего ПО и проверку первичной целостности его.

При отсутствии искажений в контролирующем ПО осуществляют ввод третьей гаммы рассекречивания в ПЭВМ, рассекречивают в ней информационную часть контролирующего ПО, вводят с его помощью в первую аппаратно-программную среду последовательно ПО первичной загрузки, ПО тестирования, ПО КРЗ первого уровня, системное ПО ПЭВМ и проверяют первичную целостность этих ПО. При отсутствии искажений в них проверяют вторичную целостность ПО вторичной загрузки и при отсутствии в нем искажений разрешают обработку информации во второй аппаратно-программной среде и передают управление ПО вторичной загрузки, с помощью которого периодически проверяют вторичную целостность контролирующего ПО, при этом при превышении числа проверок допустимого значения передают управление контролирующему ПО, а при обнаружении факта нарушения целостности любого вида ПО вырабатывают сигнал "Авария".

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

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

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

Гамма вырабатывается с помощью криптографического алгоритма с использованием криптографического ключа (алгоритм шифрования DES [2,3,4]) и начальных данных (синхропосылки) (алгоритм шифрования по ГОСТ 28147-89 [4,5]). В предлагаемом способе данными, которые подлежат криптографическому преобразованию, являются различные виды ПО, имеющие структуру файлов. Служебная часть файла (имя файла) используется в качестве начального заполнения шифратора - синхропосылки.

Пример аппаратной реализации криптографического преобразования данных приведен в заявке N 97111548 от 9.07.1997 г. Алгоритмы программной реализации без синхропосылки и с синхропосылкой приведены в [3,4,5].

Предлагаемый способ предусматривает использование двух уровней криптографической защиты. В качестве ПО КРЗ первого уровня используется общеизвестный алгоритм, например по ГОСТ 28147-89 [4,5]. Выбор ПО КРЗ второго уровня должен удовлетворять условию: алгоритм должен выбираться из достаточно большого множества криптографических алгоритмов, включающих в себя как общеизвестные, например, алгоритм DES и его модификации, использующие ключи двойной, тройной и так далее длины [6, стр. 42], алгоритмы по ГОСТ 28147-89 [4,5] , алгоритмы шифрования с использованием датчика псевдослучайных чисел [4, стр. 29], так и секретные алгоритмы. Так как по предлагаемому способу ПО КРЗ второго уровня присутствует в общедоступной ПЭВМ только в засекреченном виде, то с увеличением объема этого множества увеличивается неопределенность криптоаналитика противника относительно используемого алгоритма, следовательно, пропорционально объему увеличиваются затраты времени на вскрытие ключевой системы и обеспечение доступа к данным.

Большинство криптографических преобразований предлагаемого способа осуществляется с использованием рабочего ключа, в качестве которого выбирается отрезок гаммы, формируемой при засекречивании (рассекречивании) ПО КРЗ второго уровня. Указанная гамма формируется с использованием ПО КРЗ первого уровня, исходного ключа и синхропосылки, в качестве которой выбирается имя файла ПО КРЗ второго уровня.

Операция контроля целостности информации может осуществляться как с использованием криптографического преобразования (первичная целостность), так и без него (вторичная целостность). В первом случае, на этапе защиты с использованием открытой информации криптографического ключа (исходного или рабочего) и криптографического алгоритма вырабатывается имитовставка, которая является эталоном и запоминается на упаковке носителя ключевой информации, либо на отдельном внешнем носителе, например идентификаторе семейства "Touch Memory" [12,13].

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

В качестве криптографического алгоритма при контроле первичной целостности могут использоваться алгоритмы засекречивания по ГОСТ 28147-89 [4,5]: в режиме замены или в режиме гаммирования с обратной связью.

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

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

На этапе доступа после рассекречивания информации также вычисляется контрольная сумма, которая сравнивается с эталоном. Чем больше разрядов содержится в контрольной сумме, тем больше вероятность обнаружения ошибки. По существу организация контроля вторичной целостности заключается в кодировании информации обнаруживающим ошибки кодом. Применение линейных, в частности систематических, кодов для целей контроля нежелательно ввиду четко выраженной структуры этих кодов, что облегчает навязывание необнаруживаемых кодом ошибок. Поэтому на практике прибегают к более сложным методам образования контрольных сумм путем использования так называемых хэш-функций. В 7, стр. 55 приведены требования, которым должны удовлетворять хэш-функции, чтобы затруднить для злоумышленника ввод необнаруживаемых кодом ошибок. Поэтому на практике прибегают к более сложным методам образования контрольных сумм путем использования так называемых хэш-функций. В 7, стр. 55 приведены требования, которым должны удовлетворять хэш-функции, чтобы затруднить для злоумышленника ввод необнаруживаемых искажений. Примером программы, вычисляющей контрольную сумму файлов, является известная программа ADINE [12], а алгоритма, вычисляющего хэш-функцию, алгоритм по ГОСТ 34.11-94.

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

Операция сравнения эталонной имитовставки с имитовставкой, выработанной при обработке информации у потребителя может осуществляться как автоматически, по соответствующей программе, выполняемой в первой аппаратно-программной среде, так и оператором. В первом случае эталоны имитовставок могут быть введены в первую аппаратно-программную среду с дополнительного внешнего носителя, выполненного, например, как упоминалось ранее, в виде идентификатора семейства "Touch Memory" [12,13].

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

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

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

Функции ввода данных в аппаратно-программную среду выполняет ИПО, а функции обработки данных (рассекречивания и контроля целостности) - РПО.

РПО засекречивается и рассекречивается с использованием ПО КРЗ второго уровня, которое в свою очередь засекречивается и рассекречивается с использованием общеизвестного ПО КРЗ первого уровня. Существование в ПЭВМ криптографического алгоритма в засекреченном виде обеспечивает повышенную секретность обработки информации.

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

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

Обработка информации на этапе защиты осуществляется следующим образом. В защищенную и аттестованную ПЭВМ вводят ПО КРЗ первого уровня, исходные ключи и первичные данные, представляющие собой ПО КРЗ второго уровня. На ПО КРЗ первого уровня и исходных ключах для ПО КРЗ второго уровня вырабатывают имитовставку ИВ1 и запоминают ее. Затем с использованием служебной части (имени файла) ПО КРЗ второго уровня на ПО КРЗ первого уровня и исходных ключах засекречивают ПО КРЗ второго уровня и также запоминают его.

После засекречивания последнего некоторое время продолжается выработка гаммы засекречивания. Выработанный отрезок гаммы запоминают и в дальнейшем используют в качестве рабочего ключа.

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

Затем для каждого вида РПО вырабатывают контрольную сумму, после чего информационные части каждого вида РПО с контрольными суммами засекречивают и для вида РПО с их контрольными суммами, а также для каждого вида ИПО, ПО КРЗ первого уровня и системного ПО ПЭВМ вырабатывают имитовставки (для ПО вторичной загрузки - ИВ2, для прикладного ПО - ИВ3, для контролирующего ПО - ИВ4, для ПО первичной загрузки - ИВ5, для ПО тестирования - ИВ6, для ПО КРЗ первого уровня - ИВ7, для системного ПО ПЭВМ - ИВ8). Все имитовставки в дальнейшем используются в качестве эталонов. Засекречивание и выработка имитовставок осуществляется на ПО КРЗ второго уровня с использованием рабочего ключа и служебной части каждого вида ПО.

Незасекреченные ИПО и ПО КРЗ первого уровня, а также незасекреченные служебные части и засекреченные информационные части ПО КРЗ второго уровня и каждого вида РПО с их контрольными суммами запоминают на внешнем накопителе, например гибком диске.

Эталонные имитовставки запоминают вместе с исходными ключами на секретном носителе информации, выполненном, например, в виде "Touch Memory [12,13] или наносят на секретную упаковку носителей ключевой информации Структура данных, сформированная на этапе защиты, приведена на фиг. 1.

На фиг. 2 представлена блок-схема устройства обработки информации на этапе доступа к ней (пример реализации). Устройство содержит общедоступную ПЭВМ 1, шину 2, первую 3 и вторую 4 аппаратно-программную среды, внешний носитель 5 информации.

Первая 3 аппаратно-программная среда содержит: регистр управления 3-1, шинный формирователь 3-2, коммутатор 3-3, первое 3-4 ОЗУ, второе 3-5 ОЗУ, блок клапанов 3-6, контроллер обмена с внешним носителем 3-7, процессор 3-8, устройство отображения 3-9.

Вторая 4 аппаратно-программная среда содержит: регистр управления 4-1, шинный формирователь 4-2, коммутатор 4-3, ОЗУ 4-4, процессор 4-5, первое 4-6 и второе 4-7 устройство ввода-вывода, устройство отображения 4-8.

Регистры управления 3-1 и 4-1 могут быть выполнены, например, на интегральных микросхемах КР 1533 ТМ8, коммутаторы 3-3, 4-3 - КР 1554 ИД7, блок клапанов 3-6 - 1554 ЛА1, 1554 ЛА3, 1554 ЛА7 [14], ОЗУ 3-4, 3,5 и 4-4 - СУ7С 199-15 [15] , процессор 4-5 - TMS 320 С5Х [16], шинные формирователи 3-2 и 4-2 - ЭКФ 1594 АП6/9 [17].

В качестве внешнего носителя информации может быть использовано упомянутое ранее устройство "Touch Memory" [12,13] или устройства К1634 ДК3 [18]. Устройства отображения 3-9 и 4-8 могут быть выполнены на элементах индикации 3-ДС 339 А и дешифраторах 514 ИД1 [19].

В качестве контроллера обмена 3-7 может быть использован стандартный контроллер, адаптированный по электрическим параметрам для обмена данными с внешним носителем информации "Touch Memory" и персональной ЭВМ [20].

В случае использования в качестве носителя информации устройства К1634 ДК3 [18] контроллер обмена может быть выполнен на основе устройства УК-ДК3-28 [21], работающего с параллельными портами ввода-вывода процессора TMS 320 С5Х.

Устройства ввода-вывода 4-6 и 4-7 могут быть выполнены с использованием шинных формирователей ЭКФ 1594 АП6/9 [17], работающих с последовательными портами ввода-вывода процессора TMS 320 С5Х.

На фиг. 3 представлена укрупненная блок-схема алгоритма обработки информации на этапе доступа к ней.

Обработка информации происходит следующим образом.

Информация, сформированная на этапе защиты (фиг. 1), в качестве исходных данных (блок 1, фиг. 3) вводится с внешнего накопителя (гибкого магнитного диска) в ПЭВМ 1, которая с помощью ПО первичной загрузки через шину 2 записывает в регистр управления 3-1 управляющую комбинацию. Регистр управления 3-1 по первому выходу выдает сигнал, блокирующий работу процессора 3-8 (вход HOLD процессора TMS 320 C50). Этот же сигнал поступает на управляющий вход блока клапанов 3-6, блокируя передачу сигналов в второе 3-5 ОЗУ. При этом шина 2 ПЭВМ 1 через шинный формирователь 3-2 и коммутатор 3-3 подключается к первому 3-4 ОЗУ и отключается от второго 3-5 ОЗУ. После этого ПЭВМ 1 с помощью ПО первичной загрузки вводит в первое 3-4 ОЗУ программу тестирования (блок 2 фиг. 3) и выдает в регистр управления 3-1 соответствующую комбинацию. При этом сигнал с первого выхода регистра управления 3-1 снимается, разблокируя работу процессора 3-8, а со второго выхода - устанавливает коммутатор 3-3 в состояние, при котором ОЗУ 3-4 отключается от шины 2 ПЭВМ 1 и подключается к шине процессора 3-8. Процессор 3-8 запускает программу тестирования узлов аппаратно-программной среды, например ОЗУ 3-4 и 3-5.

Результат тестирования выводится на устройство отображения 3-9. Возможно также сигнал о конце тестирования выдавать в ПЭВМ 1 в виде сигнала прерывания (по отдельной цепи) с последующей организацией вывода результатов тестирования на монитор ПЭВМ 1.

После тестирования первой 3 аппаратно-программной среды ПЭВМ 1 аналогичным образом тестирует вторую 4 аппаратно-программную среду, при этом результат тестирования выводится на устройство отображения 4-8. При неисправных аппаратно-программных средах формируется сигнал "Авария", при исправных - ПЭВМ 1 организует обработку ПО КРЗ второго уровня (блок 3, фиг. 3), для чего вводит в ОЗУ 3-4 ПО КРЗ первого уровня, незасекреченную служебную и засекреченную информационную части ПО КРЗ второго уровня. После этого ПЭВМ 1 передает управление процессору 3-8 путем записи в регистр управления 3-1 соответствующей комбинации. Сигнал со второго выхода регистра управления устанавливает коммутатор 3-3 в состояние, при котором к первому 3-4 и второму 3-5 ОЗУ подключается шина процессора 3-8 и отключается шина 2 ПЭВМ 1. Процессор 3-8 через контроллер обмена 3-7 считывает с внешнего носителя 5 исходный ключ и эталонные имитовставки и записывает их в второе 3-5 ОЗУ. После этого процессор 3-8 на исходном ключе ПО КРЗ первого уровня с использованием в качестве синхропосылки служебной части ПО КРЗ второго уровня рассекречивает последнее, а также формирует имитовставку ИВ1' и выводит ее на устройство отображения 3-9 или реализует программу автоматического сравнения с эталонной имитовставкой ИВ1, считываемой из второго ОЗУ 3-5.

В неавтоматическом режиме сравнение значений полученных имитовставок с эталонными, нанесенными на упаковке носителя ключевой информации 5, осуществляется оператором.

В случае несовпадения сравниваемых имитовставок оператором автоматически вырабатывается сигнал "Авария".

При совпадении имитовставок процессор 3-8 из гаммы рассекречивания выбирает отрезок, который использует в дальнейшем в качестве рабочего ключа (блок 4, фиг. 3) и записывает его в ОЗУ 3-5. После этого ПЭВМ 1 по сигналу прерывания, выдаваемому процессором 3-8 или при нажатии оператором клавиши "Enter" клавиатуры, или по таймеру вводят в первую аппаратно-программную среду ПО вторичной загрузки (блок 5, фиг. 5) и передает управление процессору 3-8. Последний на рабочем ключе ПО КРЗ второго уровня с использованием служебной части ПО вторичной загрузки формирует и запоминает в первом 3-4 ОЗУ гамму рассекречивания, на которой рассекречивает это ПО и проверяет первичную целостность его (формирует имитовставку ИВ2' и сравнивает ее с эталонный ИВ2). При отсутствии искажений процессор 3-8 или оператор (при визуальном сравнении имитовставок) вырабатывает сигнал для ПЭВМ 1, которая организует вывод в свое ОЗУ первой гаммы рассекречивания из соответствующей зоны первого 3-4 ОЗУ и у себя рассекречивает ПО вторичной загрузки. После этого ПЭВМ 1, используя ПО вторичной загрузки, вводит в ОЗУ 3-4 и 4-4 прикладное ПО, передает управление процессору 3-8, который на рабочем ключе и ПО КРЗ второго уровня с использованием служебной части прикладного ПО в качестве синхропосылки, формирует и запоминает вторую гамму рассекречивания, рассекречивает это ПО и проверяет его первичную целостность (формирует имитовставку ИВ3' и сравнивает ее с эталонной ИВ3). При отсутствии искажений в прикладном ПО процессор 3-8 по отдельной цепи (для процессора TMS 320 C50, вход B10 и выход XF) передает в процессор 4-5 вторую гамму рассекречивания. Процессор 4-5 на этой гамме рассекречивает прикладное ПО и проверяет вторичную целостность его (по контрольной сумме). При отсутствии искажений процессор 4-5 запускает прикладное ПО. Это прикладное ПО предназначено для обработки информации, поступающей через первое 4-6 устройство ввода-вывода в последовательный порт процессора 4-5 и выдаваемой через такой же порт через второе 4-7 устройство ввода-вывода.

Однако разрешение на ввод-вывод (обработку) информации вырабатывается только после проверки целостности ПО контролирующего, первичной загрузки, тестирования, криптографической защиты первого уровня и системного ПО ПЭВМ 1. Для этого процессор 3-8 по окончании вывода второй гаммы рассекречивания выдает сигнал прерывания в ПЭВМ 1 или на устройство отображения 3-9, сигнализируя оператору о необходимости нажать клавишу "Enter". В ответ на этот сигнал ПЭВМ 1 вводит в первое ОЗУ 3-4 контролирующее ПО и передает управление процессору 3-8, который по аналогии с другими видами ПО формирует третью гамму рассекречивания и запоминает ее в первом ОЗУ 3-4, после чего рассекречивает контролирующее ПО и проверяет первичную целостность его (формирует имитовставку ИВ4' и сравнивает ее с эталонной ИВ4).

При отсутствии искажений в контролирующем ПО ПЭВМ 1 выводит из соответствующей зоны первого 3-4 ОЗУ третью гамму рассекречивания и рассекречивает у себя информационную часть контролирующего ПО, с помощью которого осуществляется ввод в первую 3 аппаратно-программную среду последовательно ПО первичной загрузки, ПО тестирования, ПО КРЗ первого уровня и системного ПО ПЭВМ 1 (блок 6, фиг. 3). Процессор 3-9, как это описывалось ранее, вырабатывает для каждого вида ПО имитовставки ИВ5', ИВ6', ИВ7', ИВ8', сравнивает их с эталонными (или выводит их на устройство отображения для сравнения оператором). При совпадении имитовставок оператор через первое 4-6 устройство ввода-вывода вводит информацию, которая обрабатывается с помощью прикладного ПО во второй аппаратно-программной среде и выводится через второе 4-7 устройство ввода-вывода в канал связи.

При несовпадении имитовставок, то есть при наличии искажений в ПО вырабатывается сигнал "Авария".

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

Предлагаемый способ предусматривает п