close

Вход

Забыли?

вход по аккаунту

?

Приложение А (2)

код для вставкиСкачать
 Аннотация
Данный программный документ предназначен для того, чтобы помочь пользователю, работающему с программой "Реализация потокового алгоритма шифрования RC4", разобраться в использовании данной программы и показать все её возможности. В этом документе также приведено описание входных и выходных данных, назначение программы.
Содержание
1 Общие сведения.............................................................18
2 Функциональное назначение..............................................18
3 Используемые технические средства....................................18
4 Вызов и загрузка..............................................................18
5 Входные данные.............................................................18
6 Выходные данные..............................................................................18
7 Описание логической структуры.........................................19
1 Общие сведения
Данная программа "Реализация потокового алгоритма шифрования RC4" написана на языке C++Builder 6.0x и успешно функционирует в операционной системе Windows.
2 Функциональное назначение
Данная программа предназначена для выполнения поставленной задачи: реализация потокового алгоритма шифрования RC4 с возможность менять некоторые параметры шифрования, а также для обучения этому алгоритму в интерактивном режиме работы программы.
3 Используемые технические средства
Минимальные требования к системе: * Минимальная частота процессора 200 MHz
* 32Mb RAM
* 1 Mb свободного пространства на диске
* MAG innovision - монитор
* 1Mb видеоадаптер
* Клавиатура
* Мышь
4 Вызов и загрузка
Программа приступает к работе после запуска файла " PRC4_1.exe" и занимает на диске 1 Mb.
5 Входные данные
Входные данные представлены в таблице А.1.
Таблица А.1 - Входные данные
ТипИдентификаторНазначениеДиапазонAnsiStringkeyключлюбые символыintS[i], i=1..256S блок0 - 255AnsiStringStrисходный текстлюбые символыintiсчётчик, используемый при шифровании0 - 255intjсчётчик, используемый при шифровании0 - 255AnsiStringStr2текст для дешифрованиячисла от 0 до 255 через пробел 6 Выходные данные
Выходные данные представлены в таблице А.2.
Таблица А.2 - Выходные данные
ТипИдентификаторНазначениеДиапазонAnsiStringStr3шифрованный текстчисла от 0 до 255 через пробелintS[i], i=1..256S блок0 - 255char *S1дешифрованный текстсимволыintiсчётчик, используемый при шифровании0 - 255intjсчётчик, используемый при шифровании0 - 255 7 Описание логической структуры
При запуске программы появляется главная форма (Form1), на которой располагаются три кнопки: "Обучение", "Шифрование", "Выход". При нажатии на кнопку "Выход" вызывается функция void __fastcall Form1::Button3Click(TObject *Sender), закрывающая главную форму. При нажатии на две другие кнопки вызываются функции void __fastcall TForm1::Button1Click(TObject *Sender) и void __fastcall TForm1::Button2Click(TObject *Sender) передающее управление формам "Обучение" (Form2) и "Шифрование"(Form3). При создании формы "Обучение" вызывается функция void __fastcall TForm2::FormCreate(TObject *Sender), задающая начальные значения элементам формы. Для прохождения обучения нужно ввести произвольный ключ длиной от 4 до 255 символов. Ввод ключа обрабатывается функцией void __fastcall TForm2::Edit1Change(TObject *Sender). Для продолжения нужно нажать кнопку "Ключ введён", она обрабатывается функцией void __fastcall TForm2::Button1Click(TObject *Sender). После этого нужно заполнить таблицу, ставшую доступной, кодами символов ключа по таблице кодов всех символов (кроме служебных). Чтобы перейти к следующему заданию нужно нажать кнопку "Проверка правильности перевода", обрабатываемую функцией void __fastcall TForm2::Button2Click(TObject *Sender). Функция void __fastcall TForm2::StringGrid1SelectCell(TObject *Sender, int ACol,int ARow, bool &CanSelect) проверяет правильность заполнения массива K ключом и делает доступным следующий этап в случае правильного заполнения части массива. Функция void Init(int n) выполняет n шагов по заполнению S блока. При правильно проделанных 10 шагах по заполнению S блока делается доступным следующий этап, это обрабатывается функцией void __fastcall TForm2::StringGrid3SelectCell(TObject *Sender, int ACol,int ARow, bool &CanSelect). На этом этапе предлагается ввести текст для шифрования. Обработка ввода идёт в функции void __fastcall TForm2::Edit2Change(TObject *Sender). После ввода текста (длинной не менее 10 символов) нужно нажать кнопку "Шифровать", которая вызывает функцию void __fastcall TForm2::Button3Click(TObject *Sender). Для выполнения задания нужно зашифровать текст и нажать кнопку "Проверка правильности шифрования", вызывающей функцию void __fastcall TForm2::Button4Click(TObject *Sender). Если всё сделано правильно, то становиться доступным кнопка "Закончить обучение", при нажатии на которую выдаётся сообщение об успешно пройденном обучении. Это выполняет функция void __fastcall TForm2::BitBtn1Click(TObject *Sender). На форме располагается ёщё две кнопки "Выход" и "Помощь". При нажатии на первую кнопку форма "Обучение" закрывается функцией void __fastcall TForm2::Button6Click(TObject *Sender). При нажатии на вторую кнопку вызывается функция void __fastcall TForm2::Button5Click(TObject *Sender), открывающая форму "Помощь".
На форме "Помощь" располагаются три закладки, содержащие сведения о том, как нужно работать с программой. На форме также располагается кнопка "Выход", при нажатии на которую вызывается функция void __fastcall TForm4::Button1Click(TObject *Sender), закрывающая форму.
При создании формы "Шифрование" вызывается функция void __fastcall TForm3::FormCreate(TObject *Sender), задающая начальное значение элементам формы. На форме располагается три основные кнопки: "Шифрование", "Дешифрование" и "Выход". При нажатии на кнопку "Шифрование" вызывается функция void __fastcall TForm3::Image2Click(TObject *Sender) шифрующая текст находещийся в первом поле. Данная функция использует три вспомогательные функции. Первая из них void Init(AnsiString Str1,int *S) заполняет S блок начальными значениями по ключу. Вторая void Shifrovanie(int *S,int &rc4i,int &rc4j) шифрует текст, а третья void VivodSbloka(int *S,int rc4i,int rc4j) выводит на экран S блок и значение счётчиков i и j, используемых при шифровании. При нажатии на кнопку "Дешифрование" вызывается функция void __fastcall TForm3::Image1Click(TObject *Sender), дешифрующая коды символов шифрованного текста, находящиеся во втором поля. Эта функция использует функцию заполнения S блока и функцию вывода его на экран, а также функцию void DEShifrovanie(int *S,int &rc4i,int &rc4j), дешифрующую текст. Шифрование можно проводить двумя способами:
1) шифрование по ключу;
2) шифровать с использованием S блока и счётчиков i и j, без использования ключа.
В первом случае используется только ключ, вводимый в поле. При вводе ключа вызывается функция обработчик void __fastcall TForm3::Edit1Change(TObject *Sender). Во втором случае ключ не нужен, а нужен S блок и два счётчика i и j, их можно загрузить из файла, выбрав пункт меню "Файл->Загрузить S блок", обрабатываемый функцией void __fastcall TForm3::S1Click(TObject *Sender). Сохранить S блок и оба счётчика в файл можно выбрав пункт меню "Файл->Сохранить S блок", обрабатываемый функцией void __fastcall TForm3::S2Click(TObject *Sender). При нажатии на третью кнопку (кнопка "Выход") вызывается функция void __fastcall TForm3::Button1Click(TObject *Sender), закрывающая форму. В данной программе существует возможность открыть текст для шифрования. Для этого нужно выбрать пункт меню "Файл->Открыть файл для шифрования", обрабатываемый функцией void __fastcall TForm3::N6Click(TObject *Sender). Для открытия текста для дешифрования нужно выбрать пункт меню "Файл->Открыть файл для дешифрования", обрабатываемый функцией void __fastcall TForm3::N7Click(TObject *Sender). Для сохранения шифрованного текста нужно выбрать пункт меню "Файл->Сохранить шифрованный текст", обрабатываемый функцией void __fastcall TForm3::N8Click(TObject *Sender). Для сохранения дешифрованного текста, записанного в третьем поле, нужно выбрать пункт меню "Файл->Сохранить дешифрованный текст", обрабатываемый функцией void __fastcall TForm3::N9Click(TObject *Sender). Все пункты меню дублируются кнопками на панели формы. Существует возможность вызвать форму "Помощи", выбрав пункт меню "Помощь", обрабатываемый функцией void __fastcall TForm3::N3Click(TObject *Sender). Также можно вызвать форму "О программе", выбрав пункт меню "О программе", обрабатываемый функцией void __fastcall TForm3::N4Click(TObject *Sender). При выборе пункта меню "Файл->Создать" вызывается обработчик создания формы, а при выборе пункта меню "Файл->Выход" форма закрывается.
На форме "О программе" располагается информация о программе и о разработчиках. Для закрытия формы нужно нажать кнопку "Выход", обрабатываемую функцией void __fastcall TAboutBox::BitBtn1Click(TObject *Sender).
Документ
Категория
Рефераты
Просмотров
24
Размер файла
98 Кб
Теги
приложение
1/--страниц
Пожаловаться на содержимое документа