Реферат: Криптографические системы

Модуль basslib.c реализует алгоритм BassOmatic. Это стандартный блоковый шифратор размером блока 256 байт. Он использут ключи размером 512, 1024 и 2048 бит (в зависимости от необходимого уровня криптостойкости). Он может использовать шифрование в режиме обратной связи.

Модуль keygen.c генерирует пару открытый/секретный ключи алгоритма RSA. Это непростая задача, требующая реализации многих численных алгоритмов. В kegen.c реализованы алгоритмы проверки простых чисел, быстрого просеивания простых чисел, проверки взаимной простоты двух чисел, алгоритм Евклида. Все эти алгоритмы оперируют со 100-битными числами.

Модуль random.c реализует подпрограмму генерирования случайных чисел, используемых для создания ключей алгоритмов RSA и BassOmatic. Случайные значения вычисляются как промежутки времени между нажатием пользователем на клавиатуру. Каждый полученный байт помещается в специальный буфер и становится доступным для функций модулей keygen и basslib.

В memmgr.c находятся функции управления памятью: выделение, освобождение, очистка.

Модуль rsalib.c реализует математические функции (в частности, возведение в степень) над операндами произвольной длины. Эти функции необходимы для шифрования/дешифрования данных алгоритмом RSA.

Взаимодействие модулей при выполнении типичных команд проиллюстрировано на схемах 4.1-4.3.

Схема 4.1. Генерирование пары открытый/секретный ключи для алгоритма RSA.

Схема 4.2. Шифрование файла стандартным криптографическим алгоритмом.

Схема 4.3. Шифрование файла открытым ключем получателя.

К-во Просмотров: 327
Бесплатно скачать Реферат: Криптографические системы