Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Подключи вычисляются с использованием самого алгоритма Blowfish.
Для создания всех подключей требуется 521 итерация.
IDEA
Характеристики:
• Сеть Фейстеля, 16 итераций.
• Длина блока 64 бит.
• Длина ключа 128 бит.
Криптографическая стойкость IDEA
• Длина блока: длина блока должна быть достаточной, чтобы скрыть все статистические характеристики исходного сообщения. С другой стороны, сложность реализации криптографической функции возрастает экспоненциально в соответствии с размером блока..
• Длина ключа: длина ключа должна быть достаточно большой для того, чтобы предотвратить возможность простого перебора ключа. При длине ключа 128 бит IDEA считается достаточно безопасным.
• Конфузия: зашифрованный текст должен зависеть от ключа сложным и запутанным способом.
• Диффузия: каждый бит незашифрованного текста должен влиять на каждый бит зашифрованного текста. Распространение одного незашифрованного бита на большое количество зашифрованных битов скрывает статистическую структуру незашифрованного текста. Определить, как статистические характеристики зашифрованного текста зависят от статистических характеристик незашифрованного текста, должно быть непросто. IDEA с этой точки зрения является очень эффективным алгоритмом
Операции IDEA
Выполняются над двумя 16-битными входами и создает один 16-битный выход.
Эти три операции являются несовместимыми в том смысле, что:
• Не существует пары из трех операций, удовлетворяющих дистрибутивному закону. Например
a • (b + c) <> (a • b) + (a • c)
• Не существует пары из трех операций, удовлетворяющих ассоциативному закону. Например
a + (b Å c) <> (a + b) Å c
Использование комбинации из этих трех операций обеспечивает комплексную трансформацию входа, делая криптоанализ более трудным, чем в таком алгоритме как DES, основанном исключительно на функции XOR.
Шифрование IDEA
• Состоит из восьми раундов, за которыми следует заключительное преобразование.
• Разделяет блок на четыре 16-битных подблока.
• Каждый раунд получает на входе четыре 16-битных подблока и создает четыре 16-битных выходных подблока.
• Заключительное преобразование также получает на входе четыре 16-битных подблока и создает четыре 16-битных подблока.
• Каждый раунд использует шесть 16-битных ключей, заключительное преобразование использует четыре подключа, т.е. всего в алгоритме используется 52 подключа.
Шифрование IDEA. Общий алгоритм
Последовательность преобразований отдельного раунда
Структура МА (сложение/умножение).
Обеспечивает диффузию. На вход подаются два 16-битных значения и два 16-битных подключа, на выходе создаются два 16-битных значения. Каждый бит выхода этой структуры зависит от каждого бита входов незашифрованного блока и от каждого бита подключей. Повторяется в алгоритме восемь раз.
• Раунд начинается с преобразования, которое комбинирует четыре входных подблока с четырьмя подключами, используя операции сложения и умножения.
• 4 выходных блока этого преобразования комбинируются, используя операцию XOR для формирования двух 16-битных блоков, которые являются входами МА структуры.
• Кроме того, МА структура имеет на входе еще два подключа и создает два 16-битных выхода.
• В заключение четыре выходных подблока первого преобразования комбинируются с двумя выходными подблоками МА структуры, используя XOR для создания четырех выходных подблоков данной итерации.
• Заметим, что два выхода, которые частично создаются вторым и третьим входами (Х2 и Х3), меняются местами для создания второго и третьего выходов (W12 и W13). Это увеличивает перемешивание битов и делает алгоритм более стойким для дифференциального криптоанализа.
1-й раунд IDEA
Заключительное преобразование IDEA
Дата публикования: 2014-11-18; Прочитано: 816 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!