Защита информации

Автор работы: Пользователь скрыл имя, 17 Ноября 2012 в 19:17, дипломная работа

Описание работы

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

Содержание работы

Введение ……………………………………………………………………….. 3
1.1. Понятие электронного документооборота ……………………………… 3
1.2. Понятие защиты информации …………………………………………… 6
1.3. Обзор и сравнительная характеристика программного обеспечения,
используемого при создании СУБД …………………………………………...9
1.4. Особенности построения СУБД Oracle …………………………………. 16
2. Исследовательская часть
2.1. Общие понятия
2.2. Обзор существующих работ, посвященных проблемам защиты информации в электронном документообороте
2.3. Разработка модуля защиты информации
3. Конструкторская часть …………………………………………………….. 35
3.1. Классы задач
3.2. Основная концепция создания ПО
3.3. Программное обеспечение для создания ПО
4. Технологическая часть ………………………………………………….. 50
4.1. Выбор языка реализации
4.2. Формат хранения данных в оперативной памяти
4.3. Оптимизация вычислений
5. Организационно-экономическая часть ………………………………… 76
5.1. Введение
5.2. Разбивка работы на экономико-функциональные блоки
5.3. Построение сетевого графика и диаграммы Гантта
5.4. Определение затрат на НИР
5.5. Выводы
6. Организационно-правое обеспечение информационной безопасности. 86
7. Заключение ………………………………………………………………. 106
Литература …………………………………………………………………… 108

Файлы: 1 файл

диплом защита информации.docx

— 149.28 Кб (Скачать файл)

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

Кроме того, весьма вероятно, что подобное положение  наносит как политический, так  и экономический ущерб РФ, причем как на внутреннем, так и на международном  рынке.

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

Заключение

Итак, дипломная  работа – это вид технического творчества. Её правовая защита возможна с использованием законов РФ. Согласно конституции Российской Федерации  возможны следующие пути защиты:

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

Защита данной работы используя механизмы авторского права. Как пояснительная записка, так и вспомогательное ПО, могут  быть отнесены к форме интеллектуальной собственности, в следствие этого, их правовая защита может основываться на законе об “Об авторском праве  и смежных правах ”.

Что касается организационного аспекта защиты, то здесь следует  отметить следующее: разработанное  ПО может использоваться в исследовательских  целях как в коммерческих, так  и в государственных организациях. При этом результаты проводимых исследований сами по себе могут представлять собой  коммерческую или государственную  тайну.

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

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

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

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

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

 

Литература

Сумароков С.Н. Запреты  двоичных функций. Обозрение прикладной и промышленной математики, т.1, вып.1, с.33-55

Жуков А.Е., Чистяков В.П. Матричный подход к исследованию прообразов выходной последовательности конечного автомата. Обозрение прикладной и промышленной математики, т.1, вып.1, с.108-117

Михайлов В.Г. Ассимптотическая нормальность логарифма  числа прообразов выходной последовательности конечного автомата. Обозрение прикладной и промышленной математики т.1, вып.1, с.126-135

Huffman D. A. Canonical forms for informations-lossless finitestate logical machines. – IRE Trans. Circuit Theory, 1959, v. 6, spec. Suppl., p. 41-59.

X. Lai and J. L. Messey. “Some Connections between Scramblers and Invertible Automata” Proc. 1988 Beijing Int. Workshop on Info. Theory. Beijing, China, July 4-7, 1988, pp. DI-5.1 – DI-5.5.

А. Гилл Введение в теорию конечных автоматов. Издательство «Наука», главная редакция физико-математической литературы Москва 1966 г.

Варфоломеев А.А., Жуков А.Е., Пудовкина М.А. Поточные криптосистемы. Основные свойства и  методы анализа стойкости. М: ПАИМС, 2000

Практикум по организации  и планированию машиностроительного  производства: Учебное пособие для  машиностроительных специальностей Вузов / Грачева К.А., Некрасов Л.А., Ипатов М.И. и др. Под ред. Скворцова Ю.В. и Некрасова Л.А.. – М.: Высшая школа, 1990.

Закона об авторском  праве и смежных правах

Программы для  ЭВМ: правовая охрана / Л.С.Симкин –  М.: издательство "Городец", 1998.

Указ № 334 Президента Российской Федерации от 3 апреля 1995 года.

