Мережа Файстеля
Мережа Файстеля (конструкція Файстеля) — різновид блочного шифру з певною ітеративною структурою. Багато сучасних алгоритмів використовують мережу Файстеля як основу.
Історія
В 1973 році Горст Файстель (Шаблон:Lang-en) в журналі Scientific American опублікував статтю «Криптографія і комп'ютерна безпека»(«Cryptography and Computer Privacy»), в якій розкрив деякі важливі аспекти шифрування, а також ввів конструкцію, названу пізніше мережею Файстеля. Ця схема була використана в проєкті Lucifer фірми IBM, над яким працював Файстель і Дон Коперсміт (Don Coppersmith). Цей проєкт був скоріше експериментальним, але став базисом для DES. Ітеративна структура алгоритму дозволяла спростити його реалізацію в апаратному середовищі.
Конструкція
![]() |
![]() |
- блок відкритого тексту ділиться на 2 рівні частини (
- в кожному раунді вираховується ( — номер раунду)
,
де — деяка функція, а — ключ -го раунду. Результатом виконання раундів є . Але зазвичай в -му раунді перестановка і не виконуються, що дозволяє використовувати ту ж процедуру і для розшифрування, просто інвертувавши порядок використання раундової ключової інформації:
,
Невеликі зміни дозволяють досягнути повної ідентичності процедур шифрування та розшифрування. Одною із переваг такої моделі є застосовність алгоритму незалежно від функції , і вона може бути довільної складності.
Модифікації мережі Файстеля
При великому розмірі блоків шифрування (128 біт і більше) реалізація такої мережі Файстеля на 32-розрядних архітектурах може викликати складнощі, тому використовуються модифіковані варіанти цієї конструкції. У звичайних ситуаціях використовуються мережі з 4 гілками. На малюнку показано найбільш розповсюджені модифікації. Також існують схеми, в яких довжини половинок і не збігаються. Вони називаються незбалансованими.
- Модифікації мережі Файстеля
-
Тип 1 -
Тип 2 -
Тип 3
Шифри на основі мережі Файстеля
Такі шифри використовують класичну або модифіковану мережу Файстеля у своїй основі:
- Blowfish
- Camellia
- CAST
- DES
- FEAL
- ГОСТ 28147-89
- KASUMI
- LOKI97
- Lucifer
- MacGuffin
- MARS
- MAGENTA
- MISTY1
- RC2
- RC5
- RC6
- Skipjack
- TEA
- Triple DES
- Twofish
- XTEA
Посилання
Шаблон:Crypto-stub
Шаблон:Refimprove
Шаблон:Крипто навігація
Шаблон:Блочні алгоритми шифрування

