Защита данных от несанкционированного доступа

Автор: Пользователь скрыл имя, 26 Декабря 2011 в 13:54, курсовая работа

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

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

Оглавление

Введение . . . . . . . . . . . 3
1. Постановка задачи . . . . . . . . . 4
1. 1. Организационно-экономическая сущность задачи . . . . 4
1. 2. Входные данные . . . . . . . . . 6
1. 3. Постоянная информация . . . . . . . . 6
1. 4. Выходная данные . . . . . . . . . 6
2. Вычислительная система . . . . . . . . 7
2. 1. Операционная система . . . . . . . . 7
2. 2. Технические средства реализации задачи . . . . . . 8
2. 3. Программные средства . . . . . . . . 8
3. Алгоритм задачи . . . . . . . . . 10
4. Описание программы . . . . . . . . . 14
5. Описание применения программы . . . . . . 16
6. Заключение . . . . . . . . . . 17

Файлы: 1 файл

KP_MAX.DOC

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

    Данный линейный конгруэнтный датчик ПСЧ вырабатывает последовательности псевдослучайных чисел T(i), описываемые соотношением

         (1)

T(0)исходная величина, выбранная в качестве порождающего числа.

    Этот датчик ПСЧ генерирует псевдослучайные числа с определенным периодом повторения, зависящим от выбранных значений A и C. Значение М обычно устанавливается равным 2b, где b — длина слова ЭВМ в битах. Датчик имеет максимальный период М до того, как генерируемая последовательность чисел начнет повторяться. Линейный конгруэнтный датчик ПСЧ имеет максимальную длину М тогда и только тогда, когда A mod 4 = 1 и С — нечетное. В своей программе я положил А = 5, С = 27, Т(0) — пароль, вводимый пользователем.

    С полученной последовательностью Т(i) поступают следующим образом:

          F(i) = T(i) xor D(i)       (2)

    Где в (2) D(i) — последовательность открытых данных, F(i) — последовательность

    КП 46.41010.301 ПЗ

зашифрованных данных [4].

    Также при разработке алгоритма шифрования использовался алгоритм американского федерального стандарта на шифрование данных — Data Encryption Standard (DES).

    При зашифровании входные данные шифруются по формуле (2), далее обрабатываются блоками по 64 слова (word). Эта обработка заключается в следующем: :4 слова переставляются в соответствии с таблицей, изображенной на рис. 2:

40 8 48 16 56 24 64 32
39 7 47 15 55 23 63 31
38 6 46 14 54 22 62 30
37 5 45 13 53 21 61 29
36 4 44 12 52 20 60 28
35 3 43 11 51 19 59 27
34 2 42 10 50 18 58 26
33 1 41 9 49 17 57 25

    Рис. 2. Перестановка после зашифрования. 

    Как видно из данной таблицы, слово 40 входной последовательности становится 1-ым, слово 8 — 2-ым и т. д.

    Процесс расшифрования данных является инверсным относительно процесса зашифрования. Т. е. данные сначала переставляются в соответствии с таблицей, изображенной на рис. 3, а затем преобразуются по формуле (2). Как легко видеть, данная перестановка является обратной по отношению к начальной.

