Учбово-методичний посібник для виконання лабораторних робіт з дисципліни „Основи теорії криптографії і криптоаналізу”, страница 26

Основною ідеєю кореляційного розкриття є виявлення деякої кореляції між виходом генератора і виходом однієї з його складових частин. Тоді, спостерігаючи вихідну послідовність, можна одержати інформацію про цей проміжний вихід. Використовуючи цю інформацію й інші кореляції, можна збирати дані про інші проміжні виходи доти, поки генератор не буде зламаний.

Проти багатьох генераторів потоків ключів на базі РЗЛЗЗ успішно використовувалися кореляційні розкриття і їхні варіації, такі як швидкі кореляційні розкриття, що пропонують компроміс між обчислювальною складністю й ефективністю

1.5.8.  Інші розкриття

Існують і інші способи розкриття генераторів потоків ключів. Тест на лінійну коректність (linear consistency) намагається знайти деяку підмножину ключа шифрування за допомогою матричної техніки. Існує і розкриття коректності "зустріччю в середині" (meet-in-the-middle consistency attack). Алгоритм лінійного синдрому (linear syndrome algorithm) заснований на можливості записати фрагмент вихідної послідовності у виді лінійного рівняння. Існує розкриття найкращим афінним наближенням (best affine approximation attack) і розкриття виведеною пропозицією (derived sequence attack). До потокових шифрів можна застосувати також методи диференціального і лінійного криптоаналізу.

1.5.9.  Адитивні генератори

Адитивні генератори (іноді називані запізнілими генераторами Фібоначчі) дуже ефективні, тому що їхнім результатом є випадкові слова, а не випадкові біти. Самі по собі вони небезпечні, але їх можна використовувати як складені блоки для безпечних генераторів.

Початковий стан генератора являє собою масив n-бітових слів( найчастіше n кратний 8): X1, X2, …, Xm... Цей первісний стан і є ключем, кожне наступне слово генератора виходить як

Xi = (Xi – a+Xi – b+Xi – c+…+Xi–m)mod2n

При правильному виборі коефіцієнтів a, b, з,..., mперіод цього генератора не менше 2n-1. Одним з вимог до коефіцієнтів є те, що молодший значущий біт утворить РЗЛЗЗ максимальної довжини. [5]

Наприклад, (55,24,0) – це примітивний поліном по модулю 2 з таблиці 5.2. Це означає, що довжина наступного адитивного генератора максимальна.

Xi = (Xi – 55+Xi – 24) mod 2n

Це працює, тому що в примітивного полінома три коефіцієнти. Якби їх було більше, для одержання максимальної довжини потрібні були б додаткові умови. [2]


Частина II. Криптографія

2.1.  Лабораторна робота № 1. Одиночна перестановка по ключу, подвійна перестановка по ключу, шифр решіток, магічні квадрати.

Тема роботи: Одиночна перестановка по ключу, подвійна перестановка по ключу, шифр решіток, магічні квадрати.

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

Загальні відомості

В даній роботі ми познайомимось із найпростішими шифрами перестановками. Це ручні шифри може використовувати широке коло людей. Ці види шифрів мають дуже малу крипостійкість, тому використовуються в поєднанні з більш новими шифрами.

Теоретичні відомості

1. Одиночна перестановка по ключу.

У даному методі шифрування як ключ використовується слово. Пронумерувавши букви які складають слово у алфавітному порядку, і розташувавши їх після цього у порядку зростання, одержуємо шифровану фразу.

Використавши у виді ключа слово порядки одержимо таблицю.

П

О

Р

Я

Д

К

И

Д

И

К

О

П

Р

Я

5

4

6

7

1

3

2

1

2

3

4

5

6

7

Р

Ю

О

К

Н

Е

Р

Н

Р

Е

Ю

Р

О

К

О

Т

Е

О

Я

Т

Е

Я

Е

Т

Т

О

Е

О

З

Ь

К

Р

И

С

С

И

Ь

З

К

Р

Р

С

Т

И

Е

Ч

У

Е

У

Ч

С

Р

Т

И

О

Я

И

С

Н

Н

Р

Н

Р

Н

Я

О

И

С

Б

Т

Е

И

С

Е

С

И

Б

Т

Л

П

В

А

Р

Х

І

Р

І

Х

П

Л

В

А

Я

Р

И

Н

Г

В

Г

В

Р

Я

И

Н

До перестановки.

Після перестановки.

У верхньому рядку таблиці записаний ключ, а під ключем – номера відповідних букв ключа в алфавіті. Якщо в ключі зустрілися однакові букви, вони нумерувалися зліва на право. Виходить шифровка[2]:

НРЕЮР ОКЯЕТ ТОЕО_ СИЬЗК РЕУЧС РТИНР НЯОИС ЕСИ_Б _ТРІХ ПЛВАГ В_РЯИН. [1]

2) Шифрування подвійною перестановкою ключів.

Для додаткової скритності шифру одиночної перестановки можна повторно шифрувати повідомлення, які вже були зашифровані. Цей спосіб відомий під назвою подвійна перестановка. Для цього роз­мір таблиці підбирають так, щоб довжина її рядків і стовпців була іншою, ніж у першій таблиці. Найкраще, якщо вони будуть взаємно простими. Крім того, в першій таблиці можна переставляти стовпці, а в іншій рядки. Можна заповнювати таблицю зиґзаґом, змійкою, по спіралі, або якимсь іншим способом. Такі способи заповнення таблиці не підсилюють стійкість шифру, але роблять процес шифрування набагато більш цікавим[4].

У таблицю вписується текст і переставляються стовпці, а потім рядки. При розшифровці порядок перестановок зворотний. Наскільки просто виконується це шифрування показує наступний приклад: