СИСТЕМА КОНТРОЛЯ ЦЕЛОСТНОСТИ ФАЙЛОВ ИСХОДНЫХ ТЕКСТОВ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ Российский патент 2011 года по МПК G06F12/16 G06F11/30 

Описание патента на изобретение RU2419136C1

Изобретение относится к некриптографическим способам контроля целостности файлов и может быть использовано при создании программного обеспечения, при контроле целостности исходных текстов программного обеспечения, в том числе при проведении сертификационных испытаний [1, ст.20; 2] программного обеспечения на отсутствие недекларированных возможностей [3].

Известна система контроля целостности файлов [4]. Система представлена на фиг.1. Система контроля целостности файлов включает блок генерации ключа хэширования 1, блок формирования хэш-кода файлов 2, блок хранения контрольных хэш-кодов файлов 3, блок сравнения хэш-кодов 4, причем выход блока генерации ключа хэширования 1 соединен с первым входом блока формирования хэш-кода файлов 2, второй вход которого соединен с входом чтения контролируемых файлов 5, первый выход - с входом блока хранения контрольных хэш-кодов файлов 3, второй выход - со вторым входом блока сравнения хэш-кодов 4, первый вход которого соединен с выходом блока хранения контрольных хэш-кодов файлов 3, выход - с выводом результатов контроля целостности 6.

Контроль целостности файлов заключается в том, что в блоке 1 генерируют ключ хэширования, на основе сгенерированного ключа для каждого поступающего с входа 5 контролируемого файла, содержащего информацию, в блоке 2 формируют контрольный хэш-код путем преобразования содержащейся в контролируемом файле информации по алгоритму [5]. Сохраняют в блоке 3 сформированный контрольный образ для каждого контролируемого файла. Для контроля целостности файлов на основе сгенерированного ключа для каждого поступающего с входа 5 контролируемого файла, содержащего информацию, в блоке 2 повторно формируют хэш-код содержащейся в контролируемом файле информации. В блоке 4 сравнивают повторно сформированный хэш-код файла с его контрольным хэш-кодом, поступающим из блока 3. В случае идентичности повторно сформированного и контрольного хэш-кода для каждого контролируемого файла передают на выход 6 положительный результат выполнения условия целостности информации.

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

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

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

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

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

Эти отличительные признаки по сравнению с прототипом позволяют сделать вывод о соответствии заявляемого технического решения критерию "новизна".

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

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

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

- форматирование исходных текстов - процесс внесения или удаления пробелов, знаков табуляции, пустых строк, комментариев и так далее;

- файл сети Петри - каким-либо образом сохраненная в виде файла сеть Петри.

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

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

Схема предлагаемой системы контроля целостности файлов исходных текстов программного обеспечения приведена на фиг.2, содержит: блок генерации ключа хэширования 1, блок формирования хэш-кода файлов 2, блок хранения контрольных хэш-кодов файлов 3, блок сравнения хэш-кодов 4, блок построения сети Петри файлов исходных текстов 7 и блок хранения сети Петри в виде файла сети Петри 8, причем выход блока генерации ключа хэширования 1 соединен с первым входом блока формирования хэш-кода файлов 2, первый выход которого соединен с входом блока хранения контрольных хэш-кодов файлов 3, второй выход - со вторым входом блока сравнения хэш-кодов 4, первый вход которого соединен с выходом блока хранения контрольных хэш-кодов файлов 3, выход - с выводом результатов контроля целостности 6, вход блока построения сети Петри файлов исходных текстов 7 соединен с входом чтения контролируемых файлов 5, выход - с входом блока хранения сети Петри в виде файла сети Петри 8, выход которого соединен со вторым входом блока формирования хэш-кода файлов 2.

Назначение блоков понятно из их названия.

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

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

Реализация предлагаемой системы не вызывает затруднений, так как все блоки и узлы, входящие в устройство, реализующее систему, общеизвестны и широко описаны в технической литературе [9-17]. Например, блок построения сети Петри файлов исходных текстов, например, может быть реализован в виде специализированного устройства на микроконтроллере по принципам и методам, описанным в [9-14], блок хранения сети Петри в виде файла сети Петри - на базе любого машиночитаемого носителя информации [15, 16], их взаимное соединение и подсоединение к блокам прототипа может быть осуществлено по стандартным схемам подключения устройств [17].

Источники информации

1. Федеральный закон "О техническом регулировании" №184-ФЗ от 27 декабря 2002 года.

2. Положение о сертификации средств защиты информации по требованиям безопасности информации. Утверждено приказом председателя Гостехкомиссии при Президенте РФ от 27 октября 1995 г. №199.

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

4. Программный комплекс "Shield System Manager". Подсистема контроля целостности (Integrity Control System). SSM-ICS. Описание применения. - Москва: "Лаборатория Испытаний Средств и Систем Информатизации", 2005. - 25 с.

5. Онучин С. Устройства защиты информации. Критерии выбора. - "Мир связи: Connect!" №9, 1999 г.

6. ГОСТ Р 34.11-94. "Информационная технология. Криптографическая защита информации. Функция хэширования".

7. Котов В.Е. Сети Петри. - М.: Наука, Гл. ред. физ.-мат.лит., 1984. - 160 с.

8. Питерсон Дж. Теория сетей Петри и моделирование систем: Пер. с англ. - М.: Мир, 1984. - 264 с., ил.

9. Нечаев И.А. Конструкции на логических элементах цифровых микросхем. - Москва.: "Радио и связь", 1992. - 123 с.

10. Белов А.В. Создаем устройства на микроконтроллерах. - СПб.: Наука и техника, 2007. - 304 с.

11. Конструкторско-технологическое проектирование электронной аппаратуры. Учебник для вузов. Серия: Информатика в техническом университете. Под ред. Шахнова В.А. - М.: Изд-во МГТУ им.Н.Э.Баумана, 2003. - 528 с.: ил.

12. Суворова Е., Шейнин Ю. Проектирование цифровых систем на VHDL. Серия "Учебное пособие". - СПб.: БХВ-Петербург, 2003. - 576 с.: ил.

13. Овчинников В.А. Алгоритмизация комбинаторно-оптимизационных задач при проектировании ЭВМ и систем. Серия: Информатика в техническом университете. - М.: Изд-во МГТУ им.Н.Э.Баумана, 2001. - 288 с.: ил.

14. Новиков Ю.В. Основы цифровой схемотехники. Базовые элементы и схемы. Методы проектирования. - М.: Мир, 2001. - 379 с.

15. Левин В.И. Носители информации в цифровом веке / Под общ. ред. Д.Г.Красковского. - М.: КомпьютерПресс, 2000. - 256 с.: ил.

16. Гук М. Дисковая подсистема ПК. - СПб.: Питер, 2001. - 336 с.: ил.

17. Пей Ан. Сопряжение ПК с внешними устройствами. - М.: ДМК Пресс, 2003. - 320 с. ил.

Похожие патенты RU2419136C1

название год авторы номер документа
СИСТЕМА КОНТРОЛЯ ОТСУТСТВИЯ НЕДЕКЛАРИРОВАННЫХ ВОЗМОЖНОСТЕЙ В ПРОГРАММНОМ ОБЕСПЕЧЕНИИ 2009
  • Бурушкин Алексей Анатольевич
  • Минаков Владимир Александрович
  • Мирошников Вячеслав Викторович
  • Грищенко Кристина Павловна
RU2419135C1
СИСТЕМА АНАЛИЗА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ НА ОТСУТСТВИЕ НЕДЕКЛАРИРОВАННЫХ ВОЗМОЖНОСТЕЙ 2016
  • Горюнов Максим Николаевич
  • Мельников Павел Вячеславович
  • Закалкин Павел Владимирович
  • Воробьев Сергей Анатольевич
  • Анисимов Дмитрий Владимирович
  • Петров Константин Евгеньевич
RU2622622C1
Способ многоуровневого контроля целостности электронных документов 2015
  • Елисеев Николай Иванович
  • Финько Олег Анатольевич
  • Власов Константин Александрович
  • Евтушенко Сергей Александрович
RU2637482C2
СИСТЕМА ЗАЩИЩЕННОГО ЭЛЕКТРОННОГО ДОКУМЕНТООБОРОТА И СПОСОБ АВТОМАТИЗИРОВАННОГО КОНТРОЛЯ ЕЁ ИНФРАСТРУКТУРЫ НА ОСНОВЕ ТЕХНОЛОГИИ РАСПРЕДЕЛЕННЫХ РЕЕСТРОВ (БЛОКЧЕЙН) 2020
  • Тороев Андрей Сергеевич
  • Ивкин Артем Валерьевич
  • Волкова Альбина Александровна
  • Поддубный Максим Игоревич
RU2787945C2
СИСТЕМА КОНТРОЛЯ ОТСУТСТВИЯ НЕДЕКЛАРИРОВАННЫХ ВОЗМОЖНОСТЕЙ В ПРОГРАММНОМ ОБЕСПЕЧЕНИИ 2010
  • Минаков Владимир Александрович
  • Мирошников Вячеслав Викторович
  • Бурушкин Алексей Анатольевич
RU2434265C1
УСТРОЙСТВО ЗАЩИТЫ ОТ НЕСАНКЦИОНИРОВАННОГО ДОСТУПА К ИНФОРМАЦИИ 2007
  • Молодченко Жанна Анатольевна
  • Сотов Леонид Сергеевич
  • Харин Валерий Николаевич
RU2334272C1
СИСТЕМА КОНТРОЛЯ ОТСУТСТВИЯ НЕДЕКЛАРИРОВАННЫХ ВОЗМОЖНОСТЕЙ В ПРОГРАММНОМ ОБЕСПЕЧЕНИИ 2010
  • Минаков Владимир Александрович
  • Мирошников Вячеслав Викторович
  • Котрахов Вячеслав Вадимович
RU2434272C1
СПОСОБ КОНТРОЛЯ ЦЕЛОСТНОСТИ И ПОДЛИННОСТИ ЭЛЕКТРОННЫХ ДОКУМЕНТОВ ТЕКСТОВОГО ФОРМАТА, ПРЕДСТАВЛЕННЫХ НА ТВЕРДЫХ НОСИТЕЛЯХ ИНФОРМАЦИИ 2015
  • Елисеев Николай Иванович
  • Финько Олег Анатольевич
RU2591655C1
Система анализа программного обеспечения на отсутствие недекларированных функциональных возможностей 2024
  • Добровольская Анастасия Владимировна
  • Сызранов Алексей Павлович
  • Мухтаров Сергей Артурович
  • Мирошниченко Евгений Леонидович
  • Мезенцев Александр Сергеевич
  • Бондаренко Елизавета Юрьевна
  • Болотов Алексей Юрьевич
RU2823450C1
СИСТЕМА АНАЛИЗА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ НА ОТСУТСТВИЕ ПОТЕНЦИАЛЬНО ОПАСНЫХ ФУНКЦИОНАЛЬНЫХ ОБЪЕКТОВ 2018
  • Горюнов Максим Николаевич
  • Мельников Павел Вячеславович
  • Закалкин Павел Владимирович
  • Воробьев Сергей Анатольевич
  • Анисимов Дмитрий Владимирович
  • Петров Константин Евгеньевич
RU2675210C1

Иллюстрации к изобретению RU 2 419 136 C1

Реферат патента 2011 года СИСТЕМА КОНТРОЛЯ ЦЕЛОСТНОСТИ ФАЙЛОВ ИСХОДНЫХ ТЕКСТОВ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

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

Формула изобретения RU 2 419 136 C1

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

Документы, цитированные в отчете о поиске Патент 2011 года RU2419136C1

Станок для изготовления деревянных ниточных катушек из цилиндрических, снабженных осевым отверстием, заготовок 1923
  • Григорьев П.Н.
SU2008A1
Устройство для моделирования сетей Петри 1990
  • Дорошенко Валерий Владимирович
SU1709348A1
JP 8137825 A, 31.05.1996.

RU 2 419 136 C1

Авторы

Бурушкин Алексей Анатольевич

Минаков Владимир Александрович

Мирошников Вячеслав Викторович

Грищенко Кристина Павловна

Даты

2011-05-20Публикация

2009-10-05Подача