BC/NW 2006, №1 (8):
16.3
СПОСОБЫ ПОВЫШЕНИЯ ЭФФЕКТИВНОСТИ ПРОГРАММНЫХ
РЕАЛИЗАЦИЙ СИММЕТРИЧНОГО ШИФРОВАНИЯ
А.А. Жуковский, И.Н. Андреева
(Москва, Московский
энергетический институт (технический университет), Россия)
Средства
защиты информации являются неотъемлемой частью вычислительных систем. Это
обусловлено применением информационных технологии буквально во всех сферах
жизни общества.
С каждым
годом объем конфиденциальных данных обрабатываемых вычислительными системами
неизменно растет. В связи с этим, остро встает проблема увеличения скорости
шифрования, как наиболее надежного метода защиты информации. Существуют, в
общем случае, два подхода к решению этой проблемы. Первый из них – это создание
новых наиболее эффективных алгоритмов шифрования. Здесь одним из базовых
критериев проектирования шифра является скорость его выполнения. Однако,
исследуя литературу по криптоанализу можно увидеть,
что такие алгоритмы хоть и обеспечивают высокую скорость шифрования, не
обладают достаточной надежностью. Например, в основу создания шифра FEAL был положен принцип усовершенствования
функции раунда алгоритма DES.
За счет этого создатели шифра уменьшили число раундов. В результате первая
версия и дальнейшие усовершенствования FEAL были взломаны. Так же шифры, разработанные для эффективной
реализации на определенной аппаратной платформе, могут иметь медленные
реализации на других платформах. Данное заключение можно сделать, принимая во
внимание результаты одной из сессий (“Оценки алгоритмов применительно к
различным платформам”) конкурса выбора алгоритма для AES.
Второй подход связан с оптимизацией
существующих алгоритмов, надежность которых проверена временем, под конкретные
вычислительные архитектуры. Основной критерий проектирования таких шифров –
обеспечение высокой стойкости к различным видам криптоанализа.
Очевидно,
что выбор второго подхода более предпочтителен, так как в этом случае шифры
обеспечивают более высокую надежность защиты данных, а именно это и является
целью криптографии.
Еще
одним доводом в пользу развития такого направления как эффективная реализация
криптографических алгоритмов является недостаточное исследование данной темы в
литературе. На сегодняшний день существует довольно много публикаций в области
криптографических методов защиты информации. Однако необходимо отметить, что в
общем случае в литературе дается описание самих криптографических алгоритмов и
методов их криптоанализа и, как правило, упускаются
из виду способы эффективной реализации данных алгоритмов.
Низкая
эффективность многих программных реализаций симметричных криптографических
алгоритмов связана с частым обращением к оперативной памяти при шифровании.
Модули оперативной памяти являются более медленными устройствами, чем
внутренняя кэш-память или регистры процессора. Предлагается методика,
направленная на повышение производительности симметричных шифров, реализованных
для выполнения на семействе 32-разрядных процессоров Intel
Pentium. В основе методики лежат следующие положения.
Данные, над которыми производятся операции криптографического преобразования,
рассматриваются в виде битовых срезов. Сокращение числа обращений к памяти
достигается за счет объединения независимых по данным операций, работающих с
оперативной памятью. Увеличение скорости шифрования можно достигнуть путем
расчета результатов некоторых функции и операций на этапе реализации шифра. Все
возможные результаты расчета сохраняются в таблице, и при шифровании на месте
вызова функции происходит выборка значения, определяемая обрабатываемыми данными.
Немаловажным фактором также является оптимизация на уровне системы команд
процессора.