Сетевая программа тестирования по дисциплинам

Автор: Пользователь скрыл имя, 13 Ноября 2011 в 11:24, дипломная работа

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

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

Оглавление

Введение
1 Анализ технического задания и возможные способы реализации поставленной задачи
2 Выбор инструментальных программных средств для решения поставленной задачи
3 Выбор аппаратных средств
4 Описание программы
5 Методика работы пользователя с программой
6 Экспериментальная часть
7 Защита данных
8 Организационно-экономическая часть
9 Санитарные нормы и правила при работе с ПЭВМ
Заключение
Литература
Приложение

Файлы: 15 файлов

2 Выбор инструментальных программных средств.doc

— 47.00 Кб (Открыть, Скачать)

3 Выбор аппаратных средств.doc

— 42.00 Кб (Открыть, Скачать)

4 Описание программы.doc

— 320.00 Кб (Открыть, Скачать)

5 Методика работы пользователя с программой.doc

— 2.22 Мб (Открыть, Скачать)

6 Экспериментальная часть.doc

— 102.50 Кб (Открыть, Скачать)

7 Защита данных.doc

— 74.50 Кб (Скачать)

       7 Защита данных

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

       Защита  программного продукта необходима для  исключения возможности просмотра  как самих вопросов, так и результатов  тестирования.

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

       Защите  подвергается только серверная часть  программного продукта, так как доступ ко всем данным осуществляется именно из серверной части.

       Как уже описывалось в пункте «4.1 Описание серверной части» данного дипломного проекта, при активации главной формы приложения появляется окно для ввода пароля. Для ввода пароля используется функция InputBox, котороая отображает диалоговое окно для ввода строки текста. Окно выводится в центре экрана и содержит поле ввода с надписью, а также кнопки OK и Cancel.

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

Рисунок 7.1 – Окно ввода пароля при запуске  программного продукта

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

       const InputBoxMessage = WM_USER+200; //объявление константы – сообщение Windows при создании InputBox

       //процедура  скрытия символов

       procedure TForm_Main.InputBoxSetPasswordChar(var Msg: TMessage);

       

       var hInputForm, hEdit, hButton: HWND; //переменные компонентов окна ввода пароля

       begin

       hInputForm := Screen.Forms[0].Handle; //определение формы приложения

       if hInputForm <> 0 then //форма найдена

       begin

       hEdit := FindWindowEx(hInputForm, 0, 'TEdit', nil); //поле ввода

       hButton := FindWindowEx(hInputForm, 0,' TButton', nil); //кнопки

       SendMessage(hEdit, EM_SETPASSWORDCHAR, Ord('*'), 0); //установка символа * как символа ввода пароля

       SendMessage(hButton, WM_SETTEXT, 0, Integer(PChar('Отмена'))); //кнопка

       end; end;

       //вызов  процедуры из главного  потока приложения

       PostMessage(Handle,InputBoxMessage,0,0); //сообщение о создании поля ввода

       InputPass := InputBox('Запуск приложения', 'Введите  пароль для начала работы сервера программы тестирования:', ''); //создание окна ввода пароля (рисунок 7.1)

       Таким образом, вводимые пользователем символы  скрываются от посторонних лиц символом *.

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

       Для повышения надежности использования  парольной защиты в программе  тестирования используется шифрование и дешифрование используемого пароля. Сам пароль хранится в таблице PAROL базы тестирования. Эту таблицу с помощью средств взлома информации злоумышленник может просмотреть. Поэтому нецелесообразно хранить и использовать пароль в его первозданном виде.

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

       Процедура шифрования пароля выглядит следующим  образом:

       

       const

       ConstString='qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNMйцукенгшщзхъфывапролджэячсмитьбюЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮ1234567890'; //постоянная строка всевозможных символов

       procedure TForm_Main.nChangePassClick(Sender: TObject);

       var Pass1, Pass2: string; //переменные нового и зашифрованного пароля

       begin

       PostMessage(Handle, InputBoxMessage, 0,0); //скрытие вводимого пароля

       Pass1 := InputBox('Смена пароля', 'Введите новый  пароль для изменения:', ''); //создание поля ввода нового пароля

       // ШИФРОВАНИЕ ПАРОЛЯ  И ЗАПИСЬ ЕГО  В БАЗУ ТЕСТИРОВАНИЯ

       Randomize; //исключение повтора выпадения случайных значений

       For i := 1 To Length(Pass1) Do //цикл от 1 до длины введенного пароля

       Pass2 := Pass2 + Copy(Pass1, i, 1) + ConstString [Random(Length(ConstString))] + ConstString [Random(Length(ConstString))]; //создание пароля

       DM.ibtParol.Edit; DM.ibtParolPAROL.Text:=Pass2; //запись пароля

       DM.ibtParol.Post; //принятие изменений

       Зашифрованный пароль создается следующим образом  – из введенного нового пароля в цикле копируется один символ (Copy(Pass1, i, 1)), к этому символу прибавляется еще два символа, которые случайным образом извлекаются из постоянной строки ConstString.

       Пример  шифрования пароля:

       Введенный пароль – привет.

       Зашифрованный пароль –  п mж р va и Хх в Тg е чЩ т Рм.

       Символы введенного пароля выделены рамкой.

       Процедура расшифровки пароля выглядит подобным образом:

       i := 1; //переменная номера копируемого символа

       ExistPass := Copy(DM.ibtParolPAROL.AsString, 1, 1); //копируется первый символ записанного в базе тестирования пароля

       Repeat //цикл

       

       i := i + 3; //номер копируемого символа увеличивается на 3

       

       ExistPass := ExistPass + Copy(DM.ibtParolPAROL.AsString, i,1); //копирование символа

       Until i >= Length(DM.ibtParolPAROL.Text); //выход из цикла

       If InputPass <> ExistPass Then Close; //пароли не совпадают – выход из программы

       Расшифровка пароля происходит следующим образом: переменной InputPass присваивается введенный пароль, переменной ExistPass – пароль, записанный в базе тестирования. В цикле Repeat/Until происходит копирование каждого третьего символа из имеющегося пароля – происходит формирование первоначального пароля. Затем сравниваются введенный и имеющийся пароли – если они не совпадают, то приложение закрывается.

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

       Клиентская  часть не нуждается в парольной  защите, так как из нее нет доступа к редактированию данных базы тестирования.

8 Организационно-экономическая часть.doc

— 144.00 Кб (Открыть, Скачать)

9 Санитарные нормы и правила.doc

— 46.50 Кб (Открыть, Скачать)

~$Анализ технического задания и возможных способов решения п.doc

— 162 байт (Скачать)

Введение.doc

— 44.00 Кб (Открыть, Скачать)

Заключение.doc

— 29.50 Кб (Открыть, Скачать)

Литература.doc

— 35.00 Кб (Открыть, Скачать)

Приложение А.doc

— 32.50 Кб (Открыть, Скачать)

Реферат.doc

— 30.50 Кб (Открыть, Скачать)

Содержание.doc

— 34.50 Кб (Открыть, Скачать)

Информация о работе Сетевая программа тестирования по дисциплинам