Атаки на системы защиты информации. Алгоритм очереди на основе структуры " Товар"

Автор работы: Пользователь скрыл имя, 01 Октября 2013 в 16:30, курсовая работа

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

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

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

ВВЕДЕНИЕ 3
1. Теоретические основы 5
1.1 Атаки сети, виды и защита 5
1.1.1 Классификация 5
1.1.2 Почтовая бомбардировка 5
1.1.3 Атаки с подбором пароля 6
1.1.4 Вирусы, почтовые черви и "троянские кони" 7
1.1.5 Сетевая разведка 7
1.1.6 Сниффинг пакетов 8
1.1.7 IP-спуфинг 9
1.1.8 Атака на отказ в обслуживании 10
1.1.9 Атаки типа Man-in-the-Middle 12
1.1.10 Использование "дыр" и "багов" в ПО 12
2. Постановка задачи 14
3. Описание программы 15
3.1 Описание данных 15
4. Блок схема 17
5. Руководство пользователя 18
6. Тестирование программы 19
7. ЗАКЛЮЧЕНИЕ 21
8. Список используемой литературы 22

Файлы: 1 файл

Записка к курсовой.docx

— 1.99 Мб (Скачать файл)

for (int i=0; i<20;i++)

{

massStruct[i].nomer=0;

    ZeroMemory(massStruct[i].naim, sizeof(massStruct[i].naim));

ZeroMemory(massStruct[i].edizm, sizeof(massStruct[i].edizm));

massStruct[i].kolvo=0;

    massStruct[i].cena=0;

}

}

//очереди

void BezvCleanStruct()

{

int i;

cout<<"Список товара:\n";

int next = 1;

tovarMass tmpStruct;

for(int i = 0; i < 20; i++)

{

if (massChain[i].nextElement = next)

{

tmpStruct = massChain[i];

cout<<"Номер товара:     |" << tmpStruct.nomer << ";\n";

cout<<"Наименование:     |" << tmpStruct.naim << ";\n";

cout<<"Еденицы измерения:|" << tmpStruct.edizm << ";\n";

cout<<"Количество:       |" << tmpStruct.kolvo << ";\n";

cout<<"Цена:             |" << tmpStruct.cena << ";\n";

cout<<endl;

next = tmpStruct.nextElement;

}

}

for (int i=0; i<20;i++)

{

massChain[i].nomer=0;

    ZeroMemory(massChain[i].naim, sizeof(massChain[i].naim));

ZeroMemory(massChain[i].edizm, sizeof(massChain[i].edizm));

massChain[i].kolvo=0;

    massChain[i].cena=0;

}

}

//с сохранением  в файл массива

void CleanInFileMass()

{

for(int i = 0; i < 20; i++)

    {

      cout<<"Номер товара:     |" << massStruct[i].nomer << ";\n";

      cout<<"Наименование:     |" << massStruct[i].naim << ";\n";

      cout<<"Еденицы измерения:|" << massStruct[i].edizm << ";\n";

      cout<<"Количество:       |" << massStruct[i].kolvo << ";\n";

      cout<<"Цена:             |" << massStruct[i].cena << ";\n";

      cout<<endl;

    }

system("pause");

FILE *f;

f=fopen("CleanTovarOutMass.txt","w");

for(int i = 0; i < 20; i++)

    {

fprintf(f,"%c Номер товара:     |"); fprintf(f,"%i",massStruct[i].nomer);

fprintf(f,"\n");

fprintf(f,"%c Наименование:     |"); fputs(massStruct[i].naim,f);

fprintf(f,"\n ");

fprintf(f,"%c Еденицы измерения:|"); fputs(massStruct[i].edizm,f);

fprintf(f,"\n ");

fprintf(f,"%c Количество:       |"); fprintf(f,"%i",massStruct[i].kolvo);

fprintf(f,"\n ");

fprintf(f,"%c Цена:             |"); fprintf(f,"%i",massStruct[i].cena);

fprintf(f,"\n ");

fprintf(f,"\n ");

}

fclose(f);

for(int i = 0; i < 20; i++)

    {

massStruct[i].nomer=0;

    ZeroMemory(massStruct[i].naim, sizeof(massStruct[i].naim));

ZeroMemory(massStruct[i].edizm, sizeof(massStruct[i].edizm));

massStruct[i].kolvo=0;

    massStruct[i].cena=0;

}

}

//очереди

void CleanInFileStruct()

{

int i;

cout<<"Список товара:\n";

int next = 1;

tovarMass tmpStruct;

for(int i = 0; i < 20; i++)

{

if (massChain[i].nextElement = next)

{

tmpStruct = massChain[i];

cout<<"Номер товара:     |" << tmpStruct.nomer << ";\n";

cout<<"Наименование:     |" << tmpStruct.naim << ";\n";

cout<<"Еденицы измерения:|" << tmpStruct.edizm << ";\n";

cout<<"Количество:       |" << tmpStruct.kolvo << ";\n";

cout<<"Цена:             |" << tmpStruct.cena << ";\n";

cout<<endl;

next = tmpStruct.nextElement; 

}

system("pause");

FILE *f;

f=fopen("CleanTovarOutStruct.txt","w");  

int next = 1;

tovarMass tmpStruct;

for(int i = 0; i < 20; i++)

  {

if (massChain[i].nextElement = next)

{

tmpStruct = massChain[i]; 

fprintf(f,"%c Номер товара:     |"); fprintf(f,"%i",tmpStruct.nomer);

fprintf(f,"\n");

fprintf(f,"%c Наименование:     |"); fputs(tmpStruct.naim,f);

fprintf(f,"\n ");

fprintf(f,"%c Еденицы измерения:|"); fputs(tmpStruct.edizm,f);

fprintf(f,"\n ");

fprintf(f,"%c Количество:       |"); fprintf(f,"%i",tmpStruct.kolvo);

fprintf(f,"\n ");

fprintf(f,"%c Цена:             |"); fprintf(f,"%i",tmpStruct.cena);

fprintf(f,"\n ");

fprintf(f,"\n ");

next = tmpStruct.nextElement;

}

  }

fclose(f);

}

for (int i=0;i<20;i++)

{

massChain[i].nomer=0;

    ZeroMemory(massChain[i].naim, sizeof(massChain[i].naim));

ZeroMemory(massChain[i].edizm, sizeof(massChain[i].edizm));

massChain[i].kolvo=0;

    massChain[i].cena=0;

}

}

//вывод колчиства  элементов массива

void vivodColMass()

{

 int n = sizeof(massStruct)/sizeof(tovarStruct);

 cout << "В массиве " << n << " элементов \n";

 system("pause");

}

//очереди

void vivodColStruct()

{

int n = sizeof(massStruct)/sizeof(tovarStruct);

 cout << "В массиве " << n << " элементов \n";

system("pause");

}

//сдвиг элементов

void sdvig()

{

if (choise)

{

sdvigMass();

}

else

{

sdvigStruct();

}

}

//массива

void sdvigMass()

{

while(massStruct[0].nomer == 0)

{

  for(int i = 0; i < sizeof(massStruct)/sizeof(tovarStruct) - 1; i++)

  {

   massStruct[i].nomer = massStruct[i + 1].nomer;  

   strcpy(massStruct[i].naim, massStruct[i + 1].naim);

   strcpy(massStruct[i].edizm, massStruct[i + 1].edizm);

   massStruct[i].kolvo = massStruct[i + 1].kolvo;

   massStruct[i].cena = massStruct[i + 1].cena;

  }

}

}

//очереди

void sdvigStruct()

while(massChain[0].nomer == 0)

{

  for(int i = 0; i < sizeof(massStruct)/sizeof(tovarStruct) - 1; i++)

  {

   massChain[i].nomer = massChain[i + 1].nomer;  

   strcpy(massChain[i].naim, massChain[i + 1].naim);

   strcpy(massChain[i].edizm, massChain[i + 1].edizm);

   massChain[i].kolvo = massChain[i + 1].kolvo;

   massChain[i].cena = massChain[i + 1].cena;

  }

}

}


Информация о работе Атаки на системы защиты информации. Алгоритм очереди на основе структуры " Товар"