20964

Шифрування та дешифрування даних за допомогою алгоритмів гамування

Практическая работа

Информатика, кибернетика и программирование

Індивідуальні завдання : конгруэнтные генераторы Линейными конгруэнтными генераторами являются генераторы следующей формы: в которых это nый член последовательности а предыдущий член последовательности. Период такого генератора не больше чем m. Если a b и m подобраны правильно то генератор будет генератором с максимальным периодом и его период будет равен m. Например для линейного конгруэнтного генератора b должно быть взаимно простым с m.

Украинкский

2013-08-01

30.38 KB

16 чел.

Родін С КІТ-39

Практична робота №2-4

“Шифрування та дешифрування даних за допомогою

алгоритмів гамування”

Ціль роботи :cтворення програм для шифрування та дешифрування інформації за допомогою шифрів підстановки.

Постановка задачі

Необхідно розробити і налагодити дві програми:

Програма шифрування інформації з використанням визначених алгоритмів.

У якості інформації використовувати копію файлу з розробленою програмою.

Програма дешифрування інформації (повернення початкового вигляду файла); а також оцінити правильність процедури “шифрування – дешифрування” (відсутність зміни результату відносно початкового файлу).

Індивідуальні завдання : конгруэнтные генераторы

Линейными конгруэнтными генераторами являются генераторы следующей формы:

в которых - это n-ый член последовательности, а - предыдущий член последовательности. Переменные a, b и m – постоянные: а – множитель, b – инкремент и m – модуль. Ключом или затравкой служит значение .

Период такого генератора не больше, чем m. Если a, b и m подобраны правильно, то генератор будет генератором с максимальным периодом, и его период будет равен m. (Например, для линейного конгруэнтного генератора b должно быть взаимно простым с m).

В [Таблица 1] из [13] приведены хорошие константы линейных конгруэнтных генераторов, которые обеспечивают максимальный период.

Если инкремент b равен нулю, то есть генератор имеет вид

,

и мы получим самую простую последовательность, которую можно предложить для генератора с равномерным распределением. При соответствующем выборе констант a = 7= 16807 и m = 2311 = 2147483647 мы получим генератор с максимальным периодом повторения. Эти константы были предложены учеными Парком и Миллером, поэтому генератор  вида

называется генератором Парка-Миллера.

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

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

Квадратичный конгруэнтный генератор  имеет вид:

Кубический конгруэнтный генератор  задается как:

Для увеличения размера периода повторения конгруэнтных генераторов часто используют их объединение [13]. При этом криптографическая безопасность не уменьшается, но такие генераторы обладают лучшими характеристиками в некоторых статистических тестах.

Пример такого объединения для 32-х битовой архитектуры может быть реализован так:

 // Long должно быть 32-х битовым целым

 static long s1 = 1;

 static long s2 = 1;

 // MODMULT рассчитывает s*b mod m при  условии что m = a*b+c и 0<=c<m

 #define MODMULT(a,b,c,m,s) q = s/a; s = b*(s-a*q)-c*q; if (s<0) s+=m;

double combinedLCG (void)

 {

   long q;

   long z;

   MODMULT (53668, 40014, 12211, 2147483563L, s1)

   MODMULT (52774, 40692, 3791, 2147483399L, s2)

   z = s1 - s2;

   if (z<1)

     z += 2147483562;

   return z*4.656613e-10;

 }

void InitLCG (long InitS1, long InitS2)

 {

   s1 = InitS1;

   s2 = InitS2;

 }

Висновок: розглянув алгоритми Шифрування та дешифрування даних за допомогою алгоритмів гамування


 

А также другие работы, которые могут Вас заинтересовать

7059. Медиасследования как новый инструмент маркетинга 65.2 KB
  Введение Актуальность исследования. В настоящее время большинство компаний в той или иной форме регулярно осуществляют рыночные исследования. Содержание понятия маркетинг определяется стоящими перед ним задачами. С момента появления и до наших дней ...
7060. Качество программного продукта 73 KB
  Качество программного продукта Любой программный продукт должен выполнять те функции, для которых был создан. Качественный ПП должен обладать еще рядом свойств, позволяющих успешно его использовать в течение продолжительного времени. Качество
7061. Life is life. Can money make a man happy 59 KB
  Тема : Life is life. Can money make a man happy Мета: Практична : Навчити учнів працювати цілим класом, щоб досягнути спільної мети. Розвиваюча: вдосконалити лексичні навички. Виховна: допомогти учням зрозуміти, що гроші це не головне в житті....
7062. Программирование постоянного запоминающего устройства 142.5 KB
  Программирование постоянного запоминающего устройства Программирование ПЗУ осуществляется с целью задания работы микропрограммного автомата с помощью закодированной микропрограммы его работы. Этот этап используется в дальнейшем для прошивки...
7063. Социальное пространство воспитательного процесса. Семейное воспитание 68.42 KB
  Социальное пространство воспитательного процесса. Семейное воспитание 1 Понятие социального пространства Воспитательный процесс разворачивается в социуме, имеющем свои пространственные рамки. Социальное пространство - это совокупность социальны...
7064. Процессы происходящие в металлах при сварке 72.5 KB
  Сварочная металлургия отличается от других металлургических процессов высокими температурами термического цикла и малым временем существования сварочной ванны в жидком состоянии, т. е. в состоянии, доступном для металлургической обработки м...
7065. Разработка модуля информационной системы Амортизация оборудования 79.5 KB
  Разработка модуля информационной системы Амортизация оборудования Цель лабораторной работы: приобретение практических навыков создания пользовательских форм для разработки модуля информационной системы Амортизация оборудования. Краткие теоретическ...
7066. Шлицевые соединения 65.5 KB
  Шлицевые соединения Шлицевым называется разъемное соединение составных частей изделия с применением пазов (шлицев) и выступов. Шлицевые соединения бывают подвижные и неподвижные. Детали шлицевого соединения (вал и втулка) показаны на рисунке.. Шлице...
7067. Определение основных показателей погрешности вольтметра 46.53 KB
  Определение основных показателей погрешности вольтметра 1. Цели работы: - ознакомление с принципами измерений напряжений в электрических цепях - приобретение навыков по установлению рабочих метрологических характеристик прибора при измерении ...