Алгебраическая структура

Все возможные 64-битовые блоки открытого текста можно отобразить на 64-битовые блоки шифротекста 264! Различными способами. Алгоритм DES, используя 56-битовый ключ, предоставляет нам 256 (приблизительно 1017) таких отображений. Использование многократного шифрования на первый взгляд позволяет значительно увеличить долю возможных отображений. Но это правильно только, если действие DES не обладает определенной алгебраической структурой.

Если бы DES был замкнутым, то для любых K1 и K2 всегда существовало бы такое K3, что

[image]

Другими словами, операция шифрования DES образовала бы группу, и шифрование набора блоков открытого текста последовательно с помощью K1 и K2 было бы идентично шифрованию блоков ключом K3. Что еще хуже, DES был бы чувствителен к вскрытию "встреча посередине" с известным открытым текстом, для которого потребовалось бы только 228 этапов [807].

Если бы DES был чистым, то для любых K1, K2 и K3 всегда существовало бы такое K4, что

[image]

Тройное шифрование было бы бесполезным. (Заметьте, что замкнутый шифр обязательно является и чистым, но чистый шифр не обязательно является замкнутым.)

Ряд подсказок можно найти в ранней теоретической работе Дона Копперсмита, но этого недостаточно [377]. Различные криптографы пытались решить эту проблему [588, 427, 431, 527, 723, 789]. В повторяющихся экспериментах собирались "неопровержимые доказательства" того, что DES не является группой [807, 371, 808, 1116, 809], но только в 1992 году криптографам удалось это доказать окончательно [293]. Копперсмит утверждает, что команда IBM знала об этом с самого начала.