Разработка модулей администрирования и шифрования данных для информационной системы предприятия
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
?ощью применения алгоритма шифрования ГОСТ 28147-89. Дешифрование этой таблицы и последующее предоставление доступа пользователя к системе, возможно только при предъявлении им соответствующего USB-ключа, содержащего ключевой материал, хранящийся в защищенном виде. Модель защиты информационной системы учета заявок предприятия представлена на рисунке 3.7
Рисунок 3.7 - Модель защиты информационной системы учета заявок предприятия
При работе выполняется ряд шагов, прозрачных для пользователя:
1.Пользователь запускает на выполнение программу, вставляет USB-носитель с ключевой информацией в разъем своего АРМ.
2.Если носитель зарегистрирован в системе, то с него считывается ключевая информация, с помощью которой происходит потоковое дешифрование таблицы пользователей, и программа переходит к следующему шагу аутентификации.
.Пользователь системы указывает логин и пароль, в соответствии с которым получает уровень доступа к системе.
.При выполнении каких либо действий с программой защищенная база данных открывается криптомодулем с помощью переданной ключевой информации.
.С открытой базой данных производятся необходимые действия (чтение, запись, удаление).
.После того, как необходимые действия завершены, база снова закрывается криптомодулем.
.Информационная система учета заявок получает результат работы с открытой базой.
.Пользователь видит результат своих действий на экране АРМ в окне программы.
Для моделирования процесса выполнения операций в языке UML используются диаграммы деятельности. На этих диаграммах присутствуют обозначения состояний и переходов. Каждое состояние на диаграмме деятельности соответствует выполнению некоторой элементарной операции, а переход в следующее состояние выполняется только при завершении этой операции. Для детализации особенностей алгоритмической и логической реализации выполняемых защищенной информационной системой операций, изобразим алгоритм функционирования системы в виде диаграммы деятельности, представленной на рисунке 3.8. Временной аспект поведения может иметь существенное значение при моделировании синхронных процессов, описывающих взаимодействия объектов. Для моделирования взаимодействия объектов во времени в языке UML используются диаграммы последовательности. На диаграмме последовательности изображаются только те объекты, которые непосредственно участвуют во взаимодействии. Ключевым моментом для диаграмм последовательности является динамика взаимодействия объектов во времени. Диаграмма последовательности информационной системы учета заявок предприятия со встроенными модулями администрирования и шифрования дынных представим в виде UML-диаграммы последовательности, изображенной на рисунке 3.9.
Рисунок 3.8 - Диаграмма деятельности защищенной информационной системы УФНС по СК
Рисунок 3.9 - Диаграмма последовательности информационной системы учета заявок УФНС по СК со встроенными модулями администрирования и шифрования данных
В информационной системе учета заявок самыми высокими правами и полномочиями обладает администратор СУБД, который может создавать пользователей, редактировать их права и полномочия, удалять пользователей, формировать и раздавать соответствующий ключевой материал и периодически проводить смену ключа для шифрования и дешифрования таблиц базы данных. Спецификация таблиц информационной системы учета заявок предприятия приведена в приложении А.
.4 Алгоритм шифрования данных ГОСТ 28147-89
ГОСТ 28147-89 - блочный шифр с 256-битным ключом и 32 циклами преобразования, оперирующий 64-битными блоками. Основа алгоритма шифра - Сеть Фейстеля. Базовым режимом шифрования по ГОСТ 28147-89 является режим простой замены (определены также более сложные режимы гаммирование, гаммирование с обратной связью и режим имитовставки). Для шифрования в этом режиме открытый текст сначала разбивается на две половины (младшие биты - , старшие биты - ). На -ом цикле используется подключ :
( - двоичное "исключающее или")(3.1)
Для генерации подключей исходный 256-битный ключ разбивается на восемь 32-битных блоков: .
Ключи являются циклическим повторением ключей (нумеруются от младших битов к старшим). Ключи являются ключами , идущими в обратном порядке.
После выполнения всех 32 раундов алгоритма, блоки и склеиваются (старшим битом становится , а младшим - ) - результат есть результат работы алгоритма.
Структура алгоритма представлена на рисунке 3.10
Рисунок 3.10 - Структура алгоритма шифрования ГОСТ 28-147-89
Дешифрование выполняется так же, как и шифрование, но инвертируется порядок подключей .
Функция вычисляется следующим образом:
. и складываются по модулю .
.Результат разбивается на восемь 4-битовых подпоследовательностей, каждая из которых поступает на вход своего узла таблицы замен (в порядке возрастания старшинства битов), называемого ниже S-блоком. Общее количество S-блоков ГОСТа - восемь, т. е. столько же, сколько и подпоследовательностей. Каждый S-блок представляет собой перестановку чисел от 0 до 15. Первая 4-битная подпоследовательность попадает на вход первого S-блока, вторая - на вход второго и т. д.
Если S-блок выглядит так:
, 15, 13, 0, 5, 7, 10, 4, 9, 2, 3, 14, 6, 11, 8, 12
и на входе S-блока 0, то на выходе будет 1, если 4, то на выходе будет 5, если на входе 12, то на выходе 6 и т. д.
Выходы всех восьми S-блоков объединяются в 32-битное слово, за