Организационно-экономическая  часть дипломных проектов, направленных на разработку программного обеспечения. Учебное пособие / М. Ф. Меняев

ZongDuo Dai, Ding Feng Ye and Kwok Yan Lam. “Weak Invertibility of Finite Automata and Cryptanalysis on FAPKC”. ASIACRYPT’98, LNCS 1514, pp. 227-241, 1998.

Трельсен Э. Модель COM и применение ATL 3.0, Пер. с англ. – СПб.: БХВ-Петербург, 2001. – 928 с.

Schneier В. Applied Cryptogrdphy, John Wiley & Sons. 1995

Rueppel R.A. Analysis and Design of Stream Ciphers. Springer-Veilag. 1986.

Tao R.C. and Chen S.H., A Finite Automaton Public Key Cryptosystem and Digital Signatures, Chinese J. of Computer, 1985(8), pp.401-409.

Tao R.J. and Chen S.H., Two Varieties of Finite Automaton Public Key Cryptosystem and Digital Signatures, J. of Compt. Sci. and Tech., 1986(1), No.1, pp.9-18.

Tao R.J. and Chen S.H. and Chen X.M., FAPKC3: a new finite automaton public key cryptosystem, Laboratory for Computer Science, Institute of Software, Chinese Academy of Sciences, Beijing 100080, China, June, 1995. ISCAS–LCS–95–07.

Приложения 

Приложения

1.1.   Приложение 1. Оценка быстродействия генерируемого машинного кода.

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

1. Код на C++

#define STRICT

#define WIN32_LEAN_AND_MEAN

#include <windows.h>

#include <stdio.h>

#include <stdlib.h>

#include <tchar.h>

 

const long c_nCount=10000000L;

 

__inline int BinLog(long tValue)

{        

if(!tValue)                  

return -1;        

for( int i=0; i < sizeof(long)*8 ; ++i)        

{                  

long x=tValue >> i;                  

if((x & 1)==1 && x!=1)                           

return -1;                  

if(x==1)                           

return i;        

};        

return -1;

};

 

int _tmain(int argc, _TCHAR* argv[])

{        

_tprintf(_T("Making %d iterations took "), c_nCount);        

int t1=GetTickCount();           

         

long x=0, y=0;        

for(int i=1; i <= c_nCount; ++i)        

{                  

x=((x+1) ^ 0xAFE65903) << 24;                  

y+=BinLog(i);        

};        

         

int t2=GetTickCount();        

int dt=t2-t1;         

_tprintf(_T("%lf s (%lf ms per iteration)\n"), double(dt)/1000.0, double(dt)/double(c_nCount));         

_tprintf(_T("%d\n"), x);         

_gettchar(); 

}

 

2. Код на Delphi

program Project1;

 

{$APPTYPE CONSOLE}

 

uses 

SysUtils, windows;

 

function BinLog(value:Cardinal) : Integer;

var i:Integer;

var x:Cardinal;

begin       

if(value = 0) then       

begin               

BinLog:=-1;               

exit;       

end;       

For i:=0 To 31 do       

begin               

x:=value shr i;               

if((x<>1) and ((x and 1) = 1)) then               

begin                       

BinLog:=-1;                       

exit;               

end;               

if(x=1) then               

begin                       

BinLog:=1;                       

exit;             

   end;       

end;       

BinLog:=-1;

end;

 

procedure main;  

const c_nCount: Integer = 10000000;   

var x, y, dt, i:Integer;  

var t1, t2: Cardinal;

begin       

write('Making ', c_nCount, ' iterations took ');       

x:=0;       

y:=0;       

t1:=GetTickCount();       

for i:=1 to c_nCount do       

begin               

y:=y+BinLog(i);               

y:=((y+1) xor $AFE65903) shl 24;       

end;       

t2:=GetTickCount();       

dt := t2-t1;       

writeln(dt/1000.0, ' s ', dt/c_nCount, ' ms per iteration');       

writeln(x);

end;

 

begin       

main;       

readln;

end.

 

Код на C#

using System;

 

namespace ConsoleApplication1

{        

/// <summary>        

/// Summary description for Class1.        

/// </summary>        

class Class1        

{                  

unsafe static int BinLog(long tValue)                  

{                           

if(tValue == 0)                                     

return -1;                           

for( int i=0; i < sizeof(long)*8 ; ++i)                           

{                                     

long x=tValue >> i;                                     

if((x & 1)==1 && x!=1)                                              

return -1;                                     

if(x==1)                                              

return i;                           

};                           

return -1;                  

}

 

 

