|
||||
Меню:
Главная
Форум
Литература: Программирование и ремонт Импульсные блоки питания Неисправности и замена Радиоэлектронная аппаратура Микросхема в ТА Рубрикатор ТА Кабельные линии Обмотки и изоляция Радиоаппаратура Гибкие диски часть 2 часть 3 часть 4 часть 5 Ремонт компьютера часть 2 Аналитика: Монтаж Справочник Электроника Мощные высокочастотные транзисторы 200 микросхем Полупроводники ч.1 Часть 2 Алгоритмические проблемы 500 микросхем 500 микросхем Сортировка и поиск Монады Передача сигнала Электроника Прием сигнала Телевидиние Проектирование Эвм Оптимизация Автомобильная электроника Поляковтрансиверы Форт Тензодатчик Силовые полевые транзисторы Распределение частот Резисторные и термопарные Оберон Открытые системы шифрования Удк |
[90] Существуют предложения удваивать длину блока алгоритма с помощью многократного шифрования [299]. Прежде, чем реализовывать одно из них, оцените возможность вскрытия "встреча посередине" . Схема Ричарда Аутбриджа (Richard Outerbridge) [300], показанная на 12-й, не более безопасна, чем тройное шифрование с одинарным блоком и двумя ключами [859]. Открытый текст Шифротекст Рис. 15-3. Удвоение длины блока. Однако я не рекомендую использовать подобный прием . Он не быстрее обычного тройного шифрования : для шифрования двух блоков данных все также нужно шесть шифрований . Характеристики обычного тройного шифрования известны, а за новыми конструкциями часто прячутся новые проблемы . 15.4 Другие схемы многократного шифрования Проблемой тройного шифрования с двумя ключами является то, что для увеличения вдвое пространства ключей нужно выполнять три шифрования каждого блока открытого текста . Разве не здорово было бы найти какой-нибудь хитрый способ объединить два шифрования, которые удвоили бы пространство ключей ? Двойной OFB/счетчик Этот метод использует блочный алгоритм для генерации двух потоков ключей, которые используются для шифрования открытого текста. S = ЕкД S 1 ф /1); /1 = /1 +1 T = Е(Г 1 ф /2); /2 = /2 + 1 C = р ф $ ф т и Ti - внутренние переменные, а /1 и /2 - счетчики. Две копии блочного алгоритма работают в некотором гибридном режиме OFB/счетчик, а открытый текст, и Ti объединяются с помощью XOR. Ключи К1 и К2 независимы. Результаты криптоанализа этого варианта мне неизвестны. ECB + OFB Этот метод был разработан для шифрования нескольких сообщений фиксированной длины, например, бл оков диска [186, 188]. Используются два ключа: К1 и К2. Сначала для генерации маски для блока нужной длины используется выбранный алгоритм и ключ . Эта маска будет использована повторно для шифрования сообщений теми же ключами. Затем выполняется XOR открытого текста сообщения и маски. Наконец результат XOR шифруется с помощью выбранного алгоритма и ключа К2 в режиме ECB. Анализ этого метода проводился только в той работе, в которой он и был опубликован . Понятно, что он не слабее одинарного шифрования ECB и возможно также силен, как и двойное применение алгоритма . Вероятно, криптоаналитик может выполнять поиск ключей независимо, если он получит несколько открытых текстов фа й-лов, зашифрованных одним ключом. Чтобы затруднить анализ идентичных блоков в одних и тех же местах различных сообщений, можно испол ь-зовать IV. В отличии от использования IV в других режимах в данном случае перед шифрованием ECB выполняется XOR каждого блока сообщения с IV. Мэтт Блэйз (Matt Blaze) разработал этот режим для своей UNIX Cryptographic File System (CFS, криптографическая файловая система). Это хороший режим, поскольку скрытым состоянием является только одно ши ф-рование в режиме ECB, маска может быть сгенерирована только один раз и сохранена . В CFS в качестве блочного алгоритма используется DES. В [1644, 1645] DES используется как компонент ряда блочных алгоритмов с увеличенными размерами кл ю-чей и блоков. Эти схемы никак не зависят от DES, и в них может использоваться любой блочный алгоритм . Первый, xDES1, представляет собой просто схему Luby-Rackoff с блочным шифром в качестве базовой функции (см. раздел 14.11). Размер блока в два раза больше размера блока используемого блочного фильтра, а размер ключа в три раза больше, чем у используемого блочного фильтра . В каждом из 3 этапов правая полов и-на шифруется блочным алгоритмом и одним из ключей, затем выполняется XOR результата и левой половины, и половины переставляются. Это быстрее, чем обычное тройное шифрование , так как тремя шифрованиями шифруется блок, длина кот о-рого в два раза больше длины блока используемого блочного алгоритма. Но при этом существует простое вскрытие "встреча посередине", которое позволяет найти ключ с помощью таблицы размером 2 , где k - это размер ключа блочного алгоритма . Правая половина блока открытого текста шифруется с помощью всех во з-можных значений K1, выполняется XOR с левой половиной открытого текста и полученные значения сохраняются в таблице. Затем правая половина шифротекста шифруется с помощью всех возможных значений K3, и выполняется поиск совпадений в таблице. При совпадении пара ключей K1 и K3 - возможный вариант правого ключа. После нескольких повторений вскрытия останется только один кандидат. Таким образом, xDES1 не является идеальным решением. Даже хуже, существует вскрытие с выбранным открытым текстом, доказывающее, что xDES1 не намного сильнее используемого в нем блочного алгоритма [858]. В xDES2 эта идея расширяется до 5-этапного алгоритма, размер блока которого в 4 раза, а размер ключа в 10 раз превышают размеры блока и ключа используемого блочного шифра . На 11th показан один этап xDES2, каждый из четырех подблоков по размеру равен блоку используемого блочного шифра, а все 10 ключей независимы. Рис. 15-4. Один этап xDES2. К тому же, эта схема быстрее, чем тройное шифрование : для шифрования блока, который в четыре раза больше блока используемого блочного шифра, нужно 10 шифрований . Однако этот метод чувствителен к дифференциальному криптоанализу [858] и использовать его не стоит. Такая схема остается чувствительной к дифференциальному криптоанализу, даже если используется DES с независимыми ключами этапов. Для i > 3 xDES вероятно слишком велик, чтобы использовать его в качестве блочного алгоритма . Например, размер блока для xDES3 в 6 раз больше, чем у лежащего в основе блочного шифра, ключ в 21 раз длиннее, а для шифрования блока, который в 6 раз длиннее блока лежащего в основе блочного шифра, нужно 21 шифрование . Это медленнее, чем тройное шифрование . Пятикратное шифрование Если тройное шифрование недостаточно безопасно - может быть, вам нужно шифровать ключи тройного шифрования, используя еще более сильный алгоритм - то кратность шифрования можно увеличить . Очень устойчиво к вскрытию "встреча посередине" пятикратное шифрование . (Аргументы, аналогичные рассмотренным для двойного шифрования, показывают, что четырехкратное шифрование по сравнению с тройным лишь незн а-чительно повышает надежность.) C = ЕкД Dk2( Ек3( Dk2( ЕкД P))))) P = Dk1( Ек2( Dk3( Ек2( Dk1(C))))) Эта схема обратно совместима с тройным шифрованием, если К1 = К2, и с однократным шифрованием, если К1 = К2 = К3. Конечно, она будет еще надежней, если использовать пять независимых ключей . 15.5 Уменьшение длины ключа в CDMF Этот метод был разработан IBM для продукта CDMF (Commercial Data Masking Facility, Коммерческое средство маскирования данных) (см. раздел 24.8), чтобы превратить 56-битовый ключ DES в 40-битовый, разрешенный для экспорта [785]. Предполагается, что первоначальный ключ DES содержит биты четности. (1)Обнуляются биты четности: биты 8, 16, 24, 32, 40, 48, 56, 64. (2)Результат этапа (1) шифруется с помощью DES ключом 0xc408b0540ba1e0ae, результат шифрования об ъ-единяется посредством XOR с результатом этапа (1). (3)В результате этапа (2) обнуляются следующие биты: 1, 2, 3, 4, 8, 16, 17, 18, 19, 2.0, 2.4, 32, 33, 34, 35, 36, 40, 48, 49, 50, 51, 52, 56, 64. (4)Результат этапа (3) шифруется с помощью DES ключом 0xef2c041ce6382fe6. Полученный ключ использ у-ется для шифрования сообщения. Не забывайте, что этот метод укорачивает ключ и, следовательно, ослабляет алгоритм . 15.6 Отбеливание Отбеливанием (whitening) называется способ, при котором выполняется XOR части ключа с входом блочного алгоритма и XOR другой части ключа с выходом блочного алгоритма . Впервые этот метод был применен для варианта DESX, разработанного RSA Data Security, Inc., а затем (по-видимому, независимо) в Khufu и Khafre. (Ривест и дал имя этому методу, это необычное использование слова.) Смысл этих действий в том, чтобы помешать криптоаналитику получить пару "открытый текст/шифротекст" для лежащего в основе блочного алгоритма. Метод заставляет криптоаналитика угадывать не только ключ алг о-ритма, но и одно из значений отбеливания. Так как XOR выполняется и перед, и после блочного алгоритма, считается, что этот метод устойчив против вскрытия "встреча посередине" . C = К3 ф Ек2( P ф К1) р = к ф Dk2(c ф К3) Если К1 = К2, то для вскрытия грубой силой потребуется 2п+т1р действий, где я - размер ключа, m - размер блока, и p - количество известных открытых текстов. Если К1 и К2 различны, то для вскрытия грубой силой с тремя известными открытыми текстами потребуется 2я+т+1 действий. Против дифференциального и линейного криптоанализа, такие меры обеспечивают защиту только для нескольких битов ключа. Но с вычислительной точки зрения это очень дешевый способ повысить безопасность блочного алгоритма . 15.7 Многократное последовательное использование блочных алгоритмов А как насчет шифрования сначала алгоритмом А и ключом 7<Q, а затем еще раз алгоритмом В и ключом Kg? Может быть у Алисы и Боба различные представления о том, какой алгоритм безопаснее : Алиса хочет пользоваться алгоритмом А, а Боб - алгоритмом В. Этот прием, иногда называемый последовательным использованием (cascading), можно распространить и на большее количество алгоритмов и ключей . Пессимисты утверждали, что совместное использование двух алгоритмов не гарантирует повышения без опасности. Алгоритмы могут взаимодействовать каким-то хитрым способом, что на самом деле даже улгеньшит. Даже тройное шифрование тремя различными алгоритмами может не быть настолько безопасным, насколько |
Среды: Smalltalk80 MicroCap Local bus Bios Pci 12С ML Микроконтроллеры: Atmel Intel Holtek AVR MSP430 Microchip Книги: Емкостный датчик 500 схем для радиолюбителей часть 2 (4) Структура компьютерных программ Автоматическая коммутация Кондиционирование и вентиляция Ошибки при монтаже Схемы звуковоспроизведения Дроссели для питания Блоки питания Детекторы перемещения Теория электропривода Адаптивное управление Измерение параметров Печатная плата pcad pcb Физика цвета Управлении софтверными проектами Математический аппарат Битовые строки Микроконтроллер nios Команды управления выполнением программы Перехода от ahdl к vhdl Холодный спай Усилители hi-fi Электронные часы Сердечники из распылённого железа Анализ алгоритмов 8-разрядные КМОП Классификация МПК История Устройства автоматики Системы и сети Частотность Справочник микросхем Вторичного электропитания Типы видеомониторов Радиобиблиотека Электронные системы Бесконтекстный язык Управление техническими системами Монтаж печатных плат Работа с коммуникациями Создание библиотечного компонента Нейрокомпьютерная техника Parser Пи-регулятор ч.1 ПИ-регулятор ч.2 Обработка списков Интегральные схемы Шина ISAВ Шина PCI Прикладная криптография Нетематическое: Взрывной автогидролиз Нечеткая логика Бытовые установки (укр) Автоматизация проектирования Сбор и защита Дискретная математика Kb радиостанция Энергетика Ретро: Прием в автомобиле Управление шаговым двигателем Магнитная запись Ремонт микроволновки Дискретные системы часть 2 | ||