Защита информации Энергетической компании (KEGOC)

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

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 28.04.2015
Размер файла 2,0 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

int t = Convert.ToInt32(text);

return Convert.ToByte(replacement[t]);

}

// обратная операция PHT (Pseudo Hadamard Transform)

private byte[] IPHT(byte x1, byte x2)

{

int intX1 = Convert.ToInt32(x1);

int intX2 = Convert.ToInt32(x2);

int diff1 = -intX1 + 2 * intX2;

if (diff1 < 0)

diff1 += 256;

int diff2 = intX1 - intX2;

if (diff2 < 0)

diff2 += 256;

int intY1 = diff1 % 256;

int intY2 = diff2 % 256;

byte[] b = new byte[2];

b[1] = Convert.ToByte(intY1);

b[0] = Convert.ToByte(intY2);

return b;

}

// операция PHT (Pseudo Hadamard Transform)

private byte[] PHT(byte x1, byte x2)

{

int intX1 = Convert.ToInt32(x1);

int intX2 = Convert.ToInt32(x2);

int intY1 = (2 * intX1 + intX2) % 256;

int intY2 = (intX1 + intX2) % 256;

byte[] b = new byte[2];

b[0] = Convert.ToByte(intY1);

b[1] = Convert.ToByte(intY2);

return b;

}

public byte[] execPHTStage(byte[] x, int round)

{

byte[] b = new byte[8];

byte[] temp = new byte[2];

temp = this.PHT(x[0], x[1]);

if (round != 0)

{

b[0] = temp[0];

b[4] = temp[1];

}

else

{

Array.Copy(temp, 0, b, 0, 2);

}

temp = this.PHT(x[2], x[3]);

if (round != 0)

{

b[1] = temp[0];

b[5] = temp[1];

}

else

{

Array.Copy(temp, 0, b, 2, 2);

}

temp = this.PHT(x[4], x[5]);

if (round != 0)

{

b[2] = temp[0];

b[6] = temp[1];

}

else

{

Array.Copy(temp, 0, b, 4, 2);

}

temp = this.PHT(x[6], x[7]);

if (round != 0)

{

b[3] = temp[0];

b[7] = temp[1];

}

else

{

Array.Copy(temp, 0, b, 6, 2);

}

return b;

}

public byte[] execIPHTStage(byte[] x, int round)

{

byte[] b = new byte[8];

byte[] temp = new byte[2];

temp = this.IPHT(x[0], x[1]);

if (round != 0)

{

b[0] = temp[0];

b[2] = temp[1];

}

else

Array.Copy(temp, 0, b, 0, 2);

temp = this.IPHT(x[2], x[3]);

if (round != 0)

{

b[4] = temp[0];

b[6] = temp[1];

}

else

Array.Copy(temp, 0, b, 2, 2);

temp = this.IPHT(x[4], x[5]);

if (round != 0)

{

b[1] = temp[0];

b[3] = temp[1];

}

else

Array.Copy(temp, 0, b, 4, 2);

temp = this.IPHT(x[6], x[7]);

if (round != 0)

{

b[5] = temp[0];

b[7] = temp[1];

}

else

Array.Copy(temp, 0, b, 6, 2);

return b;

}

// шифрование SAFER K-64

public byte[] encrypt()

{

int sourceLength = this.GetTextBlockLength(this.Text);

byte[] key = Encoding.Default.GetBytes( this.Key );

byte[] bigKey;

byte[] bigKey2;

byte[] sourceBlock = new byte[8];

byte[] result = new byte[sourceLength * 8];

for (int round = 0; round < this.Round; round++)

{

int r = 0;

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

{

sourceBlock = this.GetTextBlock8Byte(this.Text, i);

// улучшение ключа шифрования

bigKey = this.GetKey(2 * (i + 1) - 1, key);

bigKey2 = this.GetKey(2 * (i + 1), key);

for (int j = 0; j < sourceBlock.Length; j++)

{

switch (j + 1)

{

case 1:

case 4:

case 5:

case 8:

result[r] = this.XOR(sourceBlock[j], bigKey[j]);

result[r] = this.E(result[r]);

result[r] = this.Mod256(result[r], bigKey2[j]);

break;

default:

result[r] = this.Mod256(sourceBlock[j], bigKey[j]);

result[r] = this.L(result[r]);

result[r] = this.XOR(result[r], bigKey2[j]);

break;

}

r++;

}

byte[] temp = new byte[8];

Array.Copy(result, r - 8, temp, 0, 8);

temp = this.execPHTStage(temp, 1);

temp = this.execPHTStage(temp, 2);

temp = this.execPHTStage(temp, 0);

Array.Copy(temp, 0, result, r - 8, 8);

}

}

return result;

}

