Капалова Н.А. Бияшев Р.Г. Нысанбаева С.Е. Хакимов Р.А.
Генерация полных ключей для модулярных полиномиальных криптосистем
Докладчик: Нысанбаева С.Е.
В Институте проблем информатики и управления создается система криптогра-фической защиты информации (СКЗИ), реализующая разработанные на базе непозици-онных полиномиальных систем счисления (НПСС) нетрадиционные алгоритмы систем шифрования и электронной цифровой подписи (ЭЦП) [1]. Синонимы НПСС – моду-лярная арифметика, системы счисления в остаточных классах (СОК). В классических СОК основания - простые числа, а в НПСС – неприводимые многочлены с двоичными коэффициентами. По знаменитому правилу А. Керкхофса (A. Kerckhoffs, 1883) стой-кость криптоалгоритма определяется исключительно стойкостью ключа. В нетрадици-онных системах шифрования и ЭЦП в качестве критерия криптостойкости использует-ся стойкость самого криптоалгоритма, которая характеризуется полным ключом (ПолКл). При шифровании электронного сообщения (или его блока) заданной длины N бит ПолКл определяется всевозможными вариантами выбора систем рабочих основа-ний НПСС и псевдослучайной последовательности (ПСП или традиционного секретно-го ключа) длины N бит. ПолКл в алгоритме формирования ЭЦП для сообщения задан-ной длины – это всевозможные варианты выбора систем рабочих и избыточных осно-ваний и ПолКл для зашифрования хэш-значения. Избыточные основания вводятся в процедуре хэширования подписываемого сообщения. Система оснований для конкрет-ной длины N бит – это один вариант выбора полиномиальных оснований, в котором также учитываются порядок их расположения, и таких систем может быть несколько.
СКЗИ состоит из блоков: 1) формирования (генерации) полных ключей; 2) систе-мы шифрования электронных сообщений; 3) схемы ЭЦП. Особенность СКЗИ - зависи-мость выбора ПолКл от задаваемой стойкости криптоалгоритмов. Рассмотрим состав базы данных полных ключей (далее БД) разной длины для системы шифрования. В этой БД хранятся: ПолКл – это система рабочих оснований, ПСП и инверсный (обрат-ный) для ПСП ключ; значение криптостойкости, вычисляемой для каждой системы оснований по полученной формуле и некоторые другие данные, которые могут быть секретными в этой СКЗИ. Поэтому входные данные, длина ПолКл и криптостойкость, будут выбираться из предлагаемых вариантов их значений, имеющихся в БД. Решается также задача исключения повторного использования ПолКл шифрования.
Для построения блока генерации полных ключей создан комплекс программ на языке Си++. Разработана программа нахождения неприводимых многочленов конкрет-ной степени и их сохранения. Программа формирования БД построена в виде проце-дур и программных модулей, которые осуществляют ввод неприводимых полиномов в виде файла и их количества по степеням; ввод длины блока сообщения (или ПСП); вы-бор возможных вариантов систем рабочих оснований по длине блока и их запись в БД; нахождение всех возможных перестановок рабочих оснований в пределах одной систе-мы и их запись в БД; вычисление секретного ключа с использованием разработанного авторами алгоритма генерации ПСП и его сохранение в БД; определение ключей, ин-версных к ПСП и их запись в БД; вычисление значений криптостойкости для сохра-ненных полных ключей и их запись в БД. Созданная БД может пополняться новыми ключами различной длины, в том числе и за счет нахождения неприводимых многочленов более высоких степеней, что будет способствовать существенному увеличению криптостойкости.
К списку докладов