Розробка підсистеми захисту корпоративної інформаційно-комунікаційної системи організації з використанням криптографічних засобів DES

Автор работы: Пользователь скрыл имя, 07 Мая 2013 в 17:50, курсовая работа

Краткое описание

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

Прикрепленные файлы: 1 файл

курсова робота зіікс2.docx

— 64.53 Кб (Скачать документ)

Алгоритм DES використовує найпростіші операції при шифруванні і роз-шифруванні:

- шифри заміни (підстановки);

- шифри перестановки;

- операції  циклічного зсуву;

- операції  додавання даних за модулем  2.

Алгоритм шифрування даних DES ітераційного типу.

Для розсіювання і перемішування даних (шифрування та розшифрування даних)   у  ньому   використовується  шістнадцять раундів (ітерацій).

Процес шифрування полягає:

- у формуванні 16 раундових ключів для шифрування (розшифрування);

- у початковій  перестановці бітів 64-бітового  блоку даних;

- у шістнадцяти  раундах шифрування (розшифрування);

- у кінцевій перестановці бітів 64-бітового блоку даних.

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

Ключ має  довжину 56 біт (як правило, ключ має довжину 64 біти, де кожний 8-й біт є бітом паритету, крім того, ці контрольні біти можуть бути винесені в останній байт ключа). Ключем може бути довільна 56-бітна комбінація, яка може бути змінена у будь-який момент часу. Частина цих комбінацій вважається слабкими ключами, оскільки може бути легко визначена. Безпечність алгоритму базується на безпечності ключа.

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

1.2 Процеси шифрування та дешифрування в DES

Процес криптографічного перетворення даних в алгоритмі DES включає наступні три основних етапи.

1) 64 біта вхідних даних P підлягають  початковій IP перестановки.

Потім отриманий вектор двійкових даних p0 = IP(P) представляється у вигляді

p0 = L0 || R0,                                                        (1.1)

де L0 - ліва (left) і R0 - права (right) послідовності бітів; || - конкатенація (об’єднання) лівої L0 і правої R0 послідовності бітів.  Послідовності L0 й R0 мають однакову довжину, яка дорівнює 32 бітам.

2) Вектор (послідовність) бітів  p0 = L0 || R0, підлягає перетворюванню  далі шістнад-цять разів за  так називаною схемою Фейстеля.

Ітераційне формування послідовності  бітів здійснюється з використанням  виразу.

Li = Ri-1, Ri = Li-1 F(Ri-1, ki), i = 1, 2…16                           (1.2)

де F – функція Фейстеля, що шифрує; ki - розклад ключів;      - операція побітового додавання по модул. 2.

Зверніть увагу на те, як два  блоки міняються місцями після  проведен-ня 16 раундів шифрування (розшифруван-ня) перед IP-1 перестановкою алгоритму.

В результаті чого формується послі-довність бітів

ps = Rs || Ls.                                                 (1.3)

Ця заміна ніяк не впливає на стійкість  шифру, і користувачі часто задавалися пи-танням: навіщо її взагалі робити? Один зі членів творчого колективу, що розробив DES, затверджував, що вона полегшує апа-ратну реалізацію процедури  шифрування.

3) Послідовність бітів

ps = Rs || Ls                                                (1.4)

підлягають перемішуванню підстановкою IP-1:

C = IP-1(ps) = IP-1(Rs||Ls)                                      (1.5)

C є зашифроване  повідомлення, довжина якого 64 біта. 64 біта вихідних даних pS підлягають кінцевій перестановки IP-1.

1.3 Математична модель створення ключів алгоритму в DES

Як неважко помітити, в кожному  з 16-ти циклів (раундах) використовується нове значення ключа ki (раундового ключа) довжиною 48 біт. Значення раундових ключ ki обчислюється з початкового ключа K, рівного 64-м бітам

Ключ K представляє собою 64-х бітовий блок з 8-ма бітами контролю за пар-ністю, які розташовані в позиціях 08, 16, 24, 32, 40, 48, 56, 64. Ці біти не впливають на шифрування. Перераховані біти ключа відповідають за те, щоб кожен байт ключа складався з непарного числа одиничних біт.

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

Результатом виконання функції G буде перестановка послідовності бітів  ключа K. Ре-зультат перетворення G(K) розбивається на дві половини C0 і D0 по 28 біт кожна.

Перші два рядки визначають, як вибираються біти послідовності  C0 (пер-шим бітом C0 буде 57-й біт ключа шифру, потім 49-й біт та ін., а останніми бітами - 44-й і 36-й біт ключа).

Наступні два рядки визначають, як вибираються біти послідовності D0 (тобто послідовність D0 буде складатися з бітів 63, 55, 47, ..., 12, 4 ключа шифру).

Після формування послідовностей C0 і D0 рекурсивно визначаються по-послідовності Ci і Di для кожного раунду з 16-ти (i = 1 ... 16).

Як випливає з у функції шифрування F використовує раундові ключі ki, який формується з 56-ти бітного ключа, записаного в два 28-ми бітних циклічних ре-гістра зсуву, що переміщують їх зміст вліво  в кожному такті (раунді) на кількість  біт, залежне від номера раунду.

Операції зсуву виконуються  для послідовностей Ci і Di незалежно. Наприклад, послідовність C3 виходить за допомогою циклічного зсуву вліво  на дві позиції послідовності C2, а послідовність D3 - за допомогою  зсуву  вліво на дві позиції  послідовності D2.

Послідовності C16 і D16 виходять з C15 і D15 відповідно за допомогою їх циклічного зсуву вліво на одну позицію.

Ключ ki, що визначається на кожному  кроці ітерації, є результат вибору певних бітів із 56-ти бітової послідовності Ci || Di та їх перестановками. Іншими словами, ключ

ki = H(Ci || Di)                                                      (1.6)

де H - функція, що завершує обробку  ключа довжиною 48 біт.

Результатом виконання функції H буде перестановка.

Як випливає першим бітом раундового ключа ki буде 14-й біт послідовності Ci || Di, другим - 17-й біт, 47-м бітом  раундового ключа ki буде 29-й біт Ci || Di, а 48-м бітом - 32-й біт Ci || Di.

Таким чином, алгоритм формування раундових  ключів шифрування (розшифрування) дозволяє отримати з одного секретного ключа K довжиною 64 біта 16 клю-чів довжиною 48 бітів кожний.


Информация о работе Розробка підсистеми захисту корпоративної інформаційно-комунікаційної системи організації з використанням криптографічних засобів DES