Информатизация ведет к созданию единого мирового информационного пространства, в рамках которого ведется, в том числе обмен информацией между различными субъектами. Однако развитие высоких технологий информационного обмена делает их потенциально уязвимой от электронного терроризма и шантажа. Одним из направлений защитной деятельности является разработка мер по криптографической защите информации.
В настоящее время существует множество различных программных продуктов, реализующих данную деятельность. Однако, большинство из них (например, PGP; GnuPG;) не удовлетворяет существующему в нашей стране законодательству (можно использовать только алгоритм ГОСТ 28147-89), в связи с чем их нельзя использовать в Российской Федерации [1]. Поэтому вопрос о разработке программного продукта способного обеспечить необходимую защиту данных и в то же время удовлетворять всем требованиям Российского законодательства остается актуальным.
В качестве примера такого программного продукта рассмотрим разработанную нами программу «Крипто1», которая предназначена для передачи данных между пользователями через сеть Интернет. Данные передаются только в зашифрованном виде, чтобы скрыть их от злоумышленников. Блок-схема программы приведена на рис.1.
Рисунок 1. Структурная схема программы
Посредством интерфейса пользователь вводит команды, которые в последствии отправляются в блок обработчика команд. После обработки команды программа начинает выполнять соответствующий команде блок:
ـ Блок формирования пары ключей
По шифрофразе пользователя формируются открытый и закрытый ключи. После чего открытый ключ передается на сервер хранения ключей, а закрытый – хранится в программе.
ـ Блок шифрования
В этом блоке выполняется процесс шифрования по алгоритму ГОСТ 28147-89 [2], выбранных пользователем файлов (данных). Для чего используется открытый ключ того, кому адресовано сообщение, взятый с сервера ключей. Также здесь вычисляется значение ХЭШ-функции не зашифрованных данных, которое впоследствии присоединяется к зашифрованному сообщению.
ـ Блок дешифрования
Ранее зашифрованные файлы подвергаются процессу дешифрования, используя хранящийся в программе закрытый ключ пользователя. Вычисляется значение ХЭШ-функции дешифрованного сообщения и сравнивается со значением ХЭШ-функции принятого сообщения. Это делается для того, чтобы проверить целостность зашифрованных данных в сообщении (если злоумышленник перехватил и модифицировал сообщение, то значения ХЭШ-функций не будут совпадать) [3].
ـ Блок хранения открытых ключей
Предназначен для хранения открытых ключей пользователей, поступающие из блока формирования ключей. К ключам имеют доступ только зарегистрированные в системе (программе) пользователи.
ـ Блок данных
Непосредственно файлы, которые мы шифруем (дешифруем) и отправляем их адресату (получаем от других пользователей). А также вся информация, которую использует программа во время своей работы.
ـ Блок передачи данных
Этот блок отвечает за обмен данными между пользователями системы.
Таким образом, в работе были рассмотрены программные продукты, реализующие обмен информацией между пользователями в защищенном от злоумышленников виде предлагаемые зарубежными странами, которые не подходят для использования на территории РФ. И была предложена программная система, удовлетворяющая законодательству РФ по использованию криптографических средств защиты информации.
Библиографический список.
- Постановление правительства РФ от 26-06-1995 №608
- Столингс В. Криптография и защита сетей –М.: Издательский дом “Вильямс”, 2001
- Терехов А. Конспект лекций "Криптографическая защита информации".: Учебное пособие. – СПб: СПГУ, 1999