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;

 }

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


 

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

60708. Твой ближний 55 KB
  Психологический настрой Подари улыбку на доске картинка Улыбка звучит песня Улыбка из альбома Детские песни Здравствуйте ребята Прежде чем начать урок создадим себе и друг другу хорошее настроение.
60710. Козацькі розваги 53.49 KB
  Спортивний майданчик Ведучі два юнаки в національному одязі. Наперед виходять двоє ведучих у національному одязі 1й юнак. 2й юнак.
60711. Комбинаторика. Комбинаторные задачи 323.5 KB
  Показать решение некоторых комбинаторных задач. Ход урока: а объяснение материала; б закрепление материала решение задач. Из скольких вариантов завтрака Вова может выбирать Решение.
60712. ЕВОЛЮЦІЙНЕ ВЧЕННЯ 692 KB
  Кожне завдання містить парну кількість тестів чи запитань тому їх можна розділити на два варіанти: І варіант парні запитання ІІ варіант непарні. Також дані тестові завдання можна перевести у формат програми...
60713. Конкретный смысл деления 75.5 KB
  Цель. Закрепление двух видов деления: по содержанию и на равные части. Задачи урока: 1. Предметные: повторить конкретный смысл умножения; формировать навык устного и письменного вычисления в пределах 100;
60714. Конкурс ерудитів 83.5 KB
  Відповідь дається усно: учасник має право на 5 спроб. Оцінювання відбувається так: якщо відповідь дана з першої спроби 5 балів із другий 4 бали із третьої 3 з четвертої 2 з пятої 1 бал. Відповідь: російське.
60715. Содержание и объем понятия 2.21 MB
  Цель: дать понятие учащимся представления о содержании и объеме понятия Задачи: сформировать у учащихся представления о содержании и объеме понятия, о единичных и общих понятиях; актуализировать и углубить знания о возможностях создания компьютерной деловой графики.
60716. Музичні спогади про літо 272.5 KB
  Музику потрібно слухати в тиші, уважно, як це роблять всі великі музиканти. Композитор Роберт Шуман у своєму «Альбомі для юнацтва» запропонував «Правила для юних музикантів»