Методы и средства криптографической защиты информации. Жданов О.Н - 135 стр.

UptoLike

135
2.6. ОБЪЕДИНЕНИЕ БЛОЧНЫХ ШИФРОВ
Существует множество способов объединять блочные алгоритмы для
получения новых алгоритмов. Стимулом создавать подобные схемы является
желание повысить безопасность, не пробираясь через тернии создания нового
алгоритма. DES является безопасным алгоритмом, он подвергался
криптоанализу добрых 20 лет и, тем не менее, наилучшим способом
вскрытия остается грубая сила. Однако ключ слишком короток. Разве не
хорошо было бы использовать DES в качестве компонента другого алгоритма
с более длинным ключом? Это позволило бы получить преимущества
длинного ключа с гарантией двух десятилетий криптоанализа.
Одним из способов объединения является многократное шифрование
- для шифрования одного и того же блока открытого текста алгоритм
шифрования используется несколько раз с несколькими ключами. Шифрова-
ние каскадом похоже на многократное шифрование, но использует
различные алгоритмы . Существуют и другие методы.
Повторное шифрование блока открытого текста одним и тем же
ключом с помощью того же или другого алгоритма неразумно. Повторное
использование того же алгоритма не увеличивает сложность вскрытия грубой
силой. (Мы предполагаем, что алгоритм, включая количество шифрований,
известен криптоаналитику.) При различных алгоритмах сложность вскрытия
грубой силой может возрастать, а может и остаться неизменной. Если вы
собираетесь использовать методы, описанные в этой главе, убедитесь, что
ключи для последовательных шифрований различны и независимы.
2.6.1.Двойное шифрование
Наивным способом повысить безопасность алгоритма является
шифрование блока дважды с двумя различными ключами. Сначала блок
шифруется первым ключом, а затем получившийся шифротекст шифруется
вторым ключом. Дешифрирование является обратным процессом.
C = E
K2
(E
K1
(P))
P = D
K1
(D
K2
(C))
Если блочный алгоритм образует группу, то всегда существует К
3
, для
которого
C = E
K2
(E
K1
(P))= E
K3
(P)
Если алгоритм не образует группу, то при помощи исчерпывающего
поиска взломать получающийся дважды зашифрованный блок шифротекста
намного сложнее. Вместо 2
n
(где п - длина ключа в битах), потребуется 2
2n
попыток. Если алгоритм использует 64-битовый ключ, для обнаружения
ключей, которыми дважды зашифрован шифротекст, потребуется 2
128
попыток.
Но при вскрытии с известным открытым текстом это не так. Меркл и