Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

В криптографии , ICE ( я нформация С oncealment Х ngine ) является симметричным ключом блочного шифра опубликованного в 1997 Kwan Алгоритм аналогичен по структуре DES , но с добавлением ключа в зависимости от битовой перестановки в круглой функции. Перестановка битов, зависящая от ключа, эффективно реализована в программном обеспечении. Алгоритм ICE не подлежит патентам, а исходный код размещен в открытом доступе.

ICE - это сеть Фейстеля с размером блока 64 бита. Стандартный алгоритм ICE использует 64-битный ключ и имеет 16 раундов. В быстром варианте Thin-ICE используется всего 8 патронов. Открытый вариант, ICE- n , использует 16 n раундов с 64 n- битным ключом.

Ван Ромпей и др. (1998) попытались применить дифференциальный криптоанализ к ICE. Они описали атаку на Thin-ICE, которая восстанавливает секретный ключ с использованием 2 23 выбранных открытых текстов с вероятностью успеха 25%. Если использовать 2 27 выбранных открытых текстов, вероятность может быть увеличена до 95%. Для стандартной версии ICE была обнаружена атака на 15 раундов из 16, требующая 2 56 работ и не более 2 56 выбранных открытых текстов.

Структура [ править ]

ICE - это 16- канальная сеть Фейстеля . Каждый раунд использует 32 → 32-битную функцию F, которая использует 60 бит ключевого материала.

Структура функции F в чем-то похожа на DES: входные данные расширяются за счет перекрывающихся полей, расширенные входные данные подвергаются операции XOR с ключом, а результат передается в несколько сокращающих S-блоков, которые отменяют раскрытие.

Во-первых, ICE делит ввод на 4 перекрывающихся 10-битных значения. Это биты 0–9, 8–17, 16–25 и 24–33 ввода, где биты 32 и 33 являются копиями битов 0 и 1.

Во-вторых, это перестановка с ключом, уникальная для ICE. Используя 20-битный подключ перестановки, биты меняются местами между половинами 40-битного расширенного ввода. (Если бит i подключа равен 1, то биты i и i +20 меняются местами.)

В-третьих, 40-битное значение обрабатывается методом исключающего ИЛИ с еще 40 битами подключей.

В-четвертых, значение подается через 4 10-битных S-блока, каждый из которых дает 8 бит на выходе. (Они намного больше, чем 8 6 → 4-битные S-блоки DES.)

В-пятых, выходные биты S-блока переставляются так, что выходы каждого S-блока направляются в каждое 4-битное поле 32-битного слова, включая 2 из 8 битов «перекрытия», дублированных во время следующего раунда расширения.

Подобно DES, программная реализация обычно хранит предварительно переставленные S-блоки в 4 справочных таблицах 1024 × 32 бита.

Ссылки [ править ]

  • Мэтью Кван, Дизайн алгоритма шифрования ICE, Fast Software Encryption 1997, стр. 69–82 [1] .
  • Барт ван Ромпей, Ларс Р. Кнудсен и Винсент Раймен, Дифференциальный криптоанализ алгоритма шифрования ICE, Быстрое программное шифрование, 1998 г., стр. 270–283 (PDF) .

Внешние ссылки [ править ]