Алгоритм может применяться в следующих рабочих режимах:
- простая замена;
- гаммирование;
- гаммирование с обратной связью;
- выработка имитовставки.
Для всех четырех режимов применяется одно общее преобразование, которое можно записать в следующем виде:
Li= Rj-i
Ri-Li^efCRi.!, Ki)i = l-31,
где L и R - соответственно левая и правая часть 64-битного блока.
Это преобразование характерно для всех раундов (всего их 32), кроме последнего. Для него преобразование будет иметь вид:
L.-UtSfCR,.,,^) Rj= Rj.j i ^ S2
Для каждого раунда функция f остается неизменной. Перед началом преобразования блок открытого текста разбивается на две 32-битные половины L и R, которые помещаются в два 32-разрядных регистра N{ и N2 соответственно. Также перед началом зашифрования 256-битный ключ, разбитый на восемь частей по 32 бита каждая (К0...К7), помещается в ключевое запоминающееся устройство (КЗУ). Далее содержимое регистра Nt суммируется по модулю 232 с очередным заполнением устройства, а ключевые последовательности выбираются из КЗУ в следующем порядке:
- в раундах с 1-го по 24-й - К0, К1; К2, К3, К4, К5, К6, К7;
- в раундах с 25-го по 32-й - К7, К6, К5, К4, К3, К2, Ки К0.
Полученная битовая последовательность разбивается на восемь блоков по 4 бита в каждом и поступает на вход S-боксов. В них реализуется подстановка, имеющая, например, следующий вид:
7, 10, 13, 1, 0, 8, 9, 15, 14, 4, 6, 12, 4, И, 2, 5, 3
© criptogrof.ru Криптография: защита информации и информационная безопасность Карты сайта: 1 2 3 4
