|
||||
Меню:
Главная
Форум
Литература: Программирование и ремонт Импульсные блоки питания Неисправности и замена Радиоэлектронная аппаратура Микросхема в ТА Рубрикатор ТА Кабельные линии Обмотки и изоляция Радиоаппаратура Гибкие диски часть 2 часть 3 часть 4 часть 5 Ремонт компьютера часть 2 Аналитика: Монтаж Справочник Электроника Мощные высокочастотные транзисторы 200 микросхем Полупроводники ч.1 Часть 2 Алгоритмические проблемы 500 микросхем 500 микросхем Сортировка и поиск Монады Передача сигнала Электроника Прием сигнала Телевидиние Проектирование Эвм Оптимизация Автомобильная электроника Поляковтрансиверы Форт Тензодатчик Силовые полевые транзисторы Распределение частот Резисторные и термопарные Оберон Открытые системы шифрования Удк |
[81] f(X0,X3) x,- = x,- © ki+1, для i = 0 до 3 f(X0, x1, x2, Xi = Xi © ki+2, для i = 0 до 3 f(X0,X3) xi = xi © ki, для i = 0 до 3 f(X0,X3) xi = xi © ki+1, для i = 0 до 3 f(X0, x1, x2, xi = xi © ki+2, для i = 0 до 3 f(X0, x1, x2, У функции f три этапа: (1)x1 = ci * xi, для i = 0 до 3 (Если на входе умножения одни единицы, то на выходе - тоже одни единицы.) (2)Если младший значащий бит x0 = 1, то x0 = x0 © C. Если младший значащий бит x3 = 0, то x3 = x3 © C. (3)xi = xi-1 © xi © xi+1, для i = 0 до 3 Все операции с индексами выполняются по модулю 3. Операция умножения на этапе (1) выполняется по м о- дулю 2 -1. В данном алгоритме если второй операнд - это 2 -1, то результат также равен 2 -1. В алгоритме используются следующие константы: C 2aaaaaaa С0 = 025f1cdb ci = 2 * C0 C2= 23 * C0 C3 = 27 * C0 Константа C - это "простейшая" константа с высоким троичным весом, нулевым младшим значащим битом и без круговой симметрии. У константы c0 несколько иные характеристики. Константы c l, c2 и c3 являются смещенными версиями c0, и используются для предотвращения вскрытий основанных на симметрии. Подробности можно найти в [405]. Дешифрирование является обратным процессом. Этапы (2) и (3) заменяются на свою инверсию. На этапе (1) вместо ci-1 используется ci. ci-1 = 0dad4694. Безопасность MMB Схема MMB обеспечивает на каждом этапе значительное и независимое от ключа рассеяние. В IDEA ра с-сеяние до определенной степени зависит от конкретных подключей. В отличие от IDEA у MMB нет слабых ключей. К сожалению MMB - это умерший алгоритм [402]. Это утверждение справедливо по многим причинам, хотя криптоанализ MMB и не был опубликован. Во первых, он проектировался без учета требований устойчивости к линейному криптоанализу. Выбор мультипликативных множителей обеспечил устойчивость к дифференциал ь-ному криптоанализу, но о линейном криптоанализе авторам алгоритма было еще неизвестно. Во вторых, Эли Бихам реализовал эффективное вскрытие с выбранным ключом [160], использующеее тот факт, что все этапы идентичны, а ключ при использовании просто циклически сдвигается на 32 бита. В третьих, несмотря на то, что программные реализации MMB были бы очень эффективны, в аппаратном исполнении а л-горитм менее эффективен, чем DES. Дэймон предлагает, что тот, кто захочет улучшить MMB, должен сначала проанализировать умножение по модулю с помощью линейного криптоанализа и подобрать новый множитель, а затем сделать константу C ра з-личной для каждого этапа [402]. Затем, улучшив использование ключа, добавляя к ключам этапов константы с целью устранения смещения. Но сам не стал заниматься этим и разработал 3-Way (см. раздел 14.5). 13.11 CA-1.1 CA - это блочный шифр, основанный на клеточных автоматах и разработанный Говардом Гутовицом (Howard Gutowitz) [677, 678, 679]. Он шифрует 384-битовые блоки открытого текста 1088-битовым ключом (на самом деле используется два ключа - 1024-битовый и 64- битовый). Из-за природы клеточных автоматов алг о-ритм наиболее эффективен при реализации в больших параллельных интегрированных схемах. CA-1.1 использует как обратимые, так и необратимые правила клеточного автомата. При обратимом прав иле каждое состояние структуры получается из единственного предшествующего состояния, а при необратимом правиле у каждого состояния может быть несколько предшественников. При шифровании необратимые правила пошагово обращаются во времени. Для продвижения обратно от текущего состояния случайным образом дол ж-но выбираться одно из состояний-предшественников. Этот процесс многократно повторяется. Таким образом, обратная итерация служит для смешивания случайной информации с инфорамацией сообщения. CA-1.1 испол ь-зует особый сорт частично линейного необратимого правила, такого, что для любого данного состояния может быть быстро построено случайное состояние-предшественник. На некоторых стадиях шифрования используются и обратимые правила. Обратимые правила (простые параллельные перестановки подблоков состояния) нелинейны. Необратимые правила полностью определяются ключом, а обратимые зависят как от ключа, так и от случайной информации, вставленной в ходе шифрования необратимыми правилами. CA-1.1 основан на структуре блочных связей. То есть, обработка блока сообщения частично отделена от о б-работки потока случайной информации, вставленной при шифровании. Эта случайная информация служит для связи друг с другом стадий шифрования. Она также может быть использована для связи с потоком шифроте к-ста. Информация связи генерируется как часть шифрования. Так как CA-1.1 представляет собой новый алгоритм, слишком рано делать какие-либо заявления о его без опасности. Гутовиц упоминает некоторые возможные вскрытия, включая дифференциальный криптоанализ, но ему не удалось вскрыть алгоритм. В качестве стимула Гутовиц предложил награду в 1000 долларов для "первого человека, который разработает доступную процедуру вскрытия CA-1.1." CA-l.1 запатентован [678], но доступен для некоммерческого использования. При необходимости получить лицензию на алгоритм или объявленную награду за криптоанализ обращайтесь к Говарду Гутовицу по адресу Howard Cutowitz, ESPCI, Laboratorie dElectronique, 10 rue Vauquelin, 75005 Paris, France. 13.12 SKIPJACK Skipjack разработан NSA в качестве алгоритма шифрования для микросхем Clipper и Capstone (см. разделы 24.16 и 24.17). Так как этот алгоритм объявлен секретным, его подробности никогда не публиковались. Он б у-дет реализован только как защищенная от взлома аппаратура. Этот алгоритм объявлен секретным не потому, что это повышает его надежность, а потому что NSA не х о-чет, чтобы Skipjack использовался без механизма условного вручения ключей Clipper. Агентство не хочет, чт о-бы программные реализации алгоритма распространились по всему миру. Безопасен ли Skipjack? Если NSA захочет создать безопасный алгоритм, оно, скорее всего, это сделает. С другой стороны, если NSA захочет создать алгоритм с лазейкой, то оно сможет сделать и это. Вот что было опубликовано [1154, 462]. -Это итеративный блочный шифр. -Размер блока - 64 бита. -Алгоритм использует 80-битовый ключ. -Он может быть использован в режимах ECB, CBC, 64-битовый OFB, либо 1-, 8-, 16-, 32- или 64-битовый -Операция шифрования или дешифрирования состоит из 32 этапов. -NSA начало работу над ним в 1985 и завершило проверку в 1990. В документации на микросхему Mykotronx Clipper утверждается, что задержка в выдаче результата, прис у-щая алгоритму Skipjack, составляет 64 такта. Это означает, что на каждый этап приходится два такта: один предположительно для подстановки с помощью S-блока, а другой - для заключительного XOR в конце каждого этапа. (Не забывайте, перестановки при аппаратных реализациях не занимают времени.) В документации Mykotronx эта двухтактная операция называется "G-блоком", а все вместе - "сдвигом". (Часть G-блока носит название "F-таблицы" и является таблицей констант, а может быть таблицей функций.) По одним слухам Skipjack использует 16 S-блоков, а по другим для хранения S-блоков нужно всего 128 байт памяти. Непохоже, чтобы оба этих слуха были правдой. Еще один слух утверждает, что этапы Skipjack, в отличие от DES, работают не с половиной блока. Это вм е-сте с замечанием о "сдвигах" и случайном заявлении на Crypto 94 о том, что в Skipjack применяется "48-битовая внутренняя структура", позволяет сделать вывод, что алгоритм по своей схеме похож на SHA (см. ра з-дел 18.7), но использует четыре 16-битовых подблока. Три подблока, обработанные зависящей от ключа одн о-направленной функцией, дают 16 битов, которые подвергаются операции XOR с оставшимся подблоком. Затем весь блок циклически сдвигается на 16 битов и поступает на вход следующего этапа, или сдвига. При этом та к-же используются 128 байтов данных S-блока. Я подозреваю, что S-блоки зависят от ключа. По своей структуре Skipjack вероятно похож на DES. NSA понимает, что его защищенная от взлома аппар а-тура в конце концов будет вскрыта и исследована, они не будут рисковать никакими передовыми криптограф и-ческими методами. То, что NSA планирует использовать алгоритм Skipjack для шифрования своей Системы защиты сообщений (Defense Messaging System, DMS), свидетельствует о безопасности алгоритма. Чтобы убедить скептиков, NIST разрешил комиссии "уважаемых неправительственных экспертов . . . получить доступ к конфиденциальным подробностям алгоритма, чтобы они исследовали его возможности и опубликовали результаты своих исслед о-ваний " [812]. В предварительном отчете этой комиссии экспертов [262] (окончательного отчета не было, и возможно ник о-гда не будет) сообщалось: Принимая во внимание, что стоимость вычислительных мощностей уменьшается в два раза каждые 18 месяцев, сло ж-ность вскрытия Skipjack сравняется с сегодняшней сложностью вскрытия DES только через 36 лет. Следовательно, риск, что Skipjack будет взломан в ближайшие 30-40 лет, незначителен. Незначителен и риск взлома Skipjack с помощью более быстрых способов вскрытия, включая дифференциальный кри п-тоанализ. У алгоритма не слабых ключей, отсутствует и свойство комплиментарности. Эксперты в отсутствие времени для самостоятельного большого исследования алгоритма изучили представленное NSA описание разработки и проверки алг о-ритма Устойчивость Skipjack к криптоанализу не зависит от хранения в тайне самого алгоритма. Итак, участники дискуссии не смогли поработать с алгоритмом достаточно долго, чтобы прийти к каким-нибудь выводам самостоятельно. Все, что они смогли сделать - это взглянуть на результаты, показанные им Остался без ответа вопрос, является ли плоским пространство ключей Skipjack (см. раздел 8.2). Даже если у Skipjack нет ключей, слабых в смысле DES, ряд особенностей процесса использования ключа может сделать одни ключи сильнее других. У Skipjack может быть 270 сильных ключей, гораздо больше чем у DES, вероятность случайно выбрать один из этих сильных ключей будет приблизительно 1 к 1000. Лично я думаю, что пр о-странство ключей Skipjack - плоское, но то, что об этом никто не заявил публично, вызывает тревогу. Skipjack запатентован, но в соответствии с соглашением о секретности патента [1122] этот патент хранится в тайне. Патент будет опубликован тогда и только тогда, когда алгоритм Skipjack будет успешно восстановлен кем-то посторонним. Это дает возможность правительству воспользоваться и преимуществом защиты патентом, и преимуществом конфеденциальности торгового секрета. |
Среды: 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 | ||