18
части - подблоки N1 и N2.
Если размеры частей равны, такую архитектуру
называют классической или сбалансированной сетью Фейстеля. Если части N1
и N2 не равны, то алгоритм называют разбалансированной сетью Фейстеля.
Все раунды обработки проходят по одной и той же схеме. Сначала
выполняется операция подстановки. Она
заключается в применении к
подблоку N2 некоторой функции F использующей значение ключа, и
последующем сложении полученного результата с подблоком N1 с помощью
логической операции XOR. Для всех раундов функция раунда имеет одну и ту
же структуру, но зависит от параметра — подключа раунда. Подключи раундов
отличаются от общего ключа и друг от друга и вычисляются на основе общего
ключа
К. После подстановки
выполняется перестановка, представляющая
собой обмен местами двух половин блока данных.
Результат i-го раунда определяется по результату предыдущего раунда:
{
𝑁1(𝑖 + 1) = 𝑁2(𝑖)
𝑁2(𝑖 + 1) = 𝑁1(𝑖) ⊕ 𝐹(𝑁2(𝑖), 𝐾(𝑖))
(1-1)
где
i - раунд
N1, N2 – подблоки открытого текста
K(i) – ключ раунда I
Если параметры функции F изменяются после зашифрования каждого
следующего символа, то сеть Фейстеля является гетерогенной. Если параметры
функции F не изменяются, то сеть - гомогенная.
Шифр, использующий такую конструкцию обратим.
Процесс
расшифрования шифра Фейстеля принципиально не отличается от процесса
шифрования. Применяется тот же алгоритм, но на вход подается шифрованный
текст, а подключи используются в обратной последовательности.
Если рассматривать криптоаналитическую стойкость алгоритма сети
Фейстеля, который является базой для симметричных алгоритмов шифрования,
то можно выделить
следующие основные параметры, от которых будет
зависеть стойкость алгоритма к взлому:
19
- Размер блока. Чем больше размер блока, тем выше надежность шифра,
но скорость выполнения операций шифрования и расшифрования снижается.
- Размер ключа. Чем длиннее ключ,
тем выше надежность шифра, но
при этом скорость выполнения операций шифрования и расшифрования
снижается.
- Число раундов обработки. Чем больше число раундов шифрования,
тем более усложняется криптоанализ шифра. В
общем случае число раундов
должно выбираться так, чтобы все известные методы криптоанализа требовали
больше усилий, чем анализ с помощью перебора всех ключей.
- Алгоритм вычисления подключей. Чем сложнее алгоритм вычисления
подключей, тем в большей степени усложняется криптоанализ шифра.
- Функция раунда. Применение гетерогенных и разбалансированных
сетей Фейстеля может значительно улучшить характеристики шифра.
Основным
недостатком
симметричного
шифрования
является
необходимость передачи ключей "из рук в руки". Недостаток этот весьма
серьезен, поскольку делает невозможным
использование симметричного
шифрования в системах с неограниченным числом участников.
Do'stlaringiz bilan baham: