Разработка программного продукта для криптографической защиты информации — КиберПедия 

Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...

Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...

Разработка программного продукта для криптографической защиты информации

2019-10-25 314
Разработка программного продукта для криптографической защиты информации 0.00 из 5.00 0 оценок
Заказать работу

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

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

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

№ п/п Основные требования
1. Надежность передачи информации
2. Простота использования
3. Использование собственного алгоритма шифрования.
4. Возможность обновления алгоритма шифрования в целях предотвращения раскрытия ключа
5. Невысокие требования к вычислительной мощности компьютера
6. Поддержка OS Windows
7. Минимальные затраты на разработку и обслуживание программы
8. Возможность использования в комплексе с другими методами защиты

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

Для разработки программного продукта будет использоваться язык программирования C++.

C++ – это язык программирования, который широко используется для разработки программного обеспечения, являясь одним из самых популярных языков программирования. Область его применения включает создание операционных систем, разнообразных прикладных программ, драйверов устройств, приложений для встраиваемых систем, высокопроизводительных серверов, а также развлекательных приложений.

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

Данный язык программирования полностью соответствует требованиям, поставленным по созданию программного продукта.

Кроме выбора языка программирования требуется определиться с компилятором, поддерживающим язык C++. Нами будет использоваться компилятор Microsoft Visual Studio (рис. 18).

Рис. 18. Логотип Microsoft Visual Studio

Microsoft Visual Studio –  линейка продуктов компании Microsoft, включающих интегрированную среду разработки программного обеспечения и ряд других инструментальных средств. Данные продукты позволяют разрабатывать как консольные приложения, так и приложения с графическим интерфейсом, в том числе с поддержкой технологии Windows Forms, а также веб-сайты, веб-приложения, веб-службы как в родном, так и в управляемом кодах для всех платформ, поддерживаемых Windows.

Visual Studio включает в себя:

· Редактор исходного кода;

· Встроенный отладчик машинного уровня;

· Редактор форм для упрощения создания графического интерфейса;

· Дизайнер классов;

· Дизайнер схемы базы данных.

Visual Studio включает несколько сред (языков) программирования:

· Visual Basic.NET;

· Visual C++;

· Pascal.

После определения языка программирования и компилятора, необходимо перейти к рассмотрению алгоритма работы программного продукта.

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

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

Комплекс шифрования и дешифрования будет присваивать каждому символу засекречиваемого текста три блока:

· Блок R;

· Блок G;

· Блок B.

В каждый из блоков с помощью открытого ключа генерируются цифры от 0 до 255. К примеру, слово «ток» будет выглядеть как «6 54 56 40 160 200 255 50 100» (рис. 19).

R G B R G B R G B
6 54 56 40 160 200 255 50 100

т

о

к

Рис. 19. Пример работы генератора шифрования текста

Все блоки в совокупности образуют канал цветопередачи RGB (красный, зеленый, синий), который будет записан программой-шифратором в формате bmp.

Схема работы программного комплекса криптографической защиты информации наглядно иллюстрирует рис. 20.


Рис. 20. Работа программного комплекса криптографической защиты информации

Данный алгоритм работы программного комплекса «XB» является надежным в использовании и простым в создании.

Рассмотрим более подробно процесс разработки шифратора и дешифратора для программного комплекса «XB»:

1. Для разработки программы шифратора txt2bmp.exe. требуется:

· Запустить программный продукт, в котором будет происходить процесс создания программного продукта – Microsoft Visual Studio (рис. 21);

Рис. 21. Ярлык программы Microsoft Visual Studio

· После запуска программы открывается среда программирования (рис. 22). При создании нового проекта программа открывает область разработки, в которой необходимо написать программный код;

Рис. 22. Среда программирования Microsoft Visual Studio

· Создать новый проект по созданию консольного приложения шифратора и назвать его. Имя проекта txt2bmp (рис. 232);

Рис. 23. txt2bmp Создание нового проекта

· Прописать директиву #include для подключения дополнительных библиотек в код (рис. 24);

Рис. 24. txt2bmp директива

