автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.19, диссертация на тему:Разработка алгоритмов моделирования и анализа программных реализаций криптографических преобразований

кандидата технических наук
Минаева, Елена Вячеславовна
город
Москва
год
2000
специальность ВАК РФ
05.13.19
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Разработка алгоритмов моделирования и анализа программных реализаций криптографических преобразований»

Автореферат диссертации по теме "Разработка алгоритмов моделирования и анализа программных реализаций криптографических преобразований"

На правах рукописи

РГб од

- з ш гт

МИНАЕВА ЕЛЕНА ВЯЧЕСЛАВОВНА

РАЗРАБОТКА АЛГОРИТМОВ МОДЕЛИРОВАНИЯ И АНАЛИЗА ПРОГРАММНЫХ РЕАЛИЗАЦИЙ КРИПТОГРАФИЧЕСКИХ ПРЕОБРАЗОВАНИЙ

05.13.19 — "Методы и системы защиты информации, информационная безопасность"

диссертации на соискание ученой степени кандидата технических

наук

АВТОРЕФЕРАТ

Москва - 2000

Работа выполнена в Московском Государственном инженерно-физическом институте (техническом университете)

Научный руководитель: Кандидат технических наук,

доцент Малюк А. А.

Официальные оппоненты:

Доктор технических наук, Щербаков А. Ю. Кандидат физ.-мат. наук, Юров И. А.

Ведущая организация: ЦНИИАТОМИНФОРМ

Защита состоится "(£" 2000 г.

в /О часов ¿V мин, на заседании диссертационного совета К.053.03.09 в МИФИ по адресу: 115409, Москва, Каширское ш., 31.

С диссертацией можно ознакомиться в библиотеке МИФИ Автореферат разослан "24- " ШТиЙрЛ 2000 года

Просим принять участие в работе совета или прислать отзыв в одном экземпляре, заверенный печатью организации.

Ученый секретарь диссертационного совета

кандидат технических наук Горбатов В. С.

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

Актуальность темы.. Широкое использование вычислительных систем в повседневной жизни сделало их привлекательными для различного рода информационных атак. В связи с этим значительно повысилась актуальность задачи сохранения за информацией ее основных свойств как в процессе хранения и обработки, так и при передаче по открытым каналам связи. Одним га эффективных решений данной задачи на сегодняшний день является применение современных методов криптографии.

Среди требований, предъявляемых к современным массовым средствам защиты информации (СЗИ), значительную роль играет требование ■'прозрачности"' - система должна быть удобна в эксплуатации и не снижать производительности работы конечных пользователей. Последнее предполагает, что все процессы преобразования информации с целью ее закрытия должны выполняться в режиме реального времени. Частая смена программно-аппаратных платформ и непрерывное повышение производительности вычислительных систем ставят задачу быстрого проектирования и оперативной доработки криптоалгоритмов в соответствии с изменившимися условиями эксплуатации. Актуальность задачи моделирования и анализа программных реализаций криптографических преобразований обусловлена необходимостью автоматизации процедуры проектирования эффективных программных реализаций криптоалгоритмов п соответствует текущим потребностям прикладной криптографии на современном этапе ее развития.

Методология и теоретическая база изучения проблем, возникающих при проектировании и создании программных реализаций криптографических преобразований, в настоящее время только формируется. Данная работа опирается на результаты исследований как российских, так и зарубежных специалистов в области защиты информации, таких как Герасименко В.А., Зегжда Д.П., Малюк A.A., Щербаков А.Ю., C.Adams, E.Biham, J. Daemen, L. Knudsen, B. Preiieel, B.Schneier и др. и развивает их отдельные положения применительно к задаче формализации методов моделирования и анализа программных реализаций криптопреобразований, представляющей одно из направлений

исследований в области развития и совершенствования средств криптографической защиты в рамках решения обшей проблемы обеспечения информационной безопасности.

Процесс синтеза н анализа моделей криптопреобразований в настоящее время недостаточно формализован и не имеет необходимой программной поддержки, что приводит к неоправданно высоким временным и стоимостным затратам. Поэтому разработка системных основ и методов синтеза и анализа моделей симметричных блочных шифров (СБШ), а также разработка соответствующего инструментария моделирования является актуальной проблемой, имеющей большое научное и практическое значение.

Предложенный в работе интегрированный подход, заключающийся в объединении в рамках единого инструментария различных средств поддержки разработки программных реализаций криптопреобразований, позволит решить целый ряд задач, имеющих важное практическое значение, а именно:

• разработки и анализа различных свойств новых криптоалгоритмов,

• модификации и усовершенствования существующих криптоалгоритмов в связи с изменившимися условиями эксплуатации,

• генерации эталонных решений для тестирования программных реализаций криптоалгоритмов на соответствие формальной спецификации,

• выработки рекомендаций по выбору средств криптографической зашиты, наиболее полно отвечающих потребностям конкретной прикладной задачи.

Диссертация посвящена разработке методов и алгоритмов моделирования и анализа программных реализаций криптографических преобразований на примере симметричных блочных криптосхем.

Цель исследования. Разработка и реализация методов синтеза и анализа моделей программных реализаций криптографических преобразований с целью создания, модификации и тестирования криптоалгоритмов, применяемых в современных средствах криптографической защиты информации (СКЗИ).

Для достижения поставленной цели были решены следующие задачи:

• Разработана обобщенная структурная модель СБШ, позволяющая синтезировать произвольный СБШ из унифицированных структурных компонент с применением операций композиции и задания рекурсивного определения.

• Разработан формальный язык описания структурных моделей СБШ, позволяющий формировать описание модели в виде, приближенном к формальным спецификациям.

• Автоматизирована процедура преобразования формального описания модели шифра в программный код на языке высокого уровня и набор команд гипотетической ЭВМ.

• Реализован интерпретатор модели гипотетической ЭВМ, позволяющий получить теоретические оценки эффективности программной реализации моделируемого криптоалгоритма на выбранной аппаратной платформе.

• Предложена методика построения семейства интегральных оценок качества симметричных блочных крянтопреобразованин.

Методы исследования. Структурный анализ, теория формальных грамматик и языков, теория информации, статистический анализ, векторная алгебра, методы оптимизации.

Научная новизна. Основным научным результатом работы является разработка методологического базиса синтеза и анализа широкого класса симметричных блочных криптопреобразований.

В ходе исследований были получены следующие новые результаты:

• предложен принципиально новый подход к классификации СБШ в соответствии с методологией проектирования:

• построена обобщенная структурная модель СБШ;

• разработан формальный язык описания структурных моделей СБШ;

• разработан алгоритм преобразования формального описания структурной модели СБШ в соответствующую программную модель;

• разработана формальная модель гипотетической ЭВМ, позволяющая учитывать последние достижения в области создания аппаратного и программного обеспечения вычислительных систем;

• предложена систематизация критериев оценивания криптографических преобразований;

• разработана методика получения интегральных оценок качества криптопреобразований в соответствии с требованиями конкретной прикладной задачи.

На защиту выносятся основные положения диссертации:

• совокупность алгоритмов и средств синтеза структурных моделей криптопреобразований;

• формальный язык описания структурных моделей криптопреобразований;

• совокупность алгоритмов и средств моделирования аппаратной платформы реализации криптопреобразований;

• методика формирования семейства интегральных оценок качества моделируемых кршпопреобразований.

Практическая ценность исследования определяется

следующими основными результатами:

• универсальность формального языка описания структурных моделей криптопреобразований позволяет использовать его для описания широкого класса симметричных блочных криптосхем:

• строгое соответствие построенной программной модели шифра формальной спецификации дает возможность использовать ее для получения эталонных решений;

« разработанный инструментарий моделирования и анализа программных реализаций криптопреобразований является уннверсачьным и имеет широкие возможности наращивания и модификации компонент;

• предложенная методика интегрального оценивания позволяет проводить сравнительный анализ эффективности применения различных криптопреобразований в рамках конкретной прикладной задачи.

Обоснованность результатов и выводов. Обобщенная модель симметричного блочного крнптопреобразования построена на основе анализа широкого класса СБ111. Методы формирования интегральных оценок получены использованием известного математического аппарата и согласуются с практикой. Конструктивность методов проверена реальным использованием для построения криптосхем и их элементов с заданными характеристиками. Универсальность и гибкость инструментария подтверждена большим объемом моделирования.

Публикации и апробация работы. По теме диссертации опубликовано 8 работ. Полученные результаты докладывались на конференциях регионального, всероссийского и международного уровня.

Структура и объем работы. Диссертация состоит из введения, пяти глав, заключения, списка литературы из 130 позиции. Объем: 180 страниц, из них основного текста — 160 е., 7 таблиц, 20 рисунков.

СОДЕРЖАНИЕ РАБОТЫ

Во введении на основе анализа общих тенденций в применении криптографических средств защиты в современных СЗИ обосновывается актуальность разработки методов моделирования и анализа программных реализаций криптографических преобразовании. Определяется перечень требований к крштмрафическим алгоритмам, ориентированным на реализацию программными методами, формулируется задача автоматизации процедур синтеза и анализа программных моделей криптопреобразований, аннотируется содержание работы по главам.

В первой главе определяется класс СБШ и его роль в обеспечении защиты данных, приводится обзор известных на сегодняшний день методов построения СБШ и формулируется задача по разработке общего алгоритма синтеза структурных моделей СБШ.

В результате анализа различных подходов к классификации СБШ был предложен усовершенствованный метод классификации, отражающий генетические зависимости между различными подклассами СБШ, возникающие в процессе проектирования. Для

каждого из выделенных подклассов СБШ изучены основные свойства, указаны преимущества и недостатки полученных решений. Предложена обобщенная структурная .модель СБШ на основе композиции унифицированных структурных компонент (УСК). В рамках данной структурной модели были определены основные конструктивные элементы СБШ. На их основе было сформировано полное множество УСК.

Существует ряд различных подходов к классификации СБШ. Для задач моделирования криптопреобразований наибольший интерес среди них представляет группа классификаций, основанных на методологии проектирования. В данном случае под методологией проектирования понимается набор утверждений о степени влияния тех или иных шифрующих преобразований (и их композиций), на результирующие характеристики полученной крнптосхемы.

При создании новых архитектур шифров всегда наблюдается генетическая преемственность между различными методологиями проектирования. Учет этой зависимости приводит к прннциттлъно новому подходу к классификации СБШ. На основе анализа обширного фактического материала автором диссертационной работы был предложен генетический подход к классификации блочных шифров, результаты которого представлены на рис. 1.

Рис. !. Генетическая классификация симметричных блочных криптосхем.

Полученная классификация позволяет разработчику уже на этапе выбора базовой архитектуры шифра заранее '"планировать" некоторые характеристики будущей криптосхемы.