                   /// <summary>                  

/// The main entry point for the application.                  

/// </summary>                  

[STAThread]                  

static void Main(string[] args)                   

{                                                     

const int c_nCount=10000000;

 

 

                            System.Console.Write("Making ");                           

System.Console.Write(c_nCount);                            

System.Console.Write(" iterations took ");

 

 

                            int t1=Environment.TickCount;

 

 

                            long x=0, y=0;                           

for(int i=1; i <= c_nCount; ++i)                           

{                                     

x=((x+1) ^ 0xAFE65903) << 24;                                     

y+=BinLog(i);                           

};                           

int t2=Environment.TickCount;                            

int dt=t2-t1;                           

System.Console.Write(((double)dt)/1000.0);                            

System.Console.Write(" s (");                           

System.Console.Write(((double)dt)/c_nCount);                            

System.Console.WriteLine(" ms per iteration)");                           

System.Console.ReadLine();                           

System.Console.WriteLine(x);                   

}        

}

}

 

Были получены следующие результаты

Среда разработки

Среднее время выполнения теста в секундах

Microsoft Visual C++

0.7

Borland Delphi

1.5

Microsoft Visual C#

2.2


 

Наибольшую скорость имеет код, написанный на C++ и скомпилированный с помощью Microsoft Visual C++.

Приложение 2. Руководство пользователя

1.1.1. Введение

Программа «Delay»  предназначена для построения конечных автоматов, обратных (с задержкой) к  заданному НФВП, а также для  вычисления максимальной задержки обратимости  для заданного НФВП. Кроме того, программа позволяет осуществлять моделирование работы НФВП и обратного  ему автомата.

1.1.2. Требования  к системе

Для работы ПО требуется  одна из перечисленных ниже операционных систем:

·   Microsoftв Windows 98™,

·   Microsoftв Windows Me™,

·   Microsoftв Windows NT 4.0™,

·   Microsoftв Windows 2000™,

·   Microsoftв Windows XP™.

Кроме того, необходим  процессор не ниже Intel Pentium II 233 Мгц и не менее 64 Мб оперативной памяти (при работе под Windows 2000/XP не менее 128 Мб).

1.1.3. Работа  с программой

В программе реализован так называемый «многооконный пользовательский интерфейс» – программа имеет  несколько равноправных окон верхнего уровня – такой интерфейс наиболее близко соответствует функциональности данного ПО.

1.1.3.1. Главное  окно приложения

При старте приложения открывается «главное» окно приложения, представляющее собой «мастер» –  стандартный элемент пользовательского  интерфейса, предназначенный для  поэтапного ввода и отображения  данных. «Мастер» представляет собой  окно, в котором в соответствии с нажатием пользователем стандартных  кнопок «Назад», «Далее» и пр., последовательно  отображаются формы с данными.

Главное окно предоставляет  пользовательский интерфейс для  вычисления задержки данного НФВП и  построения обратного автомата. 

 

Рисунок 21 – Ввод данных

Первое окно мастера  предназначено для ввода данных. Окно содержит следующие элементы управления:

1. редактируемое  поле, предназначенное для ввода  пользователем вектора значений  выходной функции НФВП, пользователь  может ввести сюда строку, состоящую  из символов «0» и «1», ввод  прочих символов блокируется;

2. текстовое поле, отображающий количество аргументов  функции, вектор значений которой  содержится в поле 1, количество  аргументов вычисляется автоматически,  при изменении поля 1, исходя из  длины введённого вектора значений  функции; данное поле предназначено  для контроля правильности ввода  пользователем вектора значений  функции: если длина вектора  не равна степени двойки, то  в данном поле появится описание  ошибки, а кнопка «Далее» станет  недоступной; причём сумма числа  аргументов функции и удвоенного  значения верхней границы диапазона  поиска задержки (4) не должна превышать  64;

3. переключатель,  определяющий порядок нумерации  аргументов для вектора значений  функции, нумерация может иметь  порядок xn-1,xn-2,…,x1,x0 или x0,x1,…,xn-2,xn-1;

Информация о работе Защита информации