58 50 42 34 26 18 10 2
60 52 44 36 28 20 12 4
62 54 46 38 30 22 14 6
64 56 48 40 32 24 16 8
57 49 41 33 25 17 9 1
59 51 43 35 27 19 11 3
61 53 45 37 29 21 13 5
63 55 47 39 31 23 15 7

    Рис. 3. Перестановка перед расшифрованием

    КП 46.41010.301 ПЗ

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

    При написании программы использовались следующие стандартные библиотеки Borland Pascal 7.0 и Turbo Vision 2.0:

  • Модуль Objects. Модуль Objects  содержит  основные  определения объектов Turbo Vision, включая базовый объект иерархии Turbo Vision TObject, а также все невидимые  элементы  Turbo  Vision:  потоки,  коллекции  и ресурсы.
  • Модуль App. Модуль App  (предоставлен в  исходных   кодах)   обеспечивает элементы оболочки  Turbo  Vision.  4  очень  мощных  объектных типа определены в App, включая объекты TApplication и TProgram, которые служат в  качестве  программ  Turbo  Vision и объект панели экрана, который управляет большинством элементов в оконных программах.
  • Модуль Views. Модуль Views содержит основные компоненты видимых элементов и полезные компоненты более сложных групп, таких как рамки окон и полосы скроллинга. Более  сложные  видимые  элементы  находятся  в модулях Dialogs и TextView.
  • Модуль Dialogs. Модуль Dialogs определяет большинство элементов наиболее часто используемых при   создании  диалоговых  окон. Этот модуль включает  сами диалоговые окна (которые являются специализированными окнами) и различные элементы управления, такие как кнопки, метки, зависимые и независимые кнопки, строки ввода и списки истории.
  • Модуль Menus. Модуль Menus  обеспечивает все объекты и процедуры для системы меню Turbo Vision, включая выпадающие меню и активные элементы строки статуса.
  • Модуль Drivers. Модуль Drivers содержит все специализированные  драйверы Turbo Vision, включая драйверы мышки и клавиатуры, поддержку экрана и систему обработки ошибок с монитором событий  для программ, управляемых событиями.
  • Модуль Memory. Модуль Memory содержит процедуры монитора памяти Turbo Vision, которые обеспечивают функции управления кучей.
  • Модуль CRT. Модуль CRT содержит константы, переменные и подпрограммы, предназначенные для работы с консолью. В отличие от стандартного ввода-вывода,

    КП 46.41010.301 ПЗ

    когда он осуществляется через операционную систему, подпрограммы этого модуля работают с BIOS и непосредственно с видеопамятью.

  • Модуль DOS. Модуль DOS позволяет использовать возможности операционной системы MS-DOS, не предусмотренные в стандарте языка Паскаль, и содержит типы, константы, переменные и для реализации этих дополнительных возможностей.

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

    При запуске программы в первую очередь проверяется целостность системы; т. е. наличие всех файлов системы, соответствуют ли их имена и размеры таблице. Далее происходит инициализация: проверяются параметры BIOS. Если какой либо файл системы был изменен или параметры BIOS не соответствуют установленным в программе, система работать не будет. Для входа в систему необходимо ввести пароль. Эти проверки осуществляются в конструкторе Init объекта TMyApp. Этот же объект инициализирует меню (TMyApp.InitMenu), строку состояния (TMyApp.InitStatusLine), рабочее поле (TMyApp.InitDeskTop), устанавливает специальную цветовую палитру (TMyApp.GetPalette). Обработка событий (нажатие клавиш клавиатуры, работа с “мышью”) осуществляется в методе HandleEvent объекта TMyApp. При выборе какого-либо пункта меню управление передается соответствующему объекту или вызывается нужная подпрограмма.

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

  1. Shifr (процедура). Зашифрование файлов любого типа. Сначала получаем пароль от пользователя, затем создаем файл зашифрованных данных (*.M&A). Исходный файл считывается блоками по 64 word, кодируется с помощью генератора ПСЧ, затем переставляется в соответствии с таблицей, изображенной на рис. 2. Полученную последовательность записываем в файл с расширением *.M&A и т. д.
  2. DeShifr (процедура). Расшифрование файлов, зашифрованных процедурой Shifr.
  3. Plus (процедура). Установка защиты паролем или по ключевой дискете на программы.
  4. Block (процедура). Защита винчестера от записи.
  5. Passwords (процедура). Изменение пароля входа в программу. Сначала запрашивает старый пароль, затем два раза новый.
  6. TOptions ( объект, потомок объекта TDialog). Выводит диалоговое окно изменения

    КП 46.41010.301 ПЗ

    настроек шифрования файлов: удалять или не удалять исходный файл, высвечивать или не высвечивать индикатор процесса шифрования.

  1. CheckExec (процедура). Обрабатывает ошибки DOS.
 

    5. Описание применения программы 

    Программа предназначена для защиты данных от несанкционированного доступа; в ней реализованы следующие функции:

  • шифрование файлов;
  • защита паролем исполняемых файлов;
  • защита исполняемых файлов с помощью ключевой дискеты;
  • отслеживание и реакция на ошибки;
  • изменение паролей;
  • привязка к BIOS.

    Установка системы происходит с ключевой дискеты программой INSTALL.EXE, которая проверяет не была ли установлена система ранее; если нет, то создает на винчестере каталог C:\SUB ROSA и копирует в него файлы системы (Sub Rosa.exe, Block, KeyDisk, Plus, Passw, Setup.res, System.res).

    При запуске программы Sub Rosa.exe сначала проверяется наличие всех файлов системы. Если хотя бы один файл изменен или удален, то система работать не будет. Для работы с программой необходимо ввести пароль.

    В верхней части экрана находится полоска меню, состоящая из следующих пунктов:

  1. “Файлы”:

    — “Выбрать” (выбор файла для работы);

    — “Сменить каталог” (смена текущего каталога);

    — “Выход в DOS” (временный выход в DOS);

    — “Завершение” (завершение работы с программой);

  1. “Защита”:

    — “Установить пароль” (защита EXE- и COM-файлов паролем);

Информация о работе Защита данных от несанкционированного доступа