Следующим этапом процесса моделирования после выбора базовой архитектуры, формирующей "каркас" моделируемого криптоалгоритма, является построение структурной модели крнптопреобразования из УСК.

В работе была предложена обобщенная структурная модель СБШ, отражающая перспективный подход к построению криптоалгоритма на основе криптографического ядра, окруженного уровнями некриптографического перемешивания. Данная концепция проектирования повышает стойкость шифра к дифференциальному н линейному методам криптоанализа, использующим свойства первого и последнего раунда шифрования. Была детализирована внутренняя структура криптографического ядра применительно к рассмотренным подклассам СБШ. По результатам детализации г'-ый раунд шифрования итеративного преобразования, реализуемого в рамках криптографического ядра в обобщенной структурной модели СБШ, может быть представлен в виде последовательности следующих шагов:

• выбор подклгоча для /-го раунда шифрования,

• разделение входного информационного блока /-го раунда шифрования на шифрующую и шифруемую части,

• выполнение шифрующего преобразования над шифрующей частью входного информационного блока,

• обмен местами шифруемой и шифрующей частей входного информационного блока.

Структурны!! подход к моделированию криптосхем в настоящее время является наиболее распространенным среди разработчиков шифров. Это обусловлено следующим рядом причин:

• необходимостью оперативной доработки существующих криптоалгоритмов в связи с резким уменьшением стойкости к атакам полным перебором, обусловленной прогрессом в области средств вычислительной техники,

• трудоемкостью разработки криптографически стойких Б-блоков,

• высокими требованиями к стойкости разрабатываемых криптосхем.

Известно, что одной из наиболее насущных потребностей модификации криптоалгоритма на сегодняшний день является адаптация к увеличению размера входного блока и секретного

1 о

ключа. Для некоторых подклассов СБШ структурная модель криптоалгоритма допускает простую модификацию путем дублирования УСК до получения преобразования требуемой размерности.

Б-блоки являются ядром СБШ, во многом определяя их криптографические свойства. Значительное увеличение размеров подстановки является чрезвычайно сложной задачей, поэтому актуальным является использование в новых разработках S-6.no ко в ранее созданных шифров.

Использовании в архитектуре криптоалгоритма УСК с исследованными криптографическими свойствами повышает уровень доверия общественности к дизайну шифра.

Наряду с вышеуказанными, построенная с помощью УСК структурная модель шифра обладает также рядом преимуществ, имеющих большое значение для разработчика шифра:

• простота модификации и замены УСК,

• наглядность описания,

• возможность изолированного тестирования криптографических свойств УСК.

Последнее свойство дает основания полагать, что полученная модель будет обладать свойством верифицируемое™.

Полная совокупность УСК, с помощью которых может быть описан некоторый класс СБШ. составляет базис структурного проектирования для указанного класса криптосхем. Результатом структурного синтеза является выбор рациональной архитектуры криптоалгоритма. Процесс синтеза модели криптоалгоритма может быть описан пятеркой:

где (•) представляет собой функцию проектирования, С - базис проектирования, К - множество правил структурного синтеза, иА/ -совокупность неварьируемых параметров, задающих формальное описание вычислительной среды реализации криптоалгоритма, Сгм -совокупность варьируемых параметров, //-критерии синтеза.

Критерии синтеза представляют собой набор эксплуатационных характеристику, моделируемого криптоалгоритма

у1=тм,ум),у1<ь1, к, е Н,1 -

и соответствующих им ограничений И, в виде числовых значений, которым должны удовлетворять указанные характерис тики.

Общий алгоритм синтеза модели криптолреобразования представляет собой итерационный процесс. включающий последовательность следующих элементарных шагов:

• структурный синтез криптопреобразования, выполняемый разработчиком в элементах базиса проектирования на проблемно-ориентированном языке,

• автоматическое формирование программной модели криптопреобразования по описанию ее структуры.

• выбор системы варьируемых параметров и их начатьных значений,

• определение значений эксплуатационных характеристик и удовлетворение их заданным ограничениям.

Перебором варьируемых параметров в итерационном цикле модель совершенствуется для удовлетворения заданным критериям синтеза.

Во второй глине описывается методика построения и анализа моделей программных реализаций криптопреобразований. В качестве формального описания структурной модели криптопреобразования была предложена денотационная модель, формирующая описание шифра в виде, приближенном к формальной спецификации. Разработан формальный язык для описания денотационных моделей криптоалгоритмов. Предложенное подмножество языка является полным. Разработана многоступенчатая процедура преобразования денотационной модели шифра в процедурную модель, соответствующую фон-неймановской модели вычислителя. Процедура включает проверки на целостность и непротиворечивость полученной модели.

Разработан алгоритм преобразования процедурной модели шифра в последовательность команд гипотетической ЭВМ. С этой целыо была предложена модель гипотетического процессора, учитывающая особенности конвейерной и суперскалярной обработки, характерные для современных процессорных платформ. Разработан интерпретатор последовательности инструкций гипотетического процессора, моделирующий процесс вычислений на гипотетической ЭВМ. В процессе работы данного интерпретатора могут быть получены различные характеристики программной реализации криптосхемы, в частности, определена теоретическая

верхняя граница производительности алгоритма, компактность кода и эффективный параллелизм.

Денотационной моделью шифра называется формальное описание криптоалгоритма в виде последовательности утверждений о значении его различных параметров. Таким образом, полученная модель представляет собой набор полей описания. Каждое ноле состоит из имени некоторого параметра шифра и его текущего значения. Понятие поля универсально - в качестве поля может рассматриваться как указатель на предопределенную (или внешнюю) функцию преобразования, так и различные параметры шифрования, такие, как размер секретного ключа или входного информационного блока.

Язык описания денотационных моделей

криптопреобразований представляет собой формальный язык, грамматика которого может быть представлена в расширенной нотации Бэкуса-Наура. Грамматика языка относится к классу ЬЯО)-грамматик. реализующих метод восходящего разбора с чтением входных символов слева направо и использованием процедуры правостороннего вывода; при этом число предварительно просматриваемых лексических единиц равно 1. Для задания последовательностей и списков используются леворекурсивные правила подстановки. Грамматика языка разработана с учетом особенностей построения программных реализаций криптоалгоритмов, что предполагает наличие интерфейсной и реализационной части в описании шифра.

Преобразование денотационного описания шифра в программный код на выбранном языке программирования реализуется путем применения многоступенчатой процедуры компиляции. Автором работы был разработан универсальный компилятор, позволяющий преобразовывать исходное описание модели шифра в программный код на языке высокого уровня (язык С), а также в последовательность команд гипотетической ЭВМ. Компилятор построен по классической схеме, что предполагает наличие фазы лексического, синтаксического и семантического анализа. На этапе лексического анализа производится разбор входного потока на последовательность лексем, представляющих собой элементарные структурные единицы формального языка. На этапе синтаксического анализа строится дерево разбора и анализируется соответствие описания шифра заданной грамматике. Семантический анализатор проверяет баланс по входам и выходам в

каждой паре последовательных шифрующих преобразований. Сгенерированный программный код на языке С может быть обработан стандартным компилятором Borland С++ 5.02.

Моделирование программной реализации шифра на гипотетической ЭВМ включает определение параметров модели целевой ЭВМ, генерацию соответствующего набора инструкций и интерпретацию полученного кода для определения потенциальной эффективности криптоалгоритма на выбранной аппаратной платформе.

Моделирование аппаратной платформы реализации предполагает определение следующих характеристик целевой ЭВМ:

• тип ЭВМ (VL1W- или суперскалярная архитектура),

• набор команд.

• структура и состав регистров,

• методы адресации,

• размер кэша данных и кэша инструкций,

• глубина конвейера,

• количество дублированных функциональных элементов,

• особенности одновременного выпуска команд.

• время выполнения элементарных операции и задержки.

В ходе интерпретации псевдокода, представляющего собой

последовательность команд гипотетической ЭВМ. для разрешения конфликтов по управлению используются различные методы динамической оптимизации.

Третья глава посвящена разработке алгоритмов поиска рациональных решений на множестве синтезируемых программных моделей шифров. Предложена методика построения семейства интегральных опенок качества криптопреобразованин, учитывающая особенности их конкретной реализации. Данная методика основана на построении вектора оценки на множестве независимых критериев и последующего применения процедуры линейной аддитивной свертки с весовыми коэффициентами, определяемыми методами экспертного оценивания. Результаты анализа могут быть использованы для определения множества допустимых решений, удовлетворяющих заданным ограничениям, а также для поиска о птимал ьного реше ния.

К настоящему моменту отечественными и зарубежными криптографами разработано и применяется для решения различных исследовательских и практических задач несколько десятков СБШ.

В этих условиях ятя разработчика СКЗИ неизбежно встает проблема выбора шифра, наилучшим образом отвечающего требованиям конкретной прикладной задачи. Проведение длительной процедуры опытного тестирования для каждого из потенциальных алгоритмов-кандидатов может потребовать значительных затрат времени. По этой причине наилучшим решением является применение различных методов экспресс-оценивания, позволяющих прогнозировать поведение шифра в интересующих условиях на основе результатов моделирования.

При многокритериальном анализе моделей криптоалгоритмов для большинства известных методов поиска решений требуется обобщение выходных показателей в виде единого функционала. Наличие подобного функционала позволяет для каждой точки (вектора) рассматриваемого пространства свойств получать единую оценку и тем самым осуществлять поиск рациональных решений с использованием известных методов.

В качестве подобного функционала в данной работе была выбрана линейная композиция взвешенных критериев оценивания

/

где к, - весовой коэффициент. 6',(Х) - критерий оценивания.

Для выбора 6", была проведена систематизация различных известных критериев, получивших отражение в открытой литературе. Исследовалась их функциональная и статистическая взаимозависимость, по результатам исследования было выработано множество независимых критериев. Полученный набор критериев является базисным.

Значения к, определяются методами экспертного оценивания. Групповая оценка для /'-го критерия формируется в количественном выражении по непрерывной шкале 0 - 1 с применением следующей реккуренгной процедуры:

т

к!=ЦеаТ!~*>1 = 1,2,...,«;/= 1,2,...

