Создание автономной автоматизированной системы шифрования данных на съёмных носителях

Автор: Пользователь скрыл имя, 01 Декабря 2014 в 14:59, курсовая работа

Краткое описание

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

Файлы: 1 файл

Курсовая работа.doc

— 5.65 Мб (Скачать)

  MS.Position:=0;            //позиционирование в потоке на старт

  for i:=1 to MS.Size do           //от 1 до последнего байта

    begin

      k:=(i mod Length(pass))+1;   //определяем номер символа ключа,

                                   //по которому будем шифровать

      MS.Read(j,1);                //читаем 1 байт из потока

      j:=j xor Ord(pass[k]);       //шифруем прочитанный байт

      MS.Position:=i-1;            //возвращаемся назад на 1 байт

      MS.Write(j,1);               //записываем зашифрованный байт

    end;

  MS.Position:=0;

  MS.SaveToFile(FN);         //сохраняем содержимое потока

                             //в файле под тем же именем

  MS.Free;                   //уничтожаем экземпляр потока

end;

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

procedure TForm1.BitBtn2Click(Sender: TObject);

var

  MS:TMemoryStream;

begin

  if not FileExists(Edit1.Text) then

   begin

      ShowMessage('Файл не найдет!!!');

      Exit;

    end;

  if Edit2.Text='' then

    begin

      ShowMessage('Введите пароль для шифрования!!!');

      Exit;

    end;

  SimmetricEx(Edit1.Text,Edit2.Text);

  ShowMessage('Файл зашифрован!');

  Close;

end;

BitBtn1 – закрытие программы:

procedure TForm1.BitBtn1Click(Sender: TObject);

begin

  Close;

end;

 

Здесь происходит открытие окна для выбора файла в каталоге:

procedure TForm1.FormCreate(Sender: TObject);

begin

  Open.InitialDir:=ExtractFileDir(Application.ExeName);

end;

 

2.3 Тестирование программы «FileCoder»

 

Тестирование программного обеспечения — процесс исследования, испытания программного продукта.

Процесс отладки включает:

  1. действия, направленные на выявление ошибок (тестирование);
  2. диагностику и локализацию ошибок (определение характера

ошибок и их местонахождение);

  1. внесение исправлений в программу с целью устранения ошибок.

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

После прописывания всех кодов и настройки расположения компонентов, можно компилировать приложение, для этого надо нажать F9 в среде Delphi, запустится окно программы:

Рисунок 2.7 – Итоговый вид программы

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

Рисунок 2.8 – Результат шифрования

 

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

Рисунок 2.9 – Результат программы при невыбранном файле

Рисунок 2.10 – Результат программы при не введенном пароле

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ЗАКЛЮЧЕНИЕ

 

 

 

В ходе курсовой работы были решены следующие задачи:

  1. изучить системы шифрования;
  2. проанализировать программы шифрования;
  3. выбрать наиболее подходящие средства реализации;
  4. провести тестирование разработанного демонстрационного

варианта программы шифрования;

  1. закрепить практические навыки программирования на языке

Delphi.

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

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

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

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

 

 

 

 

 

СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ

 

 

 

  1. Шнайер Б. Прикладная криптография. Протоколы, алгоритмы,

исходные тексты на языке Delphi/ Под ред. А. Б. Васильева. — М.: Триумф, 2002. — 816 с.

  1. Жельников В. Кpиптогpафия от папиpуса до компьютеpа / Под ред. А.

Б. Васильева. — М.: ABF, 1996. — 335 с.

  1. Панасенко С. П. Алгоритмы шифрования. Специальный справочник. —

СПб.: БХВ-Петербург, 2009. — 576 с.

  1. Павел Исаев. Некоторые алгоритмы ручного шифрования (рус.) //

КомпьютерПресс. — 2003. — В. 3.

  1. Уитфилд Диффи, Мартин Хеллман Новые направления в криптографии

(англ.). — 1976.

  1. Мафтик С. Механизмы защиты в сетях ЭВМ. - М.: Мир,

1993.

  1. Гражданский кодекс Российской Федерации, часть 1, глава 9, статья

160.

  1. Электронно цифровая подпись [Электронный ресурс]// URL:

http://eregex.ru/2009/06/electronic-signature/ (дата обращения 20.03.2014).

  1. Венбо Мао Современная криптография. Теория и практика = Modern

Cryptography: Theory and Practice. — М.: Вильямс, 2005. — 768 p. — 2000 экз.

  1. Клод Шеннон. "Работы по теории информации и кибернетике", М., ИЛ,

1963, с. 333-369 (Перевод В.Ф.Писаренко).

  1. К. Шеннон Теория связи в секретных системах // Работы по теории

информации и кибернетике / Перевод С. Карпова. — М.: ИЛ, 1963. — 830 с.

  1. М.Э.Смид, Д.К.Бранстед.  Стандарт шифрования данных: прошлое и

будущее. /пер. с англ./ М., Мир, ТИИЭР.–1988.–т.76.–N5.

  1. Help Delphi. В помощь начинающим [Электронный ресурс]// URL:

http://helpdelphi.ru/(дата обращения 05.05.2014).

  1.  Википедия, свободная энциклопедия [Электронный ресурс]//

Тестирование программного обеспечения: статья. URL: http://ru.wikipedia.org/wiki/Тестирование_программного_обеспечения (дата обращения 22.04.2014).

  1. Википедия, свободная энциклопедия [Электронный ресурс]//

Симметричные криптосистемы: статья. URL: http://ru.wikipedia.org/wiki/Симметричные_криптосистемы (дата обращения 22.04.2014).

 

 

 

 


Информация о работе Создание автономной автоматизированной системы шифрования данных на съёмных носителях