У нас: 141825 рефератів
Щойно додані Реферати Тор 100
Скористайтеся пошуком, наприклад Реферат        Грубий пошук Точний пошук
Вхід в абонемент


він надійним. Дослідження його надійності й спосо-бів зламування триває.

Перевага алгоритму IDEA, яка посилює його стійкість до зламування, така: він використовує три суттєво відмінні операції - підсумовування за модулем 2, додавання за модулем 216, множення за модулем 216+ 1.

Під час шифрування алгоритмом IDEA використовують 52 під ключі (68 + 4 = 52)

по 16 бітів кожен, а саме: шість підключів у кожному із восьми циклів

(і = 1, ...,8) та чотири підключі у завершальному перетворенні. Підключі

утворюють з 128-бітового базового ключа так:

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

У кожному циклі виконують такі операції: порозрядне підсумовування за модулем 2, додавання за модулем 216, множення за модулем 216 + 1.

Шифрування алгоритмом IDEA відбувається так (рис. 2.8, 2.9):*

64-бітовий вхідний блок даних ділять на чотири 16-бітові під блоки:

дані передають у перший цикл і перетворюють з використанням підключів результат роботи (i-1)-го (i = 2, 3, ..., 8) циклу передають на вхід і-го циклу й перетворюють за допомогою підключів результат перетворення у восьмому циклі піддають завершальному перетворенню з підключами, а об'єднання кінцевих блоківстановить блок шифрограми.

ДР Дешифрування в алгоритмі IDEA відбувається так (рис. 2.10):*

64-бітовий блок шифрограми (аналогічно як у випадку шифрування) ділять на чотири підблоки і початково перетворюють з використанням ключів {(Z1(9))-1

Позначенняозначають, що відшукують обернені числа щодо множення за модулемвідповідно. Вирази -означають відшукання обернених чисел щодо додавання за модулем 216 для. відповідно,Для цього досить виконати порозрядну інверсію

потім результат перетворюють у наступних восьми циклах дешифрування з
номером і (і- 1.2, ..., 8) із використанням підключів блок розшифрованої інформації - це сукупність бітів послідовних чотирьох
підблоків після восьмого циклу.

Зазначимо, що той самий електронний пристрій можна використати для шиф-рування й дешифрування. Лише логічний поділ на цикли є дещо іншим: спочатку вико-нується початкова операція, яка відповідає кінцевій операції шифрування, а потім вісім циклів, кожен з них починається з операції додавання за модулем 2.

Певним недоліком алгоритму IDEA (щодо нижче поданого) можна вважати не-можливість зміни таких параметрів, як довжина ключа й довжина блока шифрування.

Алгоритм RC5

RC5 є одним із найновіших алгоритмів, який запропонував Р.Райвест у 1994 р. Цей алгоритм використовує такі самі методи, як і алгоритми DES та IDEA. У цьому випадку, проте, можливий ширший вибір кількості виконуваних циклів (від 1 до 255), розміру блоків, які шифрують (32, 64 або 128 бітів), та довжини ключа (від 1 до 255 бай-тів). У подальших розглядах ці параметри позначені так: 2w - розмір шифрованих бло-ків; r - кількість виконуваних циклів; b - довжина ключа в байтах.

Стандартними значеннями є w = 32, r = 12, b - 16.

Основу алгоритму становлять три операції: додавання за модулем 2w (позначено символом +), сума за модулем 2 послідовностей довжини w (позначено символом ) та циклічний зсув ліворуч на задану кількість позицій (X <<< Y означає циклічний зсув ліворуч послідовності X на У позицій). Наявна тут певна непорівняльність викорис-товуваних операцій, без сумніву, значно підвищує, як і в алгоритмі IDEA, безпеку шиф-ру. Відрізняє алгоритм RC5 від інших алгоритмів використання циклічних зсувів на різну кількість позицій.

Робота алгоритму. З головного ключа утворюється набір підключів S[0], S[1], ..., їх отримують з головного ключа за допомогою лінійних конгруенцій з певними сталими а потім модифікують на трьох етапах за допомогою циклічних зсувів і додавань за модулем 2w. Ці підключі послідовно використо-вують для перетворень вхідних даних. Спочатку вхідний блок, який шифрують, розділяють на два під блоки Тоді під ключ К[0] додають за модулем 2w з підблоком А, а підключ K[1] - з підблоком В. Потім над A і В виконують r разів такі операції:

Вихідні послідовності А та В і-то (i= 1, 2, ..., r-1) циклу передаються до наступ-ного (i+1)-го циклу, а після останнього r-го циклу вони становлять вихідний блок перетворення.

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

Перевагою описаного алгоритму є висока швидкість виконання.

Зазначимо, що 1997 р. фірма RSA Data Security оголосила конкурс на розкриття алгоритму RC5; 40-бітовий ключ було розкрито через 3,5 год після початку конкурсу. Ятя цього вистачило локальної мережі з 250 машин в університеті Берклі (США); 48-бітовий ключ зламано через 313 год. Отже, для цього алгоритму треба використовувати значно довші ключі.

Алгоритм RC6

RC6 - один із найновіших алгоритмів, розроблених компанією RSA Data Security. У ньому використано ті ж підходи, що й в алгоритмі RC5. У цьому випадку, проте, додатково застосовують операцію множення за модулем 2W.

Алгоритм RC6 є повністю параметризованим алгоритмом шифрування. Конкрет-ну версію RC6 позначають RC6-w/r/b, де w - довжина в бітах блоків, над якими вико-нують операції; r - кількість циклів шифрування; b - довжина ключа в байтах.

Шифрування.

Вхід: підблоки А, В, С, D (по w бітів кожний) отримують унаслідок поділу вхід-ного блока. Кількість виконуваних циклів дорівнює r. Набір підключів S[0], S[l], ..., S[2r + 3] налічує 2r + 4 w-бітових слів.

Кожен цикл виконує такі операції: додавання за модулем 2, додавання


Сторінки: 1 2 3 4 5