(=1

где е„ (i=l,2....,n; j=l,2,...,m) есть оценка значимости ¿-го критерия /-м экспертом. Полученные значения для весов, определяют относительный вклад каждого критерия оценивания в общую интегральную оценку.

Четвертая глава содержит описание разработанного инструментария МАРК (Моделирования и Анализа программных Реализаций Криптографических преобразований). Рассматриваются составляющие его компоненты, интерфейсные функции и правила взаимодействия при выполнении системных операций. Предлагается методика применения разработанного инструментария для создании новых и модификация существующих криптоалгоритмов.

Главной задачей разрабатываемого инструментария является организация некоторого "каркаса", реализующего набор общих концептуальных принципов моделирования и анализа на примере СБШ, но при этом имеющего широкие возможности наращивания и модификации компонент.

Ядро системы состоит из диспетчера задач и трех функциональных модулей, осуществляющих управление ресурсами вычислительной системы в процессе моделирования.

Модуль интерфейса реализует графический интерфейс приложения с пользователем посредством развитой системы меню и диалоговых окон, а также предоставляет средства сопряжения с внешними по отношению к системе модулями. Взаимодействие с внешними криптографическими библиотеками осуществляется но специфицированному интерфейсу, с внешними приложениями - по технологии OLE. Менеджер памяти обеспечивает файловый ввод-вывод и работу с внутренними базами данных. Исполнительный модуль реализует набор сервисных функций необходимых разработчику криптоалгоритма в процессе моделирования и анализа. Передача управления между компонентами системы осуществляется посредством диспетчера задач.

В основу создания данного инструментария была положена объектно-ориентированная технология разработки программного обеспечения. Использование объектов и классов позволяет при проектировании структур данных оперировать непосредственно понятиями предметной области.

Пример объектно-ориентированной структуры представлен на рис. 2.

SPL_Cipher ( SPN_Cipher ^

(BASE_BLK_CipherJk—( Feisteljiiphei^i«—( UBF_Cipher ) (j_XOR ) SQ_Cipher) ^ BF_Cipher

Hash_Modul BLK_Hash_Module)

\_

StreartTcipherJ}«—(BLK_Stream_Ciphe/)

) /(T-AND ) / /Ст-ми|-}

I / /

/

Substitution^

T OR

^Simple_Transfofmation ^—^ Permutation )

Ш^иг)

mos^D

Functional_Transtormation —^ T_Operation —(J_SHIFT ^

T Function

3

\ (t_rotate) kt_ddr )

Рис. 2. Иерархия классов встроенной криптографической библиотеки инструментария МАРК.

Иерархия классов встроенной криптографической библиотеки инструментария МАРК отражает генетические зависимости между различными классами шифрующих преобразований. Реализация принципа множественного наследования предполагает наличие у класса-потомка набора свойств, характерных для нескольких классов-предков. Это имеет место в случае классов BLK J lash Module и BLK._Stream Cipher.

Организация криптографической библиотеки в виде библиотеки классов упрощает разработку моделей, предоставляя разработчику шифра готовые шаблоны типовых архитектур.

В пятой главе описываются примеры практического применения разработанного программного комплекса для решения прикладных задач в двух проектах.

Первый проект представляет собой курс лабораторных работ по дисциплине "Криптографические методы защиты информации", реализованный в рамках учебного процесса на факультете "'Информационная Безопасность" МИФИ. В лабораторный

практикум входит 4 лабораторных работы, освещающих следующие темы:

• методы проектирования СБШ;

• исследование свойств СБШ;

• определение теоретической верхней границы производительности СБШ методом измерения критического пути;

• построение интегральной оценки качества СБШ в соответствии с требованиями конкретной прикладной задачи.

Работы расположены в порядке. обеспечивающем проведение исследований по принципу "сквозного примера".

В задачу второго проекта входил выбор и верификация средств криптографической защиты при организации защищенного информационного обмена на базе корпоративной сети Департамента государственной аттестации научных и научно-педагогических работников Минобразования России. Работа проводилась в рамках проекта по созданию информационно-аналитического комплекса в системе послевузовского образования '"аспирантура (докторантура) — диссертационный совет - ВАК России".

Понятие безопасности информации в корпоративной сети Департамента государственной аттестации научных и научно-педагогических работников Минобразования России включает:

• защиту информации от несанкционированного доступа, как со стороны, так и внутри Департамента. Должны быть исключены как несанкционированные получение и копирование информации, так и ее изменение (искажение, неправомерное уничтожение или внедрение).

• защиту информации от потери или искажения по аппаратным причинам (сбои, перегрузки и т.п.),

• поступление информации не по адресу.

Наиболее эффективным решением задачи обеспечения целостности и конфиденциальности данных, передаваемых по открытым каналам связи, на сегодняшний день является применение УРЫ-технологий. В качестве программного решения для организации виртуальной частной сети в Департамента государственной аттестации научных н научно-педагогических работников Минобразования России по соображениям стоимости и совместимости было выбрано программное решение на базе серии УРИ-продуктов ЗАСТАВА компании "Элвис+". Особенностью \ФМ-продуктов ЗАСТАВА является отсутствие встроенных средств

криптографической поддержки. При этом для реализации различных функций криптографической зашиты используются внешние по отношению к VPN ЗАСТАВА криптомодули, работающие по открытому интерфейсу OpenCryptoAPl.

При формировании перечня требований к криптографическим средствам защиты, применяемым во встраиваемых криптографических модулях VPN ЗАСТАВА, был проанализирован целый ряд конкретных показателей, параметров и характеристик обрабатываемых данных, включая их суммарный объем, внутреннюю структуру, методы обработки и требования к защищенности. Другим аспектом анализа являлась структура входящих и исходящих информационных потоков корпоративной сети.

На основе сформированного перечня требований средствами инструментария МАРК было произведено ранжирование различных СБШ с точки зрения пригодности для решения конкретных прикладных задач зашиты. Для выбранного криптоалгоритма было произведено тестирование оптимизированной программной реализации на соответствие эталонному решению, выработанному с помощью средств моделирования криптопреобразований инструментария МАРК.

В Заключении дается оценка эффективности применения предложенных методов моделирования и анализа программных реализаций криптопреобразований и рассматриваются перспективы развития работ в данном направлении. Проведенные исследования и разработки позволяют сделать следующие выводы:

• Исследованы различные подходы к проектированию СБШ, проведен сравнительный анализ типовых архитектур СБШ.

• Построена обобщенная классификация СБШ, основанная на методологии проектирования.

• Разработан формальный язык описания структурных моделей криптопреобразований.

• Разработан алгоритм преобразования формального описания структурной модели криптопреобразования в профаммную модель.

• Разработана методика построения семейства интегральных оценок качества криптопреобразований.

• Разработан универсальный инструментарий моделирования, анализа и оценки программных реализаций криптопреобразований.

Публикации но теме диссертации

1. Минаева E.B. AES — новый стандарт шифрования (обзор).//Безопасность информационных технологий, As 2. М.: МИФИ, 1999, с. 31-46.

2. Минаева Е.В. Причины ненадежности криптографическою ПО. //Безопасность информационных технологий, „М> 3. М.: МИФИ. 1999, с.72 - 78.

3. Минаева Е.В., Петрова Т.В. Комплексный подход к решению задач обеспечения безопасности современных информационных систем. Труды семинара "Информационная безопасность - Юг РоссииТаганрог, 1999, с.25 - 27.

4. Минаева Е.В. Современные подходы к конструированию оптимальных атгоритмов генерации расширенного ключа в итеративных блочных шифрах. //Безопасность информационных технологий, Лг2 2, М.: МИФИ, 2000, с.24 - 26.

5. Минаева Е.В. О методе построения интегральных оценок надежности симметричных блочных криптоалгоритмов. Труды семинара "Информационная безопасность - Юг России'', Таганрог, 2000, с. 161 - 169.

6. Минаева Е.В. Разработка инструментария моделирования программных реализаций симметричных блочных криптопреобразований. В сб. тезисов конференции "Методы и технические средства обеспечения безопасности информации" 29-30 октября, Санкт-Петербург. 2000, с.118 - 120.

7. Minaeva Е.В. Using Numerical Methods lor Non-Linear Approximation of Symmetric Block Ciphers. Proceedings of the CSIT'2000, v.2, USATU Publishers, 2000, pp.69 - 74.

8. Малюк A.A., Минаева E.B., Петров B.A. Проблемы моделирования процессов и систем зашиты информации. Тезисы докладов Международной конференции "Региональная информатика" РИ-98. С.-Петербург, 1998, с.

Оглавление автор диссертации — кандидата технических наук Минаева, Елена Вячеславовна

ВВЕДЕНИЕ. ПОСТАНОВКА ЗАДАЧИ.

ГЛАВА 1. ТЕОРЕТИЧЕСКИЕ ОСНОВЫ МОДЕЛИРОВАНИЯ

КРИПТОПРЕОБРАЗОВАНИЙ.

1.1 Постановка задачи синтеза структурной модели криптопреобразования.

1.2 Основные классы СБШ.

1.3 Выбор проблемно-ориентированного базиса структурного проектирования СБШ.

1.4 Обобщенная структурная модель СБШ.

1.5 Критерии синтеза структурных моделей СБШ. 45 Выводы

ГЛАВА 2. ИНЖЕНЕРНЫЕ ОСНОВЫ МОДЕЛИРОВАНИЯ ПРОГРАММНЫХ

РЕАЛИЗАЦИЙ КРИПТОПРЕОБРАЗОВАНИЙ.

2.1. Постановка задачи моделирования программных реализаций криптопреобразованнй.

2.2. Формальный язык описания структурных моделей СБШ.

2.3 Моделирование среды реализации криптоалгоритма.

2.4 Алгоритм трансляции денотационной модели СБШ в программную модель.

2.5 Организация процесса вычислений. 69 Выводы

ГЛАВА 3. СРАВНИТЕЛЬНЫЙ АНАЛИЗ КАЧЕСТВА ПРОГРАММНЫХ

РЕАЛИЗАЦИЙ КРИПТОАЛГОРИТМОВ.

3.1 Постановка задачи получения комплексных оценок качества программных реализаций криптоалгоритмов.

3.2 Основные свойства криптоалгоритмов.

3.3 Критерии оценивания качества криптоалгоритмов.

3.4 Методика формирования интегральной оценки качества криптопреобразования. 98 Выводы

ГЛАВА 4. РЕАЛИЗАЦИЯ АЛГОРИТМОВ МОДЕЛИРОВАНИЯ И АНАЛИЗА В РАМКАХ ИНСТРУМЕНТАРИЯ МАРК.

4.1 Архитектура инструментария МАРК.

4.2 Форматы данных.

4.3 Методика моделирования и анализа программных реализаций криптоалгоритмов.

4.4 Возможности и ограничения инструментария 122 Выводы

ГЛАВА 5. ПРАКТИЧЕСКОЕ ПРИМЕНЕНИЕ ИНСТРУМЕНТАРИЯ МАРК

5.1 Внедрение инструментария МАРК в учебном процессе на факультете "Информационная Безопасность" МИФИ.

5.2 Применение инструментария МАРК при организации защищенного информационного обмена в корпоративной сети Департамента государственной аттестации научных и научно-педагогических работников Минобразования России.

