5. Скубтт М.Д. Спiрiдонов О.Б., Чєрєдничєнко ДЛ. ^осіб утримування інформації у недоступному для невизначеного кола осіб стані. Патент UA 33278, G06F 13/00, G09C 1/00, H04L 9/00, 2001.02.15.
6. SkubilinM.D., PismenovA.V. Teghekatzrrlthlan kgvoghviknan edavnak. Патент AM 973, G01F 13/00, G09C 1/00, H04L 9/00, б. 2, 2001.06.10.
7. Skubilin M.D., Kasimov F.C., Spiridonov O.B., Regimov R.M. Melumatin programH kodlajdnma - de^la^ma usulu. Patent AZ 20010140, G06F 13/00, G09C 1/00, H04L 9/00, 2001.10.02.
8. Скубилин М.Д., Божич В.И., Спиридонов О.Б. ^особ защиты информации от несанкционированного доступа и устройство для его осуществления //Патэнт BY 5605, G06F 13/00, G09C 1/00, 2003.12.30.
Р. Г. Бияшев, С. Е. Нысанбаева
Казахстан, г. Алматы, Институт проблем информатики и управления
МОДЕЛИРОВАНИЕ ГЕНЕРАЦИИ КЛЮЧЕЙ В НЕПОЗИЦИОННОЙ ПОЛИНОМИАЛЬНОЙ СИСТЕМЕ СЧИСЛЕНИЯ
Использование непозиционных полиномиальных систем счисления (систем счисления в остаточных классах с полиномиальными основаниями или модулярной арифметики) при создании симметричных криптосистем позволяет существенно повысить их надежность, критерием которой является криптостойкость самого алгоритма шифрования. В непозиционной полиномиальной системе счисления (HQCC) основаниями служат неприводимые многочлены над полем GF(2) . В этой системе существенно повышается также криптостойкость алгоритма формирования электронной цифровой подписи (ЭЦП), при этом возможно значительное сокращение длины хэш-значения и подписи [1-3].
В работе представлена модель процедуры генерации ключевых последовательностей для алгоритмов зашифрования и расшифрования электронного сообщения заданной длины N бит (далее - сообщения) при хранении и передаче электронной информации и формирования ЭЦП в HQCC на базе нетрадиционного криптографического метода шифрования [4].
В связи с тем, что построение нетрадиционных алгоритмов и методов шифрования и формирования ЭЦП основано на выборе системы полиномиальных оснований, была создана база данных неприводимых многочленов, содержащая их общее число для каждой из степеней от 1 до 22. Пополнение базы данных неприводимыми многочленами последующих степеней производится по мере необходимости в полиномах более высокой степени.
Алгоритм шифрования начинается с формирования системы полиномиальных оснований. Пусть основаниями выбраны неприводимые многочлены с двоичными коэффициентами p1(x),p2(x),...,pS (x) соответственно степени m1, m2, ..., mS ,
называемые также рабочими основаниями. Многочлен P(x) = p1(x)p2(x)...pS(x)
S
степени m = ^mt является основным рабочим диапазоном HQCC. В этой системе i=1
любой многочлен, степени меньшей m, имеет единственное представление в виде его вычетов по модулям рабочих оснований соответственно. Все основания системы должны быть различными: соблюдение этого необходимо для
выполнения китайской теоремы об остатках, даже если основания выбираются из неприводимых многочленов одной степени.
Сообщение в НПСС интерпретируется как последовательность остатков а1(х),а2(х),...,а&.(х) от деления некоторого неизвестного многочлена Р(х)
(напомним, что его степень должна быть меньше т) на основания р1 (х), р2 (х),...,р8 (х) соответственно:
Расположение выбранных оснований определяется всеми возможными их перестановками.
Непозиционное представление (1) многочлена ^(х) является единственным. Позиционное же представление ¥(х) восстанавливается по его непозиционному
В выражении (1) остатки а1(х),а2(х),...,а5(х) выбираются таким образом, что первым /1 битам сообщения ставятся в соответствие двоичные коэффициенты остатка а1 (х), следующим /2 битам - двоичные коэффициенты остатка а2 (х) и так далее, последним /8 двоичным разрядам ставятся в соответствие двоичные коэффициенты вычета а5 (х).
Затем генерируется ключевая гамма длиной N битов, которая также интерпретируется как последовательность остатков Р1(х), Ь2(х),..., Ь (х), но от деления некоторого другого многочлена О(х) по тем же рабочим основаниям системы:
Полученная в результате нетрадиционного шифрования криптограмма в виде последовательности вычетов (01 (х), ю2 (х),..., (05 (х) рассматривается как некоторая функция И(Р(х),0(х)), операции которой, в соответствии с операциями непозиционной системы счисления, выполняются параллельно по модулям оснований системы. В итоге имеем криптограмму в виде
Как видно из вышеизложенного, алгоритм шифрования характеризуется полным ключом, включающим не только гамму О(х) длиной N битов, но и выбранную систему полиномиальных оснований с учетом порядка их распределения. Криптостойкость алгоритма шифрования определяется всеми возможными и отличающимися друг от друга вариантами выбора систем оснований и генерируемых ключевых гамм [2,3].
Выбор системы оснований степени от тг- до т5 из базы данных неприводимых многочленов степени не выше N ограничен условием, которое описывается выражением
^(х) = (аг(х),а2(х),...,Оу(х)).
(1)
виду (1) [5]:
(2)
с( х) = (Ьі(х) р2 (x),..., Р (х)).
(3)
Н(х) = (Юі(х),Ю2(х),...,Ю5 (х)) .
(4)
к1 рщ (х) + к2р"2 (х) +... + к£рт (х) = N . (5)
Уравнение (5) определяет неизвестные коэффициенты к1, означающие число выбираемых в качестве оснований неприводимых полиномов степени т1, 0 < ki < ni, п1 - множество всех неприводимых многочленов степени т(,
рт‘ (х) - многочлен степени т1, 1 < т1 < т£ < N , £ = к1 + к2 + ... + к£ -
количество всех выбранных оснований.
Полные системы вычетов по модулям многочленов степени т1 содержат все многочлены с двоичными коэффициентами степени не выше т( -1, для записи которых необходимо т1 битов [6]. Уравнение (5) определяет то количество выбранных £ оснований, вычеты по которым покрывают длину заданного сообщения N. При т£ = N для записи полных систем вычетов по модулям этих оснований необходимо N битов.
С увеличением степени неприводимых многочленов их количество быстро растет. В табл. 1 эти полиномы приведены только до 12 -й степени включительно, для 16-й степени число неприводимых многочленов равно 7749, а для 20-й -122673). Поэтому уравнение (1) имеет широкий спектр решений.
Таблица 1
Т аблица неприводимых полиномов над полем ОГ (2)
Степень полиномов 1 2 3 4 5 6 7 8 9 10 11 12
Количество полиномов 1 1 2 3 6 9 00 о 40 іл 120 240 488
Рассмотрим используемый при компьютерной реализации алгоритма шифрования нетрадиционный криптографический метод [4].
Криптограмма сообщения Н (х) = (ю1(х),ю2(х),...,ю$ (х)) получается в результате умножения многочленов (2) и (3) в соответствии со свойствами сравнений по двойному модулю
Р(х)О(х) ° Н(x)(modР(х)) .
Тогда элементы последовательности вычетов (01(х),о2(х),...,юх(х) являются наименьшими остатками от деления произведений (х) bi (х) на соответственные
основания р1 (х) .
а (x)Pi (х) ° (Oi (x)(mod р1 (х)), i=1,2,... £. (6)
В двоичном виде криптограмма Н(х) будет выглядеть следующим образом: двоичным коэффициентам остатка о1 (х) ставятся в соответствие первые /1 битов криптограммы Н(х), двоичным коэффициентам остатка о2 (х) ставятся в соответствие следующие /2 битов криптограммы и так далее, двоичным
коэффициентам последнего вычета <о5 (х) ставятся в соответствие последние /£ двоичных разрядов криптограммы.
Расшифрование криптограммы Н(х) по известному ключу О(х) состоит в вычислении для каждого значения р, (х), как следует из (6), обратного
(инверсного) многочлена р,-1 (х) из условия выполнения следующего сравнения: Р, (х)Р,-1 (х) ° 1^р, (х)), i=1,2,... £ (7)
В результате получится многочлен О _1(х) = (Ь1-1( х), Р-1( х),..., р-1(х)),
инверсный к многочлену О(х).
Тогда исходное сообщение в соответствии с (6) и (7) восстанавливается по сравнению с
Р(х) ° О- (х)Н (x)(modР(х)). (8)
Через вычеты выражение (8) запишется в виде следующих сравнений:
а,(х) °Д_1(х)о, (x)(modр, (х)), ,=1,2,...Б. (9)
Таким образом получена модель алгоритма шифрования электронного сообщения заданной длины N битов в непозиционной полиномиальной системе счисления.
Полным ключом в этой модели является выбранная система
полиномиальных оснований р1(х),р2(х),...,р£ (х), полученный некоторым генератором псевдослучайных чисел ключ О(х) = (р1(х), Р2(х),..., р£ (х)) и инверсный к нему ключ О_1(х) = (Ь1-1 (х), Ь2'1(х),...,Ь,-1(х)) , вычисляемый в соответствии с выражением (8) или (9).
При компьютерной реализации рассмотренной модели шифрования для генерации и хранения полных ключей разработана программа, которая реализует все этапы создания полного ключа (будем называть его далее просто ключом) в указанном выше порядке генерации ключевых последовательностей. Полученный ключ хранится в базе данных. Возможен просмотр записей сохраненных ключей в базе данных, доступ к которой осуществляется через пароль.
Перед выбором системы оснований р1(х),р2(х),...,р£(х) задается их общее число £ Затем вводится количество оснований к, для каждой конкретной степени оснований т{, ,=1,2,...$., определяемых из уравнения (5). После завершения формирования системы оснований осуществляется проверка на соответствие общего количества выбранных оснований к1 + к2 +... + к£ заданным £ и уравнению (5), то есть выбранная система рабочих оснований должна покрывать шифруемое сообщение длиной N битов.
Генерация псевдослучайной гаммы для шифрования
О(х) = (Ь (х), р2 (х),..., р£ (х)) производится с использованием выбранных рабочих оснований р1(х),р2(х),...,р£ (х). Многочлены р, (х) находятся как результат сложения вычетов Р, (х) соответственно по модулям р, (х), ,=1,2,...£. с некоторым многочленом степени т1 -1.
Затем из сравнений (7) определяется для расшифрования ключевая последовательность О_1(х) = (Р1-1(х),Р2"1(х),...,р-'(х)).
Сгенерированный ключ (полный) сохраняется в базе данных. Таким образом могут быть получены и записаны в базу данных ключи различной длины.
При выполнении процедур шифрования и создания ЭЦП номер записи ключа в базе данных задается по алгоритму, который псевдослучайным образом генерирует этот номер по времени и дате выбора ключа.
Приведенная модель шифрования используется в алгоритме формирования в непозиционной полиномиальной системе счисления ЭЦП длиной N битов. Длина подписи N может быть значительно меньше длины подписываемого электронного сообщения длиной N битов. Создание ЭЦП реализуется при помощи процедур хэширования и шифрования: хэш-функция сжимает подписываемое сообщение до длины Ы1, а затем полученное хэш-значение шифруется [2].
Алгоритм формирования ЭЦП включает в себя три последовательных этапа:
- восстановление функции Р(х) по выбранной системе рабочих полиномиальных оснований р1 (х), р2(х),...,р£ (х) для сообщения длиной N ;
- хэширование сообщения длины N до длины N путем вычисления вычетов Р(х) по избыточным (дополнительным или контрольным) основаниям
р£ +1 (х) р£+2 р£+и (х) ;
- шифрование хэш-значения: выбор системы полиномиальных оснований и их размещения, генерация ключевой гаммы длины N .
Первый этап совпадает с первой половиной процедуры шифрования. Восстановление многочлена Р(х) производится по формуле (2).
Хэширование сообщения происходит расширением системы рабочих оснований на избыточные основания р£+1(х),р£+2(х),...,р£+и (х), которые выбираются произвольно из всех неприводимых многочленов степени, не превышающей N1, где V - это количество всех избыточных оснований. Система дополнительных оснований формируется независимо от выбора рабочих оснований р1(х),р2(х),...,р£ (х), но среди V избыточных оснований могут быть и совпадающие с некоторыми из них. Вычеты а£+1( х),а£+2(х),...,а£+и (х) от деления восстановленного многочлена Р(х) на дополнительные основания
р£+1(х),р£+2(х),...,р£+и (х) определяют длину хэш-значения N Как видно, этот этап формирования ЭЦП также повторяет первую часть шифрования.
На этапе шифрования полученного хэш-значения выбирается система оснований г1(х),г2(х),...,тш (х) из числа неприводимых многочленов с двоичными коэффициентами степени не выше N независимо от выбора рабочих и дополнительных многочленов, но в состав этих оснований могут войти некоторые как из рабочих оснований, так и из избыточных. В соответствии с алгоритмом шифрования хэш-значение интерпретируется как последовательность остатков 71(х),72(х), . ,7^ (х) от деления некоторого многочлена Р1(х) на выбранные основания г1(х),г2(х),...,гш (х) соответственно.
Затем генерируется ключевая последовательность длиной ^, которая интерпретируется как последовательность остатков ц1(х),ц2(х),...,ц-№ (х) от деления некоторого полинома О1(х) на те же основания г1 (х),г2 (х),...,% (х). Тогда полученная в результате шифрования криптограмма Я1(х),Я2(х),...,Я^(х) может быть представлена как некоторая функция Н1(Р1(х),О1(х)).
Полным ключом в представленном алгоритме формирования цифровой подписи кроме многочлена О1(х) являются и конкретные наборы оснований
(рабочих, дополнительных и для шифрования хэш-значения) на каждом из 3-х этапов формирования ЭЦП.
В программной реализации для шифрования хэш-значения применен описанный выше нетрадиционный метод [4]. Тогда для этой модели формирования ЭЦП необходим ее полный ключ, состоящий из следующих ключевых гамм каждого этапа:
- системы рабочих оснований p^x), p2(x),..., pS (x) степени не выше N и порядка их расположения;
- системы избыточных оснований pS+1(x),pS+2(x),...,pS+U (x) степени не выше N1 и порядка их расположения;
- ключевой последовательности псевдослучайных чисел
G1(x) =h1(x),h2(x),...,hW (x) и обратной к ней гаммы
G1_1(x) = h1-1(x),h2"1(x),...,hW1(x), системы оснований ^(x),r2(x),...,rW (x) для шифрования хэш-значения с учетом порядка их следования.
При подписывании сообщения ключи каждого этапа алгоритма формирования ЭЦП выбираются из созданной базы полных ключей для шифрования сообщения. Номер записи ключа в базе данных выбирается так же, как при шифровании.
Компьютерная программа генерации и хранения ключей в базе данных является основой разработки комплекса программ по криптографической защите информации при ее хранении и передаче.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Акушский И.Я., Юдицкий Д.И. Машинная арифметика в остаточных классах. - М.: Советское радио, 1968. - 439 с.
2. Амербаев В. М., Бияшев Р. Г., Нысанбаева С. Е. Применение непозиционных систем счисления при криптографической защите информации // Известия Национальной академии наук Республики Казахстан. Сер. физ.-мат. наук. - 2005.. - № 3. - С. 84-89.
3. Бияшев Р.Г., Нысанбаева С.Е. Влияние состава полиномиальных оснований непозиционной системы счисления на надежность шифрования // Материалы VIII Международной научно-практической конференции «Информационная безопасность», -Таганрог, Изд-во ТРТУ, 3-7 июля 2006, - С. 66-69.
4. Нысанбаев Р.К. Криптографический метод на основе полиномиальных оснований // Вестник Министерства науки и высшего образования и Национальной академии наук Республики Казахстан - Алматы: Г ылым, 1999. - №5. - С. 63-65
5. Бияшев Р.Г. Разработка и исследование методов сквозного повышения достоверности в системах обмена данными распределенных АСУ: Дис... на соискание уч. степ. докт. тех. наук. - М., 1985. - 328 с.
6. Моисил Гр. К. Алгебраическая теория дискретных автоматических устройств. - М.: Издательство иностранной литературы, 1963. - 680 с.
A. G. Chefranov
Russia , Taganrog, Taganrog Institute of Technology, Southern Federal University, and North Cyprus, Gazimagusa, Eastern Mediterranean University
ONE-TIME PASSWORD SCHEME WITH INFINITE AUTHENTICATIONS NUMBER
Authentication of clients to servers is an important problem that has been solved in a number of ways (see, for example, [1, 2]). One time password (OTP) schemes such as [3, 4, 5] address the problem in assumption of not secure channels of communication between clients and servers, and possible compromise of passwords on the server side.
19В