// дешифрование SAFER K-64

public byte[] decrypt()

{

int sourceLength = this.GetTextBlockLength(this.Text);

byte[] key = Encoding.Default.GetBytes(this.Key);

byte[] bigKey;

byte[] bigKey2;

byte[] sourceBlock = new byte[8];

byte[] result = new byte[sourceLength * 8];

for (int round = 0; round < this.Round; round++)

{

int r = 0;

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

{

sourceBlock = this.GetTextBlock8Byte(this.Text, i);

byte[] temp = new byte[8];

Array.Copy(sourceBlock, 0, temp, 0, 8);

temp = this.execIPHTStage(sourceBlock, 1);

temp = this.execIPHTStage(temp, 2);

temp = this.execIPHTStage(temp, 0);

Array.Copy(temp, 0, result, r, 8);

bigKey2 = this.GetKey(2 * (i + 1) - 1, key);

bigKey = this.GetKey(2 * (i + 1), key);

for (int j = 0; j < sourceBlock.Length; j++)

{

switch (j + 1)

{

case 1:

case 4:

case 5:

case 8:

result[r] = this.DiffMod256(result[r], bigKey2[j]);

result[r] = this.L(result[r]);

result[r] = this.XOR(result[r], bigKey[j]);

break;

default:

result[r] = this.XOR(result[r], bigKey2[j]);

result[r] = this.E(result[r]);

result[r] = this.DiffMod256(result[r], bigKey[j]);

break;

}

r++;

}

}

}

return result;

}

}

}

using System;

using System.Collections.Generic;

using System.Windows.Forms;

namespace WindowsApplication1

{

static class Program

{

/// <summary>

/// Главная входная точка для приложения

/// </summary>

[STAThread]

static void Main()

{

Application.EnableVisualStyles();

Application.SetCompatibleTextRenderingDefault(false);

Application.Run(new Form1());

}

}

}

Размещено на Allbest.ru


Подобные документы

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

    курсовая работа [72,9 K], добавлен 22.02.2012

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

    дипломная работа [1,9 M], добавлен 05.11.2016

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

    курсовая работа [435,1 K], добавлен 29.11.2014

  • Проблемы защиты информации человеком и обществом. Использование информации. Организация информации. Угроза информации. Вирусы, характеристика и классификация. Проблемы защиты информации в Интернете. Анализ и характеристики способов защиты информации.

    реферат [36,5 K], добавлен 17.06.2008

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

    курсовая работа [469,6 K], добавлен 13.12.2015

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

    статья [61,8 K], добавлен 25.11.2011

  • Понятие защиты умышленных угроз целостности информации в компьютерных сетях. Характеристика угроз безопасности информации: компрометация, нарушение обслуживания. Характеристика ООО НПО "Мехинструмент", основные способы и методы защиты информации.

    дипломная работа [135,3 K], добавлен 16.06.2012

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

    курсовая работа [1,1 M], добавлен 21.04.2015

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

    дипломная работа [474,0 K], добавлен 19.10.2011

  • Нормативно-правовые акты по защите информации в АС ГРН. Нормативно-технические акты, обеспечивающие защиту информации в АС ГРН. Требования к средствам защиты информации. Выбор средств защиты информации от несанкционированного доступа.

    реферат [16,1 K], добавлен 23.03.2004

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.