Выводы

Введение 2000 год, диссертация по информатике, вычислительной технике и управлению, Минаева, Елена Вячеславовна

Увеличение мощности вычислительных систем вместе с их удешевлением привело к широкому использованию компьютерной техники во многих сферах человеческой деятельности. Внедрение современных информационных технологий в системы управления и информационного обеспечения производственной и научной сферы создало благоприятную обстановку для злоумышленников в плане доступа к конфиденциальной информации и ее незаконного распространения, нарушения авторских прав, несанкционированного вмешательства в процессы обработки информации и принятия решений. Массовое использование импортных средств вычислительной техники и технологий, привлечение к установке и обслуживанию информационных систем иностранных специалистов создало предпосылки для внедрения систем регулярного несанкционированного контроля информационных процессов. Рост ценности информации и информатизация общества ставят вопросы разграничения доступа к информации и вопросы защиты от компьютерного терроризма, как одной из составляющих национальных интересов государства в информационной сфере [46, 15].

Активизация компьютерных преступлений обусловлена целым рядом объективных причин [24,45]:

• переход от традиционной "бумажной" технологии хранения и передачи информации к цифровой с использованием современных средств вычислительной техники;

• тенденция к интеграции вычислительных систем, создание глобальных сетей и расширение доступа к информационным ресурсам;

• увеличение сложности программных средств и связанное с этим уменьшение их надежности.

В этих условиях особое значение приобретает организация эффективных мер противодействия угрозам безопасности информации с учетом новейших компьютерных технологий ее обработки, что, в свою очередь, включает развитие отечественного производства аппаратных и программных средств защиты информации и методов контроля за их эффективностью [25].

По способам осуществления все меры обеспечения безопасности информационных систем подразделяются на правовые, морально-этические, административные, физические и технические [8]. Технические (аппаратно4 программные) меры защиты основаны на использовании различных электронных устройств и специальных программ, входящих в состав автоматизированной системы и выполняющих (самостоятельно или в комплексе с другими средствами) различные функции защиты.

В настоящее время на рынке представлено большое разнообразие программно-технических средств защиты, которые условно можно разделить на несколько групп:

• средства, обеспечивающие разграничение доступа к информации в автоматизированных системах;

• средства, обеспечивающие защиту информации при передаче ее по каналам связи;

• средства, обеспечивающие защиту от утечки информации по акустическим и электромагнитным полям, возникающим при работе технических средств автоматизированных систем;

• средства, обеспечивающие защиту от воздействия программ-вирусов;

• материалы, обеспечивающие безопасность хранения, транспортировки носителей информации и защиту их от копирования.

Задачи защиты от угроз, связанных с несанкционированным доступом (НСД) к информации, возлагаются на комплекс программно-технических средств защиты, реализуемый в рамках системы защиты информации от несанкционированного доступа (СЗИ НСД), состоящей из следующих четырех подсистем [1]:

• управление доступом;

• регистрации и учета;

• криптографической;

• обеспечения целостности.

Применение современных методов криптографического преобразования данных является одним из наиболее эффективных средств обеспечения конфиденциальности, целостности и подлинности информации в процессе ее хранения, обработки и передачи по каналам связи. Использование криптографических средств защиты в совокупности с необходимыми техническими и организационными мероприятиями позволяет обеспечить надежную защиту информации в автоматизированных системах от широкого спектра угроз [39].

Применение криптоалгоритмов для защиты информации основано на следующих предположениях [36]:

• может быть выработана секретная информация, называемая секретным ключом и имеющая сравнительно небольшой объем;

• секретный ключ может быть распределен между двумя абонентами по защищенному каналу таким образом, чтобы он не стал известным посторонним лицам;

• секретным ключом обладают только законные пользователи криптосистемы, которые не разглашают его;

• обеспечивается целостность вычислителя, т.е. устройство шифрования защищено от подмены и от модифицирования;

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

В настоящее время к средствам криптографической защиты информации (СКЗИ) в компьютерных системах (КС) относят аппаратные, программно-аппаратные и программные средства, реализующие криптографические алгоритмы преобразования информации с целью [14]:

• защиты информации при ее обработке, хранении и передаче по транспортной среде КС;

• обеспечения достоверности и целостности информации (в том числе с использованием алгоритмов электронной цифровой подписи (ЭЦП)) при ее обработке, хранении и передаче по транспортной среде КС;

• выработки информации, используемой для идентификации и аутентификации субъектов, пользователей и устройств;

• выработки информации, используемой для защиты аутентифицирующих элементов защищенной КС при их выработке, хранении, обработке и передаче.

Как правило, СКЗИ функционируют в автоматизированных системах как самостоятельное средство, однако в отдельных случаях они могут функционировать в составе средств разграничения доступа как функциональная подсистема для усиления защитных свойств последних [4, 31].

Расширение области приложения криптографии породило многообразие криптоалгоритмов, к которым предъявляются высокие требования по надежности, безопасности, быстродействию и удобству в эксплуатации [17]. При этом значительную роль среди них играет требование "прозрачности" - система должна быть удобна в эксплуатации и не снижать производительности работы конечных 6 пользователей. Последнее предполагает, что все процессы преобразования информации с целью ее закрытия должны выполняться в режиме реального времени.

Одной из важных тенденций развития СКЗИ на современном этапе является возрастание роли программных механизмов защиты по сравнению с аппаратными. Это обусловлено следующими факторами:

• в последние годы прогресс в области средств вычислительной техники привел к значительному росту производительности вычислительных систем, а также к резкому повышению объема и быстродействия запоминающих устройств;

• возникающие проблемы в области защищенного информационного обмена требуют использования криптографических протоколов со сравнительно высокой вычислительной сложностью, эффективная реализация которых требует использования ресурсов ЭВМ;

• легкость тиражирования чисто программных СКЗИ открывает широкие возможности для их массового внедрения.

Данная тенденция нашла свое отражение в области разработки современных криптоалгоритмов. С конца 1993 г. ежегодно проводится международная конференция по быстрым программным шифрам (FSE - Fast Software Encryption). Зарубежными исследователями предложен ряд программно-ориентированных криптоалгоритмов [70, 76, 117, 118, 130, 131], подвергшихся всестороннему исследованию в открытой литературе. Особенностью скоростных программных шифров является ориентация на специфику обработки данных в компьютерных системах, что позволяет получить высокие скорости шифрования при использовании микропроцессоров широкого применения [37]. Наибольшее практическое значение среди программных шифров имеют симметричные блочные шифры (СБШ), сочетающие высокую скорость преобразования информации с возможностью обеспечения независимого шифрования отдельных блоков данных. Возможность определения для данных криптоалгоритмов различных режимов шифрования (СВС, CFB, OFB и др. [18]) позволяет использовать их также в качестве хэш-функции, поточного шифра или генератора псевдослучайной последовательности, что значительно расширяет круг сфер приложения.

Прогресс в области информационных технологий ставит перед прикладной криптографией целый круг новых задач. Частая смена программно-аппаратных платформ и непрерывное повышение производительности вычислительных систем ставят задачу быстрого проектирования и оперативной доработки криптоалгоритмов в соответствии с изменившимися условиями их эксплуатации. При этом большое значение приобретает разработка параметризованных алгоритмов, а также алгоритмов, имеющих возможность адаптации к увеличению длины секретного ключа и входного информационного блока. Происходящие изменения в архитектуре ЭВМ, затрагивающие набор команд, разрядность данных и механизмы распараллеливания вычислений могут оказывать значительное влияние на результирующие параметры эффективности криптоалгоритмов, ориентированных на программную реализацию. В данных условиях повышается роль средств моделирования характеристик программных реализаций криптоалгоритмов на целевой ЭВМ.

В процессе программной реализации криптографических алгоритмов и, в особенности, при применении различных процедур оптимизации программного кода для отдельных элементов шифрующего преобразования возникает задача проверки соответствия полученной реализации формальной спецификации криптоалгоритма. Наиболее распространенным методом решения данной задачи является использование набора тестовых примеров-эталонов, что требует, в свою очередь, разработки соответствующих средств формирования эталонных решений [16].

Актуальность задачи моделирования и анализа программных реализаций криптографических преобразований обусловлена необходимостью автоматизации процедур проектирования и верификации эффективных программных реализаций криптоалгоритмов и соответствует текущим потребностям прикладной криптографии на современном этапе ее развития.

Методология и теоретическая база изучения проблем, возникающих при проектировании программных реализаций криптографических преобразований, в настоящее время только формируется. Данная работа опирается на результаты исследований как российских, так и зарубежных специалистов в области защиты информации, таких как Герасименко В.А., Зегжда Д.П., Малюк A.A., Щербаков А.Ю., C.Adams, E.Biham, J. Daemen, L. Knudsen, B. Preneel, B.Schneier и др. и развивает их отдельные положения применительно к задаче формализации подходов к построению и анализу моделей программных реализаций криптопреобразований, представляющей одно из направлений исследований в области развития и совершенствования средств криптографической защиты в рамках решения общей проблемы обеспечения информационной безопасности.

Проблема моделирования и анализа свойств программных реализаций криптографических преобразований является одним из новых направлений исследований в прикладной криптографии. По этой причине число публикаций по этому вопросу в открытой печати является достаточно скудным. Наиболее значительной работой в области моделирования, посвященной исследованию свойств программных реализаций криптоалгоритмов на различных аппаратных платформах, является [74]. В работе предложена методика моделирования программных реализаций алгоритмов блочного шифрования с учетом особенностей аппаратной архитектуры целевых ЭВМ; на основе данных, полученных в результате моделирования, проводится сравнительный анализ потенциальной эффективности криптоалгоритмов на перспективных аппаратных платформах. Недостатком исследования является ограничение диапазона рассматриваемых процессорных архитектур VLIW-архитектурами, а также снижение качества моделирования за счет пренебрежения задержками, возникающими в процессе обработки команд.

Работ в области анализа значительно больше. Это обусловлено необходимостью определения критериев рационального выбора среди огромного множества существующих на сегодняшний день криптоалгоритмов. Большая часть работ основана систематизации информации о различных характеристиках криптоалгоритмов и определения на их основе критериев оценки некоторых свойств криптоалгоритмов. Так, в работе Кнудсена [100] была предложен критерий "практической стойкости" для сетей Фейстеля, позволяющий оценить стойкость криптоалгоритмов к линейному [96, 102, 115, 120] и дифференциальному [62, 63, 103, 108] методам криптоанализа в предположении ограничения возможностей криптоаналитика некоторыми "реальными возможностями". В результате исследования обобщенных сетей Фейстеля, Шнайером [132] были выделены некоторые характеристики полного цикла шифрования входного информационного блока (представляющего собой последовательность раундовых преобразований), позволяющие получить количественные оценки стойкости криптоалгоритма к дифференциальному и линейному криптоанализу, получившие название "степени перемешивания" {rate of confusion) и "степени рассеивания"(га/е of diffusion). Существует также ряд других работ [55, 56, 80, 83, 84, 88, 89, 95, 97, 101, 116, 124, 132, 137, 138], посвященных проблеме определения критериев оценки криптографических свойств шифрующих преобразований.

