Описание объектов, свойств и методов

МИНИСТЕРСТВО ОБРАЗОВАНИЯ РЕСПУБЛИКИ БЕЛАРУСЬ

УЧРЕЖДЕНИЕ ОБРАЗОВАНИЯ

«БАРАНОВИЧСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ»

Факультет ________________инженерный______________________________________

Кафедра __________информационные системы и технологии__________________

Дата регистрации работы в деканате _________

Дата регистрации работы на кафедре _________

Отметка о допуске к защите _________

Оценка за защиту _________

КУРСОВАЯ РАБОТА

по дисциплине _ Основы алгоритмизации и программирования _______________­­­

Тема: « Обработка текстовой информации в среде Delphi»

Исполнитель:

студент 1 курса группы ИСТ-11_

Студент (факультет, курс, группа)

Гуринович Алексей Игоревич

Фамилия, имя, отчество

Руководитель:

Старший преподаватель_________

Ученое звание, ученая степень, должность,

Раковцы Галина Михайловна__ _

Фамилия, имя, отчество

 

 

Барановичи 2012

МИНИСТЕРСТВО ОБРАЗОВАНИЯ РЕСПУБЛИКИ БЕЛАРУСЬ

УЧРЕЖДЕНИЕ ОБРАЗОВАНИЯ

«БАРАНОВИЧСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ»

 

РЕЦЕНЗИЯ

на курсовую работу (проект)

(регистрационный №_____)

 

Студента

_______________________________________________________________________

(фамилия, имя, отчество)

Факультет _______________________________________________________________________

Курс ________________

 

Дисциплина

_______________________________________________________________________

 

Рецензент

_______________________________________________________________________

(фамилия, имя, отчество)

 

Дата получения к/р для рецензирования _____________________________________

 

Дата возвращения к/р после рецензирования _________________________________

 

Оценка______________ Подпись преподавателя-рецензента ____________________

 

Текст рецензии:

 

_______________________________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

 

 

Р Е Ф Е Р А Т

 

Курсовая работа: 20 с., 9 иллюстраций, 4 источника.

ПРОГРАММА ДЛЯ ОБРАБОТКИ ТЕКСТОВОЙ ИНФОРМАЦИИ, ШИФРОВКА И ДЕШИФРОВКА ТЕКСТА, КРИПТОГРАФИЧЕСКАЯ СИСТЕМА, КЛЮЧ.

Объект исследования – возможности среды объектно-ориентированного программирования Delphi для осуществления шифровки текста.

Цель работы – написать программу, которая выполняет шифровку-дешифровку текста.

При выполнении работы использованы методы исследования: изучение литературы, методы синтеза и анализа.

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

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

 

 

________________________

(подпись студента)

 

 

СОДЕРЖАНИЕ

ВВЕДЕНИЕ. 5

1. ТЕОРЕТИЧЕСКАЯ ЧАСТЬ. 7

1.1 Постановка задачи. 7

1.2 Математическая модель. 7

1.3 Алгоритм решения. 8

1.4 Блок-схема. 9

2. ПРАКТИЧЕСКАЯ ЧАСТЬ. 11

2.1. Описание объектов, свойств и методов. 11

2.2 Формы и основные модули текста программы в среде Delphi 12

2.3 Результат тестирования программного продукта. 16

2.4 Анализ полученных результатов. 18

ЗАКЛЮЧЕНИЕ. 19

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ.. 20

ПРИЛОЖЕНИЕ А.. 21

 

 

 


ВВЕДЕНИЕ

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

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

История криптографии - ровесница истории человеческого языка. Более того, первоначально письменность сама по себе была

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

Первые криптосистемы встречаются уже в начале нашей эры. Так, Цезарь в своей переписке использовал уже более менее систематический шифр, получивший его имя.

Бурное раз­ви­тие крип­то­гра­фи­че­ские сис­те­мы по­лу­чи­ли в го­ды

пер­вой и вто­рой ми­ро­вых войн. Начиная с послевоенного времени и по нынешний день появление вычислительных средств ускорило разработку и совершенствование криптографических методов.

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

Цель курсовой работы – осуществить шифровку текста с помощью средств Delphi.

Для достижения названной цели в исследовании необходимо решить следующие задачи:

- осуществить постановку задач;

- создать блок-схемы алгоритмов;

- осуществить описание объектов, свойств, методов;

- разработать формы и представить текст программы;

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

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

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

