Кузьменко Владимир Олегович

Реализация блочного алгоритма шифрования DES на ПЛИС типа FPGA


В. О. Кузьменко
Донецький національний технічний університет
IV международная конференция студентов, аспирантов и молодых учёных "Компьютерный мониторинг и информационные технологии", г. Донецк, 13-14 мая, 2008 г.


В данной работе рассматривается аппаратная реализация алгоритма шифрования DES, при этом ставится задача получения скорости шифрования не меньшей чем у современных криптопроцессоров.
Введение
Время активного использования DES на государственном уровне уже прошло, сузилась область применения. Из-за использования 56-битного ключа DES стал уязвим для современного поколения ЭВМ — с 1997 г. компания RSA Data Security Inc спонсировала три успешных, публичных взлома DES. Самый короткий из них длился 22 ч 15 мин, участвовало в нем около 100 тыс. компьютеров.
Несмотря на указанные недостатки, DES находит широкое применение в банковском и биржевом деле, а так же в других областях гражданского применения.
Возможность эффективной и экономичной аппаратной реализации изначально была одним из требований, предъявляемых к алгоритму. Более того, в принятом впоследствии стандарте требовалась именно аппаратная реализация. Вплоть до 1994 года стандарт официально запрещал программные реализации DES.
Особенности аппаратной реализации алгоритма
Стандарт DES полностью удовлетворяет требованиям к легкой аппаратной реализации. Все производимые алгоритмом операции ограничиваются следующими:
– Битовые выборки, перестановки и сдвиги битов. Не требуют отдельных ресурсов при аппаратной реализации. Выполняются путем соответствующего соединения логических элементов на печатной плате или внутри криптопроцессора DES. При реализации на ПЛИС типа FPGA эти операции реализуются на основе программируемых межсоединений.
– Исключающее ИЛИ. Реализуется простейшим логическим элементом.
– Подстановка со сжатием. Реализуется на основе постоянного запоминающего устройства (ПЗУ), имеющего 6 – битовый входной адрес и 4 – битовую выходную шину данных. Такое ПЗУ также может быть реализовано внутри криптопроцессора DES, т. к. его содержимое определено стандартом. Возможна также реализация в виде оперативной памяти (ОЗУ). В этом случае ее содержимое должно загружаться в блоки подстановки до начала работы алгоритма DES.
Исключающее ИЛИ и подстановка со сжатием реализуются с помощью генератора логических функций (LUT – Look Up Table), при этом отпадает необходимость использование ПЗУ, что положительно сказывается на производительности криптопроцессора.
Реализация алгоритма DES на FPGA
На данном этапе алгоритм DES реализован в виде комбинационно – логической схемы(КЛС). В качестве чипа ПЛИС был выбран представитель семейства Virtex – E фирмы Xilinx. Были получены следующие результаты:
– максимальная частота - 19.4 MHz;
– скорость шифрования – до 1241,6 Mbit/sec;
Такая реализация имеет свои достоинства и недостатки. К достоинствам можно отнести
– простота реализации
– отсутствие дополнительного управляющего автомата
– простота интерфейса
– безопасность ключа (хранится в ПЛИС)
Из недостатков можно выделить:
– большая площадь на кристалле, данный недостаток не является критичным в условиях современного развития индустрии полупроводников.
– отсутствие возможной конвейеризации.
Дальнейшее направления работы
В дальнейшей работе планируется реализация алгоритма DES с использованием конвейерного принципа обработки данных (рисунок 1).



Рисунок 1

В данном примере криптопроцессор DES имеет 16 устройства раунда DES и способен обрабатывать 16 блоков одновременно. Это достигается за счет введения так называемых конвейерных регистров между раундами. Каждый такт обрабатываемый блок продвигается в конвейере на одну позицию. Схема управления шифрованием также должна иметь конвейерные регистры для движения раундовых ключей параллельно соответствующим им блокам. Так что данная схема позволяет одновременную обработку блоков с различными ключами.
Таким образом, при ожидаемом незначительном увеличении площади схемы, за счёт регистров и схемы управления, ожидается увеличение на порядок скорости шифрования.
Выводы
Полученные результаты показыва­ют, что данная реализация алгоритма DES может быть успешно использо­вана при проектировании различных телекоммуникационных систем и уст­ройств хранения и передачи данных. Полученные результаты могут также использоваться в учебном процессе при изучении дисциплин по проекти­рованию цифровых систем на ПЛИС и защите информации.

Литература
[ 1 ] Брюс Шнайер, “Прикладная криптография. Протоколы, алгоритмы исходные тексты на языке С”, 2 – е издание.

ДонНТУ 2008 © Кузьменко Владимир