СИМЕТРИЧНІ ШИФРИ
Схема Фсйстсля
Сучасні блокові шифри часто будуються на базі багаторазового повторення деякого набору операцій перетворення, які називаються раундом шифрування.
У кожному раунді використовується деяка частина ключа, звана раундовим ключем. Порядок генерації та використання раундо- вих ключів називається розкладом використання ключа шифрування.
У загальному вигляді подібне итеративное перетворення може бути описано наступною формулою:
де Е - раундова функція шифрування, б, - вихідний блок, б, _! - вхідний блок для i -го раунду, А ", - ключ, який використовується на 1 -му раунді; i = l ... N, де N - число раундів. Перетворення Е має бути оборотно. Нехай D - раундова функція дешифрування. Тоді раунд зворотного перетворення описує формула:
Тут треба звернути увагу на розклад використання ключів в разі прямого і зворотного перетворення. Так, в першому раунді при шифруванні буде використовуватися перший раундовий ключ, а в першому раунді при розшифрування - останній.
Для розробки ітераційних блокових шифрів широко використовується схема, запропонована на початку 1970-х років Хорстом Фейсте- лем (Horst Feistel). Дана схема, також звана мережею Фейетеля, наведена на рис. 2.2. Її перевага полягає в гом, що вона дозволяє використовувати будь-які (в тому числі необоротні) функції F для реалізації оборотних шифруючих перетворень.
Вхідний блок повідомлення розбивається на два рівних по довжині напівблоки: лівий L і правий R.

Мал. 2.2. Пряме перетворення за схемою Фейстеля
Пряме перетворення здійснюється у відповідності з наступними співвідношеннями:
де ф - операція побітного складання по модулю 2 (в табл. 2.1 наведено її визначення). Тоді вихідний блок даних - otoIq I Rq, а L n I R n - це вихідний блок даних.
Операція складання але модулю 2
Таблиця 2.1
X |
Y |
X © Y |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
Як видно з табл. 2.1, для всіх можливих значень операндів виконується співвідношення: (X © Y) © Y = X. Саме це властивість і дозволяє при перетворенні використовувати в числі інших незворотні функції F і, незважаючи на це, мати можливість провести зворотне перетворення. Зворотне перетворення за схемою Фсй- стеля представлено на рис. 2.3 і описується формулами:


Мал. 2.3. Зворотне перетворення за схемою Фейстеля