В последнее время наблюдается рост публикаций в области формирования критериев оценивания реализационных свойств криптопреобразований. Так, согласно Глэдману [84] значительная доля информации о потенциальной эффективности программной реализации криптоалгоритма может быть получена непосредственно из его спецификации. Он выделяет следующие направления оценки эффективности криптоалгоритмов:

• эффективность спецификаций шифра в перспективе реализации;

• принципиальная возможность корректной реализации криптоалгоритма на основе данных только спецификации;

• усилия, требуемые для достижения алгоритмом разумного уровня эффективности в выбранном окружении.

В работе [74] была предложена методика определения теоретических верхних границ производительности криптосхем на основе измерения программного кода, соответствующего "критическому пути". Критический путь представляет собой путь через алгоритм, от открытого текста к шифртексту, который имеет наибольшее взвешенное значение счетчика инструкций, где взвешивание производится по числу циклов задержки, ассоциированных с каждой инструкцией на пути.

Основными недостатками перечисленных работ является получение некоторых частных решений, не позволяющих получить целостное представление об исследуемом криптоалгоритме. Так, исследование криптографических свойств 8-блоков в общем случае не позволяет сделать вывод о криптографической стойкости шифра в целом. Наличие возможности вычисления раундовых подключей "на лету" [95] оказывает влияние на реализационные свойства криптоалгоритма в зависимости от размера памяти, занимаемой основным кодом. Таким образом, для реальных прикладных задач изолированная оценка свойств криптоалгоритма не может быть эффективно применена.

Преимущества интегрированного подхода к оценке качества криптоалгоритмов были отмечены в [124]. Однако, предложенный в данной работе "универсальный" подход к анализу симметричных алгоритмов блочного шифрования обладает существенным недостатком, заключающимся в том, что обеспечение приемлемых характеристик шифра в широком диапазоне различных сфер его применения неизбежно приводит к компромиссным решениям. Полученный в результате подобного отбора криптоалгоритм не будет являться оптимальным при использовании его в рамках конкретной прикладной задачи. Необходим комплексный анализ, учитывающий специфику конкретного применения.

В данной работе развиваются рассмотренные подходы к моделированию и анализу свойств криптопреобразований с учетом устранения указанных недостатков. Обобщение различных подходов к моделированию и анализу программных реализаций криптопреобразований на конструктивной основе предполагает системный анализ проблемы в целом [26]. Автором данной диссертационной работы предложен систематический подход к решению проблемы моделирования и анализа программных реализаций криптографических преобразований, основанный на теории моделирования и анализа сложных систем [23, 28, 50]. Согласно данной теории моделирование представляет собой совокупность двух процессов:

• построение модели исследуемого объекта,

• имитация процесса функционирования модели с целью получения необходимых характеристик объекта.

При этом моделируемый объект (криптоалгоритм) представляется в виде некоторого аналога, отражающего для определяемых эксплуатационных характеристик объекта функциональную зависимость между входами и выходами реального криптоалгоритма, а определение значений характеристик осуществляется путем реализации данных функциональных зависимостей при различных значениях параметров реального криптоалгоритма и внешней среды (программно-аппаратной среды реализации криптоалгоритма).

В задачу анализа входит выработка утверждений о свойствах моделируемого криптоалгоритма, сформированных на основе набора известных критериев с использованием характеристик, полученных в результате моделирования.

Моделирование программных реализаций криптографических предполагает построение и исследование характеристик программных моделей криптоалгоритмов. Под программной моделью в данном случае понимается совокупность программных средств, реализующих функцию криптографического преобразования данных исследуемого криптоалгоритма. Данный набор средств однозначно определяется параметрами программно-аппаратной среды и структурой моделируемого криптоалгоритма. Программная модель может представлять собой совокупность операторов языка программирования высокого уровня или последовательность команд гипотетической ЭВМ. Основной задачей, решаемой в процессе создания программной модели, является точное соответствие полученной модели формальной спецификации моделируемого криптопреобразования. При этом полученный программный код в общем случае не является оптимальным.

Имитация процесса функционирования программной модели криптоалгоритма предполагает разработку интерпретатора программной модели. Интерпретатор программной модели представляет собой совокупность алгоритмов и средств преобразования программной модели во множество эксплуатационных характеристик криптоалгоритма с учетом влияния особенностей среды реализации криптоалгоритма. При этом качество моделирования определяется возможностью максимального учета всех факторов, имеющих место в реальных вычислительных системах и оказывающих влияние на полученные характеристики. Примером подобных факторов могут быть задержки, возникающие из-за различных конфликтов в аппаратуре при параллельной обработке данных; а также перераспределение процессорного времени, характерное для многозадачных систем.

Главной целью моделирования является получение количественных оценок эксплуатационных характеристик программных реализаций криптоалгоритмов на основе имитации процесса вычислений на соответствующих программных моделях. При этом значения полученных характеристик должны соответствовать реальным данным, имеющим место при практической реализации криптоалгоритма с точностью, обеспечивающей ранжирование криптоалгоритмов по заданным критериям. Результатом моделирования процесса вычислений является получение конкретных значений характеристик моделируемого криптоалгоритма.

Учет влияния внешних факторов на процесс вычислений осуществляется путем построения модели вычислительной среды, определяющей условия эксплуатации криптоалгоритма. Под вычислительной средой будем понимать совокупность программных и аппаратных средств, функционирующих на целевой ЭВМ. При этом главную роль для определения реализационных характеристик моделируемого криптопреобразования играет выбор процессорной архитектуры.

Множество критериев определяет диапазон изменения значений характеристик для каждого из определяемых свойств моделируемого криптоалгоритма. При нахождении значения характеристик в диапазоне, определенным заданным критерием, соответствующий криптоалгоритм будет обладать заданным свойством.

Множество оценок свойств криптопреобразований определяет "профиль" криптоалгоритма с точки зрения конкретных условий его применения. При этом решающее значение имеет определение качества криптопреобразования, как меры соответствия требованиям конкретной прикладной задачи. Введение обобщенного понятия качества моделируемого криптопреобразования позволяет задать отношение порядка на множестве исследуемых криптоалгоритмов и осуществлять рациональный выбор решений с учетом специфики прикладных задач.

Таким образом, решение проблемы моделирования и анализа программных реализаций криптографических преобразований подразумевает решение следующих подзадач:

• разработку методов и средств построения структурной модели криптоалгоритма;

• разработку языка спецификации (формализованного описания) полученной модели;

• разработку алгоритма трансляции спецификации криптоалгоритма в соответствующую программную модель, учитывающую особенности программной реализации криптоалгоритма на конкретной программно-аппаратной платформе;

• создание инструментальных средств имитации процесса вычислений на полученной программной модели для получения значений различных характеристик исследуемого криптоалгоритма;

• разработка средств интерпретации и оценки полученных результатов.

Формальная постановка задачи моделирования и анализа программных реализаций криптографических преобразований может быть представлена семеркой Тг, I, Р, Я, и> (1), где С -совокупность методов и средств построения структурной модели исследуемого криптопреобразования, Тг - алгоритмы трансляции формализованного описания структурной модели криптопреобразования в соответствующую программную модель, / - совокупность процедур имитации процесса вычислений, - множество характеристик исследуемого криптоалгоритма (цели моделирования), Р -совокупность методов и средств моделирования среды реализации криптопреобразований, Я - множество критериев оценивания свойств криптопреобразований, и - множество комплексных оценок. Определение всех компонент указанной шестерки является существом решаемой задачи.

Данная диссертационная работа посвящена повышению безопасности информационно-вычислительных систем критического назначения посредством решения задачи верификации и оптимизации применяемых программных средств криптографической защиты. Для решения этой задачи была разработана совокупность программных средств и методов моделирования и анализа программных реализаций криптографических преобразований, реализованная на примере симметричных блочных шифров (СБШ).

Исследования в области создания СБШ с оптимальными характеристиками активно проводились как в нашей стране [3-7, 16, 32, 36, 37], так и за рубежом [56, 75, 87, 88, 100, 128, 132, 135]. При этом значительное внимание уделялось методам построения блоков подстановок на двоичных векторах (Б-блоков) [55, 71, 83, 87-89, 97, 137, 138]. В результате многолетнего всестороннего анализа широкого спектра блочных криптоалгоритмов был сформулирован ряд критериев априорной оценки качества криптопреобразований [64, 75, 101]. Данные работы подготовили научно-методологический базис для создания системы моделирования и анализа программных реализаций СБШ.

Целью исследования, проводимого в рамках данной работы являлась разработка и реализация методов синтеза и анализа моделей программных реализаций криптографических преобразований для создания, модификации и тестирования СБШ, применяемых в современных СКЗИ.

Для достижения поставленной цели были решены следующие задачи:

• проведена классификация СБШ в соответствии с методологией создания;

• разработана обобщенная структурная модель СБШ, позволяющая синтезировать произвольный СБШ из унифицированных структурных компонент с применением операций композиции и задания рекурсивного определения;

• разработан формальный язык описания структурных моделей СБШ, позволяющий формировать описание модели в виде, приближенном к формальным спецификациям;

• автоматизирована процедура преобразования формального описания модели шифра в программный код на языке высокого уровня и набор команд гипотетической ЭВМ;

• реализован интерпретатор модели гипотетической ЭВМ, позволяющий получить теоретические оценки эффективности программной реализации моделируемого криптоалгоритма на выбранной аппаратной платформе;

• предложена методика построения семейства интегральных оценок качества симметричных блочных криптопреобразований;

• в рамках предложенного подхода реализован программный комплекс моделирования и анализа программных реализаций симметричных блочных криптопреобразований.

Основным научным результатом работы является разработка методологического базиса проектирования и анализа широкого класса СБШ. В ходе исследований был получен ряд результатов, характеризующихся научной новизной, а именно:

• предложен новый подход к классификации СБШ, учитывающий генетические зависимости, возникающие в процессе проектирования между различными классами СБШ;

• разработан формальный язык описания структурных моделей СБШ, формирующий описание криптопреобразования в виде, приближенном к спецификации;

• разработана модель гипотетической ЭВМ, позволяющая учитывать последние достижения в области создания аппаратного и программного обеспечения вычислительных систем;