· Ввести библиотеку – записать коренной файл «unsigned int», в котором указать начальный код программы (рис. 25);

Рис. 25. txt2bmp начальный код программы

· Прописать алгоритм шифрования файла (рис. 26);

Рис. 26. txt2bmp алгоритм шифрования файла

· Ввести параметры, которые будут использоваться при работе алгоритма шифрования (рис. 27).

Рис. 27. txt2bmp параметры преобразования TXT файла в BMP файл

· Прописать работу цикла в алгоритме (рис. 28);

Рис. 28. txt2bmp работа цикла алгоритма программы

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

Рис. 29. txt2bmp код обработки алгоритма

· Скомпилировать написанный код. На выходе должна получиться готовая программа txt2bmp.exe.

Далее необходимо произвести проверку работоспособности программы. Для этого требуется:

· Создать на диске d:\ txt файл для шифрования и назвать его «5», внести в него текст, который будет содержать произведение «Война и мир» (или любой другой текст) (рис. 30);

Рис. 30. txt2bmp txt файл

· Открыть программу txt2bmp.exe (рис. 31);

Рис. 31. txt2bmp ярлык программы txt2bmp.exe

· Вызвать проводник зажав комбинацию клавиш WIN+R;

· В открывшемся окне ввести путь CMD;

· В появившейся командной строке ввести путь к программе C:\Users\nerok\Desktop\bmptxt\Builds;

· Ввести путь к шифруемому файлу d:\5.txt;

· Ввести путь записи файла в зашифрованном виде d:\9.txt (рис. 32) (важно назвать файл другим именем в противном случае программа выдаст ошибку);

Рис. 32. txt2bmp путь записи файла

· Открыть диск d:\, в котором должен появиться файл 9.bmp.

Характеристика файла BMP будет зависеть напрямую от объёма шифруемой информации, в нашем случае файл имеет размер 83 на 83 пикселей и «весит» 61,3 Кб (рис. 33).  

Рис. 33. txt2bmp вид и характеристика файла 9.bmp

Программа работает успешно, можно переходить к созданию программы дешифратора.

2. Для создания программы дешифратор bmp2txt.exe необходимо повторить основные действия, которые были проделаны при создании программы шифратора:

· Создать новый проект по созданию консольного приложения шифратора и назвать его. Имя проекта bmp2txt;

· Прописать директиву #include для подключения других файлов в код; подключить стандартную библиотеку C++;

· Прописать коренной файл «int main» и ввести код, в котором прописать конфигурацию дешифрования файлов, команду на обработку аргументов (рис. 34);

Рис. 34. bmp2txt код конфигурация

·  Прописать функцию, которая переведет полученные байты в txt-файл по заданному алгоритму (рис. 35);

Рис. 35. bmp2txt копирование полученных байтов в txt-файл

· Скомпилировать написанный код. На выходе должна получиться готовая программа bmp2txt.exe

Далее необходимо произвести проверку работоспособности алгоритма действий bmp2txt.exe. Для этого требуется:

· Открыть программу bmp2txt.exe (рис. 36);

Рис. 36. bmp2txt ярлык программы bmp2txt.exe

· Вызвать проводник, зажав комбинацию клавиш WIN+R;

· В открывшемся окне ввести путь CMD;

· В появившейся командной строке необходимо ввести путь к программе C:\Users\nerok\Desktop\bmptxt\Builds\bmp2txt.exe;

· Ввести путь к файлу d:\9.bmp, содержащий произведение «Война и мир» в зашифрованном виде;

·
Ввести путь записи файла в дешифрованном виде d:\1.txt (рис. 37);

Рис. 37. bmp2txt путь записи файла

· Открыть записанный файл d:\1.txt (рис. 38).

Рис. 38.  bmp2txt записанный файл

Записанный файл «1.txt» расшифрован без потери данных и полностью аналогичен файлу «5.txt».

Таким образом, разработанный комплекс «XB», состоящий из программ «txt2bmp» и «bmp2txt», успешно справился с поставленными задачами.

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

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

 


Поделиться с друзьями:

Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...

Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...

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

История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.006 с.