Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ZIKS.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
163.33 Кб
Скачать

Принципи побудови практичних симетричних шифрів

При синьезі практичних симетричних шифрів використовується 2 загальних принципа:

- розсіювання (вплив одного знаку відкритого тексту на багато знаків шифр тексту) з метою приховати статистичні зв'язки між відкритим текстом і шифр текстом)

- перемішування (зміна місць символів з метою приховання структури тексту)

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

Алгоритм гост 28147-89

Відноситься до блочних алгоритмів (оперує з 64 розрядними блоками тексту) використовує наступні математичні операції:

- додавання за модулем 2

- додавання за модулем 2 в 32 ступені

- операція конкатенації

Алгоритм передбачае наступні режими роботи:

1 шифрування в режимі простої заміни

2 шифрування в режимі гамування

3 шифрування в режимі гамування зі зворотним зв'язком

4 режим перевірки справжньості повідомлення

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

Режим простої заміни використовується підпрограмма для решти режимів і в обмежених випадках для самостійного шифрування невеликих текстів. Алгоритм шифрування наступний:

Початковий блок тексту 64 розряди, ділиться на 2 32 розрядних блоки L R. Потім над цими блоками виконується 32 кроки шифрування, які описуються наступними формулами:

i=1..24

j = (i-1) mod 8

Li = f(Li-1 [+] Kj)(+)Ri-1;Ri = Li-1

i = 25..32

j = 32-i

Li = f(Li-1 [+] Kj)(+)Ri-1;Ri = Li-1

Функція шифрування f виклнує над 32 розрядними документами виконує 2 операції:

1 підстановка 32 розрядний вектор який надходить на вхід розбиваеться на 8 чотирьох розрядних, кожен 4 розрядний вектор вважається двійковим номером рядка в таблиці із 16 4-х розрядних вектора на яких відбуваеться заміна. Після заміни 4-х розрядні вектори знову об'єднуються в 32 розрядні.

2 циклічний зсув в ліво на 11 розрядів 32 розрядного вектора отриманого в результаті попередньої операції.

Режим гамування

В цьому режимі 64 розрядні блоки тексту додаються за модулем 2 64 розрядними блоками гамми, які виробляються в

Режим гамування зі зворотним зв'язком

Побудований так само як і звичайний режим гамування, але константи обчислюються наново за формулою:

Ci =E(S)+Pi

Ci=E(Ci-1)+Pi

Режим перевірки справжньості повідомлення справжністт шифрованого тексту у всіх режимах підтверджується за допомогою звірки ІМІТО встакок. Це k козрядний блок який отримується із початкового повідомлення, або перед шифруванням або в процессі шифрування. Величина к вибираеться відповідно до потрібного рівня захисту (чим більше тим більше рівень захищеності) для отримання вставки текст розбивається на 64 розрядні блоки, перший блок піддається 16 циклам простої заміни з тим самим ключем що використовується для шифрування, до отриманого результату додаеться другий блок тексту, і так далі поки не буде використаний весь плейн текст. Отриманого в результаті 64 розрядного блоку на перед обумовленим чином вибираеться відрізок довжиною к. Іміто вставка передається зразу зашифрованим текстом, на приймальому вузлі після розшифровки тексту з нього за тимже алгоритмом теж отримується іміто вставка і порівнюється з отриманою якщо іміто вставки не співпадають, то повідомлення вважається фальшивим.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]