Курсовая работа: Программная реализация алгоритма шифрования DES. Режим ECB
Как следует из табл.8, первым битом ключа Ki будет 14-й бит последовательности Сi ,Di , а вторым- 17-й бит, 47-м битом ключа Ki будет 29-й битСi ,Di ,а 48-м битом -32-ой бит Сi ,Di .
2. Основные режимы работы алгоритма DES
Алгоритм DESвполне подходит как для шифрований, так и для аутентификации данных. Он позволяет непосредственно преобразовывать 64-битовый входной открытый текст в 64-битовый выходной шифрованный текст, однако данные редко ограничиваются 64 разрядами.
Чтобы воспользоваться алгоритмом DESдля решения разнообразных криптографических задач, разработаны четыре рабочих режима:
-электронная кодовая книга ЕСВ (electroniccodebook);
-сцепление блоков шифра СВС (cipherblockchaining);
-обратная связь по шифртексту CFB(cipherfeedback);
-обратная связь по выходу OFB(outputfeedback).
В курсовой работе мы реализовывали режим «электронная кодовая книга». Изучив теорию, можем приступить к практическому рассмотрению алгоритма. Была разработана программа, наглядно показывающая работу алгоритма DES.
3. Разработка программной реализации алгоритма
В данном разделе курсового проекта приводится описание программного продукта, реализующего алгоритм шифрования DES: показывается логика работы программы, описываются процедуры и функции.
Программа “ResearchDES” написана на языке программирования высокого уровня C++; при разработке использовалась среда BorlandC++ Builder. Исходный текст программы приведен в приложении 1.
Программа представляет собой приложение для операционной системы Windows, которое выполняется следующим образом: пользователь выбирает файл, который содержит необходимое для шифрования сообщение. Получив имя файла, программа открывает его, производит необходимые действия над данными, и записывает полученный результат в нужный пользователю файл.
Предлагаемый программный продукт содержит следующие компоненты:
а) Основной файл mainform.cpp.
б) Алгоритм преобразования исходного сообщения.
в) Алгоритм преобразования входных данных.
Пользователю предлагается ввести ключ, который может быть представлен в двоичном, шестнадцатеричном или текстовом виде. Затем необходимо выбрать источник данных: файл или строка. При шифровании строки, пользователь вводит необходимую информацию, и нажимает кнопку «старт». Вывод зашифрованной информации осуществляется в свободное поле. При шифровании файла, пользователь указывает необходимый файл, выбирает конечный файл и нажимает кнопку «старт». Зашифрованная информация записывается в указанный пользователем конечный файл.
Заключение
В процессе разработки курсового проекта были получены навыки работы и программирования приложений на языке C++ в среде BorlandC++ Builder. В результате работы над проектом получена работоспособная программа, реализующая шифрование по алгоритму DESв режиме «электронная кодовая книга». Данный продукт может использоваться как учебное пособие, или для домашнего пользования. Симметричные алгоритмы шифрования еще долго будут актуальны.
Список использованных источников
1. Ю.В.Романец, П.А. Тимофеев, В.Ф. Шаньгин Защита информации в компьютерных системах и сетях: Радио и связь: Москва, 1999. - 328 с.
2 Брюс Шнайер, Прикладная криптография: БХВ-Питер: Санкт-Петербург,2004.-718 с.
Приложение А
Листинг программы А.1 –mainform.cpp
#include <vcl.h>
#pragma hdrstop
#include "DESAlgorithms.h"
#include "MainForm.h"