Курсовая работа состоит из теоретической и практической части. Теоретическая часть состоит из: постановки задачи; математической модели; алгоритма решения задачи и блок. Практическая часть состоит из: описания объектов, свойств и методов; формы и основных модулей текста программы в среде Delphi; результата тестирования программного продукта; графического представления результатов; анализа полученных результатов.

К работе прилагается электронный носитель информации.

 

 

ТЕОРЕТИЧЕСКАЯ ЧАСТЬ

Постановка задачи

 

В данной курсовой работе требуется создать Windows-приложение на алгоритмическом языке Object Pascal в среде визуального программирования Delphi, которое предназначена для шифрования текста следующим образом:

для шифрования текста используется метод, основанный на сложении текста и пароля: "мой текст" + "пароль" = ('м'+'п')('о'+'а')... То есть каждый символ получают путем сложения соответствующих символов текста и пароля. Под "сложением символов" подразумевается сложение номеров этих символов. Обычно пароль длиннее текста, поэтому его размножают: "парольпар". Чтобы расшифровать текст, нужно проделать обратную операцию, то есть из текста вычесть пароль.

 

 

Математическая модель

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

Алфавит - конечное множество используемых для кодирования информации знаков.

Текст - упорядоченный набор из элементов алфавита.

В качестве примеров алфавитов, используемых в современных ИС можно привести следующие:

- алфавит Z33 - 32 буквы русского алфавита и пробел;

- алфавит Z256 - символы, входящие в стандартные коды ASCII и КОИ-8;

- бинарный алфавит - Z2 = {0,1};

- восьмеричный алфавит или шестнадцатеричный алфавит.

Шиф­ро­ва­ние - пре­об­ра­зо­ва­тель­ный про­цесс: ис­ход­ный текст, ко­то­рый но­сит так­же на­зва­ние от­кры­то­го тек­ста, за­ме­ня­ет­ся шиф­ро­ван­ным тек­стом.

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

Ключ - ин­фор­ма­ция, не­об­хо­ди­мая для бес­пре­пят­ст­вен­но­го шиф­ро­ва­ния и де­шиф­ро­ва­ния тек­стов.

На рисунке 1.1 показана блок-схема процедуры шифрования файлов.

 

Рисунок 1.1 — Процедура шифрования файлов

 

 

Алгоритм решения

 

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

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

Блок-схема

На рисунке 1.2 представлена блок-схема процесса шифровки, где t – это текст, который будет результатом шифровки, str – исходный текст, w – слово-пароль, а i и k – это индексы для строк str и w соответственно.

 

Рисунок 1.2 — Блок-схема алгоритма шифрования текста

 

На рисунке 1.3 представлена блок-схема процесса дешифровки, в процессе которого сначала проверяется введенный ключ, а затем идет сам процесс дешифровки, где t – это текст, который будет результатом дешифровки, str – зашифрованный текст, w – предполагаемое слово-пароль, w0 – строка размноженного пароля, извлеченная из зашифрованного текста, w1 - строка размноженного предполагаемого пароля, а i и k используются как индексы.

 

Рисунок 1.3 — Блок-схема алгоритма дешифровки текста

2. ПРАКТИЧЕСКАЯЧАСТЬ

Описание объектов, свойств и методов

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

Label- текстовая метка (надпись) на форме. Используется для отображения любого текста в окне. Текст задаётся в свойстве Caption.

Edit - поле ввода. Используется для ввода любых данных (текста, числа и т.д.), представленных одной строкой. Текст хранится свойством Text. Свойство MaxLength позволяет задать максимальное число символов, которое может быть введено в поле. Значение 0 означает, что ограничение не установлено.

Memo - многострочный Edit. Используется для ввода больших объёмов текста. Свойство ReadOnly делает этот объект нередактируемым. Свойство ScrollBars позволяет указать полосы прокрутки, которые будут отображаться у поля при недостатке места для всего текста:

•ssNone - без полос прокрутки;

•ssHorizontal - горизонтальная полоса прокрутки;

•ssVertical - вертикальная;

•ssBoth - обе: и горизонтальная, и вертикальная.

Button – командная кнопка. Caption - текст на кнопке.

Компоненты OpenDialog — диалог «Открыть файл» и SaveDialog — диалог «Сохранить файл как...». Все свойства этих компонентов одинаковы, только их смысл несколько различен для открытия и закрытия файлов. Основное свойство, в котором возвращается в виде строки выбранный пользователем файл, — FileName. Типы искомых файлов, появляющиеся в диалоге в выпадающем списке "Тип файла", задаются свойством Filter.