На 10-й представлена блок-схема одного этапа FEAL. В качестве входа процесса шифрования используется 64-битовый блок открытого текста. Сначала блок данных подвергается операции XOR с 64 битами ключа. 3 а-
тем блок данных расщепляется не левую и правую половины. Объединение левой и правой половин с помощью XOR образует новую правую половину. Левая половина и новая правая половина проходят через п этапов (первоначально четыре). На каждом этапе правая половина объединяется с помощью функции f с шестнадцатью битами ключа и с помощью XOR - с левой половиной, создавая новую правую половину. Исходная правая п о-ловина (на начало этапа) становится новой левой половиной. После п этапов (не забывайте, что левая и правая половины не переставляются после n-го этапа) левая половина снова объединяется с помощью XOR с правой половиной, образуя новую правую половину, затем левая и правая соединяются вместе в 64-битовое целое. Блок данных объединяется с помощью XOR с другими 64 битами ключа, и алгоритм завершается.
32 бита
Lo{Re}
Ь {Ri} |
Lo{R8}
Открытый текст 64 бита i-
64 бита
(Кв. Кэ, Ко, Ки)
{(Kl2, Kl3, Kl4, Kb)}
—32 бита
*ф Ro{Le}
Ко {К/}
Ro{U}
Ki {/-/} |
К {Ke}
L7 {Ri}|
f
— Ki {Ко} RAU)
Rb{L0}
>Ф
LB{R0}
Ж 64 бита
( K12 , K13 , K14 , Kb)
{(Kb, Kb, Ко, Kii)}
Шифротекст
(V Дешифрирование