• предложена систематизация критериев оценивания криптографических преобразований с точки зрения оцениваемых свойств;

• предложена методика получения интегральных оценок качества криптопреобразований в соответствии с требованиями конкретной прикладной задачи;

• предложен интегрированный подход к созданию систем моделирования программных реализаций криптографических преобразований, заключающийся в объединении в рамках единого инструментария различных средств поддержки разработки.

Автором диссертационной работы на защиту выносится:

• совокупность алгоритмов и средств синтеза структурных моделей криптопреобразований;

• формальный язык описания структурных моделей криптопреобразований;

• совокупность алгоритмов и средств моделирования аппаратной платформы реализации криптопреобразований;

• методика формирования семейства интегральных оценок качества моделируемых криптопреобразований.

Результаты, представленные в работе, могут быть использованы для решения различных научно-исследовательских задач, а также в учебном процессе. Применение инструментария моделирования и анализа в учебном процессе при подготовке специалистов соответствующего профиля может повысить эффективность обучения и степень наглядности представления учебного материала.

Предложенный в работе интегрированный подход, заключающийся в объединении в рамках единого инструментария различных средств поддержки разработки программных реализаций криптопреобразований, позволяет решить целый ряд задач, имеющих важное практическое значение, а именно:

• разработки и анализа свойств новых криптоалгоритмов,

• модификации и усовершенствования существующих криптоалгоритмов в связи с изменившимися условиями их эксплуатации,

• получения эталонных решений для тестирования программных реализации криптоалгоритмов на соответствие формальной спецификации,

• выработки рекомендаций по выбору средств криптографической защиты, наиболее полно отвечающих потребностям конкретной прикладной задачи.

Работа состоит из пяти глав.

В первой главе определяется класс СБШ и его роль в обеспечении защиты данных, приводится обзор известных на сегодняшний день методов построения СБШ, формулируется задача по разработке общего алгоритма синтеза структурных моделей СБШ.

На основе анализа различных подходов к классификации СБШ предложен усовершенствованный метод классификации, отражающий генетические зависимости между различными подклассами СБШ, возникающие в процессе проектирования. Для каждого из выделенных подклассов СБШ изучены основные свойства, указаны преимущества и недостатки полученных решений. Предложена обобщенная структурная модель СБШ на основе композиции унифицированных структурных компонент (УСК). В рамках данной структурной модели определены основные структурные компоненты СБШ. На их основе сформировано полное множество УСК.

Во второй главе описывается методика трансляции структурной модели криптопреобразования в программную модель и исследование характеристик полученной программной модели. В качестве формального описания структурной модели криптопреобразования была предложена денотационная модель, формирующая описание шифра в виде, приближенном к формальной спецификации. Разработан формальный язык для описания денотационных моделей криптоалгоритмов. Предложенное подмножество языка является полным. Разработана многоступенчатая процедура преобразования денотационной модели шифра в процедурную модель, соответствующую фон-неймановской модели вычислителя. Процедура включает проверки на целостность и непротиворечивость полученной модели.

Разработан алгоритм преобразования процедурной модели шифра в последовательность команд гипотетической ЭВМ. С этой целью была предложена модель гипотетического процессора, учитывающая особенности конвейерной и суперскалярной обработки, характерные для современных процессорных платформ. Разработан интерпретатор последовательности инструкций гипотетического процессора, моделирующий процесс вычислений на гипотетической ЭВМ. В процессе работы данного интерпретатора могут быть получены различные характеристики программной реализации криптосхемы, в частности, определена теоретическая верхняя граница производительности алгоритма, компактность кода и эффективный параллелизм.

Третья глава посвящена разработке методики построения семейства интегральных оценок, позволяющих выработать рациональное решение как при создании новых криптоалгоритмов, так и при использовании уже существующих в различных прикладных СКЗИ. Для этих целей было рассмотрено множество различных критериев оценки свойств криптоалгоритмов, проведена их системная классификация. Исследовалась взаимозависимость различных критериев, по результатам исследования было сформировано множество независимых критериев. Полученное множество представляет собой минимальный базис формирования интегральной оценки. Предложена методика построения семейства интегральных оценок качества криптопреобразований, учитывающая особенности конкретной реализации криптопреобразований. Данная методика основана на построении вектора оценки на множестве независимых критериев и последующего применения процедуры линейной аддитивной свертки с весовыми коэффициентами, определяемыми методами экспертного оценивания. Результаты анализа могут быть использованы для определения множества допустимых решений, удовлетворяющих заданным ограничениям, а также для поиска оптимального решения.

Четвертая глава содержит описание разработанного инструментария МАРК (Моделирования и Анализа программных Реализаций Криптографических преобразований). Рассматриваются составляющие его компоненты, интерфейсные функции и правила взаимодействия при выполнении системных операций. Главной задачей разрабатываемого инструментария является организация некоторого "каркаса", реализующего набор общих концептуальных принципов моделирования и анализа на примере СБШ, но при этом имеющего широкие возможности наращивания и модификации компонент. Предлагается методика применения разработанного инструментария для создании новых и модификации существующих криптоалгоритмов.

В пятой главе описываются практические примеры применения разработанного программного комплекса для решения различных прикладных задач. В качестве примера применения описываются два проекта, в которых использовались полученные результаты. Первый проект был реализован на факультете "Информационной безопасности" Московского инженерно-физического института в рамках учебного процесса. В задачу второго проекта входила разработка комплекса прикладного программного обеспечения для организации защиты информационных потоков в корпоративной сети Департамента аттестации научных и научно-педагогических работников Минобразования России.

В Заключении дается оценка завершенности разработки и эффективности применения предложенных методов, а также рассматриваются перспективы развития работ в данном направлении.

Результаты исследований, проводимых в рамках данной работы неоднократно докладывались на ежегодных научных конференциях регионального и международного уровня, публиковались в журнале "Безопасность информационных технологий".

Заключение диссертация на тему "Разработка алгоритмов моделирования и анализа программных реализаций криптографических преобразований"

Выводы

1. На основе инструментария моделирования и анализа программных реализаций криптопреобразований (МАРК) был разработан лабораторный практикум по курсу "Криптографические методы защиты информации". Практикум состоит из 4139 х лабораторных работ, реализующих полный цикл разработки проблемно-ориентированного криптографического программного обеспечения. Данный практикум был внедрен в учебном процессе на факультете "Информационная безопасность" МИФИ, что подтверждено соответствующим актом (см. Приложение 2).

2. Средства моделирования и анализа инструментария МАРК были использованы в процессе выбора и верификации средств криптографической защиты при организации защищенного информационного обмена в корпоративной сети Департамента государственной аттестации научных и научно-педагогических работников Минобразования России, о чем имеется соответствующий акт (см. Приложение 2).

Заключение

В результате выполнения данной работы были получены следующие основные результаты:

1. На основе анализа различных тенденций в создании современных средств криптографической защиты информации (СКЗИ) была отмечена важность повышения эффективности программных реализаций криптографических преобразований, и, в частности, симметричных блочных шифров (СБШ), путем исследования соответствующих программных моделей. В качестве базового подхода к моделированию криптопреобразований был предложен структурный подход, хорошо зарекомендовавший себя среди разработчиков современных криптоалгоритмов. На основе анализа обширного фактического материала были выделены основные классы СБШ и проведен сравнительный анализ их свойств. По результатам анализа построена генетическая классификация СБШ, учитывающая взаимосвязи, возникающие в процессе проектирования между различными классами СБШ. В результате обобщения данных, полученных в результате анализа типовых архитектур различных классов СБШ было сформировано множество унифицированных структурных единиц (УСК), а также предложена обобщенная структурная модель СБШ, позволяющая формировать структурную модель произвольного криптоалгоритма из рассмотренных классов СБШ из УСК с применением операции композиции и задания рекурсивного определения.

2. Для описания структурных моделей криптопреобразований предложен формальный язык. Язык представляет собой удобное средство для краткой и наглядной записи криптоалгоритмов и позволяет формировать описание шифра в форме списка утверждений о значениях его параметров. Разработана многоступенчатая процедура преобразования денотационного описания шифра в программный код на языке высокого уровня и последовательность команд гипотетической ЭВМ. Предложена методика измерения параметров потенциальной эффективности криптоалгоритма на выбранной аппаратной платформе путем интерпретации полученного псевдокода. С этой целью была разработана модель гипотетической ЭВМ, учитывающая современные тенденции в создании процессорных архитектур, в частности, конвейерную обработку и возможность одновременного выпуска нескольких инструкций.

3. Разработан общий алгоритм формирования интегральной оценки качества криптопреобразования с учетом требований конкретной прикладной задачи. На основе систематизации данных по свойствам криптоалгоритмов была предложена методика формирования вектора свойств оцениваемого криптоалгоритма в соответствии с требованиями конкретной прикладной задачи. Компонентами вектора являются только те из рассмотренного множества свойств криптоалгоритмов, изменение значения которых влияет на степень удовлетворения криптоалгоритма заданным требованиям. Метод нормировки значений свойств разработан с учетом наилучшего возможного варианта реализации для каждого свойства из рассматриваемого набора. Значение интегральной оценки качества криптопреобразования может быть получено путем применения операции линейной аддидивной свертки вектора свойств с весовыми коэффициентами, определяемыми методами экспертного оценивания. Получение множества подобных оценок для рассматриваемых альтернатив в процессе выбора рационального решения позволяет ранжировать альтернативы путем определения отношения порядка на исследуемом множестве.

4. Реализован инструментарий моделирования и анализа программных реализаций криптографических преобразований, реализующий набор общих концептуальных принципов моделирования и анализа на примере симметричных блочных криптопреобразований. В качестве базового подхода к проектированию инструментария использовался объектно-ориентированный подход (ООП), позволяющий в процессе проектирования программных модулей и интерфейсов оперировать непосредственно понятиями предметной области. Структурная организация инструментария МАРК в виде модуля управления и трех функциональных модулей, обеспечивающих управление ресурсами вычислительной системы в процессе моделирования, позволяет повысить эффективность работы программного комплекса в целом. Разработанный набор интерфейсов позволяет осуществлять гибкую интеграцию внешних библиотек и приложений со программными средствами инструментария.

5. На основе инструментария моделирования и анализа программных реализаций криптопреобразований (МАРК) был разработан лабораторный практикум по курсу "Криптографические методы защиты информации". Практикум состоит из 4-х лабораторных работ, реализующих полный цикл разработки проблемно-ориентированного криптографического программного обеспечения. Данный практикум был внедрен в учебном процессе на факультете "Информационная безопасность" МИФИ. Средства моделирования и анализа инструментария МАРК были использованы в процессе выбора и верификации средств криптографической защиты при организации защищенного информационного обмена в корпоративной сети Департамента государственной аттестации научных и научно-педагогических работников Минобразования России. По результатам внедрения получены соответствующие акты (Приложение 2).

Библиография Минаева, Елена Вячеславовна, диссертация по теме Методы и системы защиты информации, информационная безопасность

1. Автоматизированные системы. Защита от несанкционированного доступа. Классификация АС и требования по защите информации. // Руководящий документ Гостехкомиссии России. М.: Воениздат, 1992.

2. Беззубцев O.A., Ковалев А.Н. Лицензирование и сертификация в области защиты информации. М.: МИФИ, 1996.

3. Варфоломеев A.A., Домнина О.С., Пеленицын М.Б. Управление ключами в системах криптографической защиты банковской информации. Учебное пособие. М.: МИФИ. 1996.

4. Варфоломеев A.A., Пеленицын М.Б. Методы криптографии и их применение в банковских технологиях. М. Учебное пособие. М.: МИФИ. 1995.

5. Варфоломеев A.A., Жуков А.Е., Мельников А.Б., Д.Д. Устюжанин. Блочные криптосистемы. Основные свойства и методы анализа стойкости, М.: МИФИ. 1998.

6. Введение в криптографию./ Под. общ. ред. В.В. Ященко. М.: МЦНМО, "ЧеРо",1998.

7. Винокуров А. Архитектура блочных шифров.// iNFUSED BYTES Online, вып.4 6,1999.

8. Герасименко В.А., Малюк A.A. Основы защиты информации. М.: 1997.

9. Гилл Ф., Мюррей У. Практическая оптимизация. М.: Мир, 1985.

10. Государственный стандарт СССР. Системы обработки информации. Защита криптографическая. Алгоритм криптографического преобразования ГОСТ 2814789.

11. Грис Д. Наука программирования. М: Мир, 1984.

12. Грис Д. Конструирование компиляторов для цифровых вычислительных машин. М: Мир, 1975.

13. Гук М. Процессоры Intel от 8086 до Pentium И. Санкт-Петербург: Питер, 1997.

14. Девянин П.Н., Михальский О.О., Правиков Д.И., Щербаков А.Ю. Теоретические основы компьютерной безопасности. М.: Радио и связь, 2000.

15. Доктрина информационной безопасности Российской Федерации, 9.09.2000.

16. Домашев A.B., Попов В.О., Правиков Д.И., Прокофьев И.В., А.Ю. Щербаков А.Ю. Программирование алгоритмов защиты информации. М.: Нолидж, 2000.

17. Зегжда Д.П., Ивашко A.M. Как построить защищенную информационную систему. Технология создания безопасных систем.Спб.: НПО "Мир и Семья-95", ООО "Интерлайн", 1998.

18. Калинина В.Н., Панкин В.Ф. Математическая статистика. М.: Высшая школа, 1998.

19. Карве А. Реальные виртуальные возможности. //LAN/Журнал сетевых решений, №7, 1999.

20. Кини P.J1, Райфа X. Принятие решений при многих критериях: предпочтения и замещения. М.: Радио и связь, 1981.

21. Кинцов Ю., Никонова Е., Тмиаков В. Net-PRO новое средство организации VPN. //NetWeek, по.47, 1998.

22. Клейнен Дж. Статистические методы в имитационном моделировании. 4.1. М.: Статистика, 1978.

23. Курушин В.Д., Минаев В.А. Компьютерные преступления и информационная безопасность. М.: Новый Юрист, 1998.

24. Малюк A.A., Минаева Е.В., Петров В.А. Проблемы моделирования процессов и систем защиты информации. //Тезисы докладов Международной конференции "Региональная информатика" РИ-98. С.-Петербург, 1998, с. 111-113.

25. Мафтик С. Механизмы защиты в сетях ЭВМ. М.: Мир, 1993.

26. Месарович М., Такахра Я. Общая теория систем: математические основы. М.: Мир, 1978.

27. Минаева E.B. AES — новый стандарт шифрования (обзор). //Безопасность информационных технологий, № 2, М.: МИФИ, 1999, с. 31 -46.

28. Минаева Е.В. Причины ненадежности криптографического ПО. //Безопасность информационных технологий, № 3, М.: МИФИ, 1999, с.72 78.

29. Минаева Е.В., Петрова Т.В. Комплексный подход к решению задач обеспечения безопасности современных информационных систем. //Труды семинара "Информационная безопасность Юг России", Таганрог, 1999, с.25 - 27.

30. Минаева E.B. Современные подходы к конструированию оптимальных алгоритмов генерации расширенного ключа в итеративных блочных шифрах. //Безопасность информационных технологий, № 2, М.: МИФИ, 2000, с.24 26.

31. Минаева Е.В. О методе построения интегральных оценок надежности симметричных блочных криптоалгоритмов. //Труды семинара "Информационная безопасность Юг России", Таганрог, 2000, с. 161 - 169.

32. Михалевич B.C., Кукса А.И. Методы последовательной оптимизации в дискретных сетевых задачах оптимального распределения ресурсов. М.: Наука, 1983.

33. Молдовян H.A. Проблематика и методы криптографии.-СПб, Издательство СпбГУ,1998.

34. Молдовян H.A. Скоростные блочные шифры.-СПб, Издательство СпбГУ, 1998.

35. Нечаев В.И. Элементы криптографии (Основы теории защиты информации): Учеб. пособие для ун-тов и пед. вузов./ Под ред. Садовничего В.А.: М.: Высшая школа,1999.

36. Петров В.А., Пискарев A.C., Шеин A.B. Информационная безопасность. Защита информации от несанкционированного доступа в автоматизированных системах. М.: МИФИ, 1995.

37. Самойлов А.И., Трифаленков И.А. Практические аспекты применения VPN в современных корпоративных системах. //В сб. тезисов конфнеренции "Методы и технические средства обеспечения безопасности информации" 29-30 октября, Санкт-Перебург, 2000, с.80 81.

38. Семьянов П. Почему криптосистемы ненадежны? Центр Защиты Информации СПбГТУ, 1999, http://www.ssl.stu.neva.ru/.

39. Снайдер Д. Быстро, но не дружелюбно. // Сети, №11, 1999.

40. Снайдер Д. VPN поделенный рынок. // Сети, №11, 1999.

41. Страуструп Б. Язык программирования С++. Киев: ДиаСофт, 1993.

42. Фатьянов A.A. Тайна и право. М.: МИФИ, 1998.

43. Федеральный Закон "Об информации, информатизации и защите информации.//Российская газета, 22 февраля, 1995.

44. Фишберн П. Теория полезности для принятия решений. М.: Наука, 1978.

45. Хендерсон Т. Частные виртуальные сети становятся реальностью. //LAN Magazine/Журнал сетевых решений №6, 1998.

46. Черняк JI. VPN первое знакомство .//NetWeek, no.9, 2000.

47. Шеннон Р. Имитационное моделирование систем искусство и наука. М.: Мир, 1978.

48. Шнитман В.З., Кузнецов С.Д. Аппаратно-программные платформы корпоративных информационных систем, 2000, http://www.citforum.ru

49. Штайнке С. VPN между локальными сетями. // LAN / Журнал сетевых решений, №10, 1998.

50. Элвис+. VPN продукты ЗАСТАВА, версия 5.02, 1999.

51. С. М. Adams. The CAST-256 Encryption Algorithm, NIST AES Proposal, Jun 98.

52. C.M. Adams, S.E. Tavares, The Use of Bent Sequences to Achieve Higher-Order Strict Avalanche Criterion in S-Box Design. Technical Report TR 90-013. Department of Electrical Engineering, Queen's University, Kingston, Ontario. Jan. 1990.

53. С. M. Adams, A Formal Practical Desigen Procedure for Substitution-Permutation Network Cryptosystems. Ph.D. Thesis, Queen's University Kingston, Ontario, Canada, 1990.

54. R. Anderson, E. Biham, Two Practical and Provably Secure Block Ciphers: BEAR and LION, FSE'95, vol. 3, 1996, LNCS 1039.

55. R. Anderson, E. Biham, and L. Knudsen. Serpent: A Proposal for the Advanced Encryption Standard. NIST AES Proposal, 1998.

56. AMD. AMD K6®-2 Processor Code Optimization, 1998, Order number 21924-B. http://www.amd.com/

57. O. Baudron, H. Gilbert, L. Granboulan, H. Handschuh, A. Joux, P. Nguyen, F. Noilhan, D. Pointcheval, T. Pornin, G. Poupard, J. Stern and S. Vaudenay, Report on the AES candidates, The Second AES Conference, 1999, pp. 53-67.

58. S. Bellovin, A Best-Case Network Performance Model, February, 1992.

59. E. Biham and A. Shamir, Differential Cryptanalysis of the Data Encryption Standard, Berlin: Springer-Verlag, 1993.

60. E. Biham and A. Shamir, Differential Cryptanalysis of DES-like Cryptosystems, Journal of Cryptology, Vol. 4, No. 1, 1991, pp. 3-32.

61. E. Biham, A note on comparing the AES candidates, The Second AES Conference, March 22-23, 1999, pp 85-92.

62. E. Biham and A. Shamir, Power analysis of the key scheduling of the AES candidates, The Second AES Conference, March 22-23, 1999, pp 115-121.

63. M. Blaze, B. Schneier, The MacGuffin Block Cipher Algorithm, Fast Software Encryption, Second International Workshop Proceedings (December 1994), SpringerVerlag, 1995, pp. 97-110.

64. A. Bosselaers, V. Rijmen, B. Preneel, Resent developments in the design of conventional cryptographic algorithm, 1998. http://www.esat.kuleuven.ac.be

65. M. Brehob, T. Doom, R. Enbody. Beyong RISC The Post-RISC CPU Draft, 1995. http://www.cps.msu.edu/~crs/cps920/

66. L. Brown and J. Pieprzyk. Introducing the new LOKI97 Block Cipher. NIST AES Proposal, 1998.

67. C. Burwick, D. Coppersmith, Ed. D'Avignon, R. Gennaro. Mars — a candidate cipher for AES. NIST AES Proposal, 1998.

68. C. Carlet, On propagation criterion of degree 1 and order k, In Proceedings of EUROCRYPT'98.

69. G. Carter et. al., Key schedule classification of the AES candidates, submission for The Second AES Conference, 1999.

70. L. Chen, J.L. Massey, G.H. Khachatrian, and M.K. Kuregian. Nomination of SAFER+ as Candidate Algorithm for the Advanced Encryption Standard (AES). NIST AES Proposal Jun 98.

71. C. Clapp, Instruction-level parallelism in AES candidates, The Second AES Conference, March 22-23, 1999, pp 68-84.

72. J. Daeman. Cipher and hash function design. PhD thesis, Katholieke Universiteit Leuven (Belgium), 1995.

73. J. Daemen, V. Rijmen, B. Preneel, A. Bosselaers, and E. De Win. The cipher SHARK, Fast Software Encryption, LNCS 1039, D. Gollmann, Ed., Springer-Verlag, 1996, pp. 99112.

74. J. Daeman, V. Rijmen. Resistance against implementation attacks: a comparative study of the AES proposals, The Second AES Conference, March 22-23, 1999, pp 122-132.

75. J. Daemen, L. Knudsen, V. Rijmen. The block cipher Square. In Proceedings of FSE'97, (LNCS vol. 1267), Haifa, 1997, Springer-Verlag, pp. 149-165.

76. J. Daemen, V. Rijmen. AES proposal: Rijndael. NIST AES Proposal, Jun 98.

77. Y. Desmedt, J.-J. Quisquater. The importance of "good" key scheduling schemes (how to make a secure DES* scheme with <= 48 bit keys?) http://www.csrc.nist.gov/

78. A. Fog. How to optimize for the Pentium Microprocessors, 2000, http://www, anger, com/assem.

79. H. Feistel, Cryptography and Computer Privacy, Scientific American, May 1973.

80. R. Forre, The strict avalanche criterion spectral properties of boolean functions and an extended definition, In Proceedings of CRYPTO'88, pp. 450-468.

81. B. Gladman, Implementation experience with AES candidate algorithms, The Second AES Conference, March 22-23, 1999, pp.7-14.

82. D. Georgoudis, D. Lerous, and B.S.Chaves.The 'Frog' Encryption Algorithm. NIST AES Proposal, Jun 98.

83. H. Gilbert, M. Girault, P. Hoogvorst, F. Noilhan, T. Pornin, G. Poupard, J. Stern, and S. Vaudenay. Decorrelated Fast Cipher: an AES Candidate. NIST AES Proposal, 1998.

84. H. Heys and S. Tavares, On the Design of Secure Block Ciphers, Proceedings of Queen's 17th Biennial Symposium on Communications, Kingston, Ontario, May 1994.

85. H. Heys, S. E. Tavares, Substitution-Permutation Networks Resistant to Differential and Linear Cryptanalysis, Journal of Cryptology, v. 9, n. 1, 1996, pp. 1-19.

86. H. Heys and S. Tavares, Avalanche Characteristics of Substitution-Permutation Encryption Networks, IEEE Trans, on Computers, v. 44, n. 9, pp. 1131-1139, 1995.

87. P.Hsieh. 6th Generation CPU Comparisons, 2000. http://www.azillionmonkeys.com/qed/

88. Intel. Intel Pentium II Processor Developer's Manual, 1997. Order number 243502-001. http://www.intel.com/

89. Intel. Intel Architecture Optimization. Reference Manual, 1999. Order number 245127001. http://www.intel.com/

90. J.M. Isaaes, T.E. Zieschang, Generating symmetric groups, American Math., Mon., Oct. 1995, pp.734-739.

91. M. J. Jacobson, Jr., Klaus Huber, The Magenta Block Cipher Algorithm, NIST AES Proposal, Jun 98.

92. D. Johnson, Future resiliency: a possible new AES evaluation criterion, Submission for The Second AES Conference, 1999.

93. B.S. Kaliski, M. Robshaw. Linear cryptanalysis using multiple approximations. In Advances in Cryptology Crypto '94, Springer-Verlag, 1994, pp. 26-39.

94. J. Kam, G. Davida, Structured design of substitution-permutation encryption networks, IEEE Transactions on Computers, 28 (1979), pp. 747-753.

95. J. Kilian, P. Rogaway. How to Protect DES Against Exhaustive Key Search, Advances in Cryptology , CRYPTO '96 Proceedings, Springer-Verlag, 1996, pp. 252-267.

96. L.R. Knudsen, DEAL —A 128-bit Block Cipher, NIST AES Proposal, Jun 98.

97. L.R. Knudsen. Practically secure Feistel ciphers. In Proceedings of 1st International Workshop on Fast Software Encryption, pages 211-221, Springer-Verlag, 1993.

98. L.R. Knudsen, K. Nyberg: Provable Security Against a Differential Attack, Journal of Cryptology, vol.8, No. 1,1995.

99. L.R. Knudsen, M. Robshaw: Non-linear Approximations in Linear Cryptanalysis; Advances in Cryptology, Eurocrypt'96, LNCS 1070, pp. 224-236, Springer Verlag, 1996.

100. L.R. Knudsen, Truncated and Higher Order Differentials, Fast Software Encryption -Second International Workshop, Leuven, Belgium, LNCS 1008, Springer Verlag, 1995, pp. 196-211.

101. P. Kocher. Timing attaks on implementations of Diffie-Hellman, RSA, DSS, and other systems.Advances in Cryptology, Proseedings CRYPTO'96 LNCS 1109 N. Koblitz Ed. Springer-Verlag, pp. 104-113.

102. P. Kocher, J. Jaffe, B. Jun. Introduction to Differential Power Analysis and related attaks. http://www.cryptography.com/dpa/technical/.

103. M. Kunstelj. Optimizing 803/4/586 ASM Programming, 2000. http://www.commonwealth.riddler.com/

104. X. Lai, J.L. Massey. A proposal for a new block encryption standard. In Advances in Cryptology Eurocrypt '90, pp. 389-404, Springer-Verlag, 1991.

105. X. Lai, J.L. Massey, S. Murphy. Markov ciphers and differential cryptanalysis. In Advances in Cryptology Eurocrypt '91, pp. 17-38, Springer-Verlag, 1992.

106. M. Levy. Virtual processors and the reality of software simulation, 1998. http://www.ednmag.com/reg/1998/011598/

107. C.H. Lim. CRYPTON: A New 128-bit Block Cipher. NIST AES Proposal, Jun 98.

108. H. Lipmaa, AES candidates: a survey of implementations, submission for The Second AES Conference, 1999.

109. H. Lipmaa, K. Aoki, Fast Implementations of AES Candidates, AES3 conference, New York City, USA, 2000.

110. M. Luby and C. Rackoff, How to Construct Pseudorandom Permutations From Pseudorandom Functions, SIAM Journal of Computing, vol. 17, no. 2, April 1988, pp.373-386.

111. S. Lucks, Faster Luby-Rackoff Ciphers, In Proceedings of the Third International Workshop on Fast Software Encryption, Cambridge, UK, February 1996, Springer, LNCS 1039, pp. 189-203.

112. M. Matsui. Linear cryptanalysis method for DES cipher. In Advances in Cryptology Eurocrypt'93, pp.386-397, Springer-Verlag, 1993.

113. W. Meier, O. Staffelbach, Nonlinearity criteria for cryptographic functions, In Proceedings of Eurocrypt'89, LNCS 434, 1990, pp. 549-562.

114. R.C. Merkle. A fast software one-way function. Jornal of Cryptology, no.3, 1990, pp.43-58.

115. R.C. Merkle. Fast software encryption functions. In Advances in Cryptology CRYPTO '90, pp. 476-501, Springer-Verlag, 1991.

116. A. Mezenes. Handbook of applied cryptography, CRC Press, 1998.

117. E.B. Minaeva. Using Numerical Methods for Non-Linear Approximation of Symmetric Block Ciphers. Proceedings of the CSIT'2000, v.2, USATU Publishers, 2000, pp.69-74.

118. E. Nahum, S. O'Malley, H. Orman, R. Schroeppel. Towards High Performance Cryptographic Software, TR9504.

119. M. Naor and O. Reingold, On the construction of pseudo-random permutations: Luby-Rackoff Revisited, In Proceedings of the 29'th ACM Symposium on Theory of Computing, 1997, pp. 189-199.

120. National Bureau of Standards, Data Encryption Standard, Federal Information Processing Standards Publication 46, January 1977.

121. J. Nechvatal, E.Barker, D.Dodson, M.Dworkin, J.Foti. Status Report of the First Round of the Development of the Advanced Encryption Standard, NIST Publications, 1999.

122. Nippon Telephone and Telegraph. Specification of E2 — a 128-bit Block Cipher. NIST AES Proposal, Jun 98.

123. RSA Laboratories, The RC6 block cipher, NIST AES Proposal, Jun 98.

124. R.L. Rivest, The RC5 Encryption Algorithm, Fast Software Encryption: Second International Workshop, Leuven, Belgium, December 1994, Proceedings, SpringerVerlag, 1994, pp. 86-96.

125. C.E. Shannon. Communication Theory of Secrecy Systems. Bell Systems Technical Journal, no. 28, 1949, pp. 656-715.

126. B. Schneier, J. Kelsey, D. Whiting, D. Wagner, C. Hall and N. Ferguson, Performance comparison of the AES submissions, The Second AES Conference, March 22-23, 1999, pp 15-34.

127. B. Schneier, J. Kelsey, D. Whiting, D. Wagner, C. Hall: Twofish: A 128-Bit Block Cipher; Fifth Annual Workshop on Selected Areas in Cryptography, Springer Verlag, August 1998.

128. B. Schneier, Description of a New Variable-Length Key, 64-bit Block Cipher Blowfish, Fast Software Encryption: Second International Workshop, Leuven, Belgium, December 1994, Proceedings, Springer-Verlag, 1994, pp. 191-204.

129. B. Schneier, J. Kelsey: Unbalanced Feistel Networks and Block Cipher Design; Fast Software Encryption, Third International Workshop Proceedings (February 1996), Springer-Verlag, 1996, pp. 121-144.

130. B. Schneier, J. Kelsey,D. Wagner, C. Hall, Side Channel Cryptanalysis of Product Ciphers, ESORICS '98 Proceedings, Springer-Verlag, September 1998, 97-110.

131. B. Schneier. Applied Cryptography: Protocols, Algorithms, and Source Code in C. Wiley, 2nd Edition, 1995.

132. R. Schroeppel. Hasty Pudding Cipher Specification. NIST AES Proposal, 1998.

133. J. Seberry, X. M. Zhang, Y. Zheng: Nonlinearly balanced Boolean functions and their propagation characteristics, In Advances in Cryptology, CRYPTO'93, LNCS, Vol. 773, Springer-Verlag, Berlin, 1994, pp. 49-60.

134. A.F. Webster, S.E. Tavares. On the design of S-boxes. Proceeding of CRYPTO'85.

135. D. Wheeler, R. Needham.TEA, a tiny encryption algorithm. Springer-Verlag, 1995, pp. 97-110.

136. Whiting, B. Schneier, and S. Bellovin, AES Key Agility Issues in High-Speed IPsec Implementations, 2000, http://www.counterpane.com/.