Защита информации